[INFO] fetching crate vigilant_lamp 0.0.6...
[INFO] testing vigilant_lamp-0.0.6 against master#0d162b25edd5bf0dba9a22e83b614f1113e90474 for pr-150681
[INFO] extracting crate vigilant_lamp 0.0.6 into /workspace/builds/worker-2-tc1/source
[INFO] started tweaking crates.io crate vigilant_lamp 0.0.6
[INFO] finished tweaking crates.io crate vigilant_lamp 0.0.6
[INFO] tweaked toml for crates.io crate vigilant_lamp 0.0.6 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate vigilant_lamp 0.0.6 on toolchain 0d162b25edd5bf0dba9a22e83b614f1113e90474
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 165 packages to latest compatible versions
[INFO] [stderr]       Adding game-loop v0.8.2 (available: v1.3.0)
[INFO] [stderr]       Adding glutin v0.28.0 (available: v0.32.3)
[INFO] [stderr]       Adding ndarray v0.15.6 (available: v0.17.1)
[INFO] [stderr]       Adding yew v0.18.0 (available: v0.22.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded gloo-events v0.1.2
[INFO] [stderr]   Downloaded yew-macro v0.18.0
[INFO] [stderr]   Downloaded anymap v0.12.1
[INFO] [stderr]   Downloaded boolinator v2.4.0
[INFO] [stderr]   Downloaded cfg-match v0.2.1
[INFO] [stderr]   Downloaded gloo-console-timer v0.1.0
[INFO] [stderr]   Downloaded gloo-file v0.1.0
[INFO] [stderr]   Downloaded cty v0.2.2
[INFO] [stderr]   Downloaded array-macro v2.1.8
[INFO] [stderr]   Downloaded glutin_egl_sys v0.1.6
[INFO] [stderr]   Downloaded memmap2 v0.3.1
[INFO] [stderr]   Downloaded glutin_glx_sys v0.1.8
[INFO] [stderr]   Downloaded wayland-egl v0.29.5
[INFO] [stderr]   Downloaded ndk-glue v0.5.2
[INFO] [stderr]   Downloaded raw-window-handle v0.4.3
[INFO] [stderr]   Downloaded ndk v0.5.0
[INFO] [stderr]   Downloaded gloo v0.2.1
[INFO] [stderr]   Downloaded calloop v0.9.3
[INFO] [stderr]   Downloaded glutin v0.28.0
[INFO] [stderr]   Downloaded yew v0.18.0
[INFO] [stderr]   Downloaded smithay-client-toolkit v0.15.4
[INFO] [stderr]   Downloaded game-loop v0.8.2
[INFO] [stderr]   Downloaded ndk-sys v0.2.2
[INFO] [stderr]   Downloaded nix v0.22.3
[INFO] [stderr]   Downloaded winit v0.26.1
[INFO] [stderr]   Downloaded gl33 v0.2.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 6d15d14685d7b05b58167ac2b142dd3c1c13e76d9f17f345a10bd21714b24bbe
[INFO] running `Command { std: "docker" "start" "-a" "6d15d14685d7b05b58167ac2b142dd3c1c13e76d9f17f345a10bd21714b24bbe", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6d15d14685d7b05b58167ac2b142dd3c1c13e76d9f17f345a10bd21714b24bbe", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6d15d14685d7b05b58167ac2b142dd3c1c13e76d9f17f345a10bd21714b24bbe", kill_on_drop: false }`
[INFO] [stdout] 6d15d14685d7b05b58167ac2b142dd3c1c13e76d9f17f345a10bd21714b24bbe
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 72d91cfa7e928b14d7edeb63f5490da478ed994233848d011a4f7dcf321bbb22
[INFO] running `Command { std: "docker" "start" "-a" "72d91cfa7e928b14d7edeb63f5490da478ed994233848d011a4f7dcf321bbb22", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.105
[INFO] [stderr]    Compiling libc v0.2.179
[INFO] [stderr]    Compiling xml-rs v0.8.28
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.106
[INFO] [stderr]    Compiling memoffset v0.6.5
[INFO] [stderr]    Compiling bumpalo v3.19.1
[INFO] [stderr]    Compiling wasm-bindgen v0.2.106
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling wayland-sys v0.29.5
[INFO] [stderr]    Compiling libloading v0.8.9
[INFO] [stderr]    Compiling khronos_api v3.1.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling dlib v0.5.2
[INFO] [stderr]    Compiling scoped-tls v1.0.1
[INFO] [stderr]    Compiling quote v1.0.43
[INFO] [stderr]    Compiling parking_lot_core v0.8.6
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr]    Compiling wayland-scanner v0.29.5
[INFO] [stderr]    Compiling gl_generator v0.14.0
[INFO] [stderr]    Compiling instant v0.1.13
[INFO] [stderr]    Compiling smithay-client-toolkit v0.15.4
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling xcursor v0.3.10
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling cty v0.2.2
[INFO] [stderr]    Compiling winit v0.26.1
[INFO] [stderr]    Compiling glutin_glx_sys v0.1.8
[INFO] [stderr]    Compiling glutin_egl_sys v0.1.6
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling nix v0.24.3
[INFO] [stderr]    Compiling nix v0.22.3
[INFO] [stderr]    Compiling x11-dl v2.21.0
[INFO] [stderr]    Compiling wayland-client v0.29.5
[INFO] [stderr]    Compiling wayland-protocols v0.29.5
[INFO] [stderr]    Compiling memmap2 v0.3.1
[INFO] [stderr]    Compiling wayland-commons v0.29.5
[INFO] [stderr]    Compiling parking_lot v0.11.2
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.106
[INFO] [stderr]    Compiling mio v0.8.11
[INFO] [stderr]    Compiling shared_library v0.1.9
[INFO] [stderr]    Compiling raw-window-handle v0.4.3
[INFO] [stderr]    Compiling yew v0.18.0
[INFO] [stderr]    Compiling boolinator v2.4.0
[INFO] [stderr]    Compiling http v0.2.12
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling calloop v0.9.3
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.106
[INFO] [stderr]    Compiling wayland-cursor v0.29.5
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling wayland-egl v0.29.5
[INFO] [stderr]    Compiling osmesa-sys v0.1.2
[INFO] [stderr]    Compiling num-rational v0.4.2
[INFO] [stderr]    Compiling num-iter v0.1.45
[INFO] [stderr]    Compiling libloading v0.7.4
[INFO] [stderr]    Compiling chlorine v1.0.13
[INFO] [stderr]    Compiling cfg-match v0.2.1
[INFO] [stderr]    Compiling anymap v0.12.1
[INFO] [stderr]    Compiling gl33 v0.2.1
[INFO] [stderr]    Compiling num v0.4.3
[INFO] [stderr]    Compiling ndarray v0.15.6
[INFO] [stderr]    Compiling game-loop v0.8.2
[INFO] [stderr]    Compiling array-macro v2.1.8
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling yew-macro v0.18.0
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling js-sys v0.3.83
[INFO] [stderr]    Compiling console_error_panic_hook v0.1.7
[INFO] [stderr]    Compiling web-sys v0.3.83
[INFO] [stderr]    Compiling gloo-timers v0.2.6
[INFO] [stderr]    Compiling wasm-bindgen-futures v0.4.56
[INFO] [stderr]    Compiling glutin v0.28.0
[INFO] [stderr]    Compiling gloo-events v0.1.2
[INFO] [stderr]    Compiling gloo-console-timer v0.1.0
[INFO] [stderr]    Compiling gloo-file v0.1.0
[INFO] [stderr]    Compiling gloo v0.2.1
[INFO] [stderr]    Compiling vigilant_lamp v0.0.6 (/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)]` (part of `#[warn(unused)]`) 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)]` (part of `#[warn(nonstandard_style)]`) 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: `wasm_bindgen::JsValue`
[INFO] [stdout]  --> src/renderers/builder.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use wasm_bindgen::JsValue;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `glUniform4iv`
[INFO] [stdout]  --> src/renderers/opengl.rs:3:709
[INFO] [stdout]   |
[INFO] [stdout] 3 | ...v, glUniform1i, glUniform1iv, glUniform1ui, glUniform1uiv, glUniform4iv, glUniformMatrix2fv, glUniformMatrix3fv, glUniformMatrix4f...
[INFO] [stdout]   |                                                               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `js_sys::JsString`
[INFO] [stdout]  --> src/renderers/webgl.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use js_sys::JsString;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `js_sys::Object`
[INFO] [stdout]  --> src/renderers/webgl.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use js_sys::Object;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::ErrorType`
[INFO] [stdout]   --> src/renderers/webgl.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use crate::ErrorType;
[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:65:96
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 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:59:31
[INFO] [stdout]    |
[INFO] [stdout] 59 |         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:54:114
[INFO] [stdout]    |
[INFO] [stdout] 54 |                 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)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `window_id`
[INFO] [stdout]   --> src/renderers/opengl.rs:65:112
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 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:225:31
[INFO] [stdout]     |
[INFO] [stdout] 225 |     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: `key`
[INFO] [stdout]    --> src/renderers/opengl.rs:229:28
[INFO] [stdout]     |
[INFO] [stdout] 229 |     fn get_property(&self, key: &str) -> Option<Box<dyn std::any::Any>> {
[INFO] [stdout]     |                            ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/renderers/opengl.rs:254:37
[INFO] [stdout]     |
[INFO] [stdout] 254 |     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)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/renderers/opengl.rs:396:26
[INFO] [stdout]     |
[INFO] [stdout] 396 |     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:396:47
[INFO] [stdout]     |
[INFO] [stdout] 396 |     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:400:28
[INFO] [stdout]     |
[INFO] [stdout] 400 |     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:400:49
[INFO] [stdout]     |
[INFO] [stdout] 400 |     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:404:31
[INFO] [stdout]     |
[INFO] [stdout] 404 |     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:404:52
[INFO] [stdout]     |
[INFO] [stdout] 404 |     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:408:31
[INFO] [stdout]     |
[INFO] [stdout] 408 |     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:408:52
[INFO] [stdout]     |
[INFO] [stdout] 408 |     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:412:31
[INFO] [stdout]     |
[INFO] [stdout] 412 |     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:412:52
[INFO] [stdout]     |
[INFO] [stdout] 412 |     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: `x`
[INFO] [stdout]   --> src/renderers/webgl.rs:75:50
[INFO] [stdout]    |
[INFO] [stdout] 75 |                     .map_err(|e| e.map_to_first(|x| JsValue::from_str("Context provided isn't WebGL v2")));
[INFO] [stdout]    |                                                  ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/renderers/webgl.rs:66:42
[INFO] [stdout]    |
[INFO] [stdout] 66 |             .map_err(|e| e.map_to_first(|x| JsValue::from_str("Element provided isn't a canvas")));
[INFO] [stdout]    |                                          ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `width`
[INFO] [stdout]    --> src/renderers/webgl.rs:164:43
[INFO] [stdout]     |
[INFO] [stdout] 164 |     fn create_window (&self, title: &str, width: u32, height: u32, vsync: bool) -> Result<WindowWGL, JsValue> {
[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:164:55
[INFO] [stdout]     |
[INFO] [stdout] 164 |     fn create_window (&self, title: &str, width: u32, height: u32, vsync: bool) -> Result<WindowWGL, JsValue> {
[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:164:68
[INFO] [stdout]     |
[INFO] [stdout] 164 |     fn create_window (&self, title: &str, width: u32, height: u32, vsync: bool) -> Result<WindowWGL, JsValue> {
[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:204:31
[INFO] [stdout]     |
[INFO] [stdout] 204 |     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:400:27
[INFO] [stdout]     |
[INFO] [stdout] 400 |     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:400:45
[INFO] [stdout]     |
[INFO] [stdout] 400 |     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:421:28
[INFO] [stdout]     |
[INFO] [stdout] 421 |     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:421:46
[INFO] [stdout]     |
[INFO] [stdout] 421 |     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:437:32
[INFO] [stdout]     |
[INFO] [stdout] 437 |     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:437:53
[INFO] [stdout]     |
[INFO] [stdout] 437 |     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:441:32
[INFO] [stdout]     |
[INFO] [stdout] 441 |     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:441:53
[INFO] [stdout]     |
[INFO] [stdout] 441 |     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:445:32
[INFO] [stdout]     |
[INFO] [stdout] 445 |     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:445:53
[INFO] [stdout]     |
[INFO] [stdout] 445 |     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: fields `vertices` and `indices` are never read
[INFO] [stdout]    --> src/renderers/opengl.rs:432:5
[INFO] [stdout]     |
[INFO] [stdout] 430 | pub struct MeshGL {
[INFO] [stdout]     |            ------ fields in this struct
[INFO] [stdout] 431 |     id: u32,
[INFO] [stdout] 432 |     vertices: u32,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 433 |     indices: u32,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `vertices` and `indices` are never read
[INFO] [stdout]    --> src/renderers/webgl.rs:461:5
[INFO] [stdout]     |
[INFO] [stdout] 459 | pub struct MeshWGL {
[INFO] [stdout]     |            ------- fields in this struct
[INFO] [stdout] 460 |     id: WebGlVertexArrayObject,
[INFO] [stdout] 461 |     vertices: WebGlBuffer,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 462 |     indices: WebGlBuffer,
[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)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/graph/renderer.rs:28:7
[INFO] [stdout]    |
[INFO] [stdout] 28 |       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)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 28 |       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:34:7
[INFO] [stdout]    |
[INFO] [stdout] 34 |       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] 34 |       let _ = code.read_to_string(&mut code_string);
[INFO] [stdout]    |       +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 55s
[INFO] running `Command { std: "docker" "inspect" "72d91cfa7e928b14d7edeb63f5490da478ed994233848d011a4f7dcf321bbb22", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "72d91cfa7e928b14d7edeb63f5490da478ed994233848d011a4f7dcf321bbb22", kill_on_drop: false }`
[INFO] [stdout] 72d91cfa7e928b14d7edeb63f5490da478ed994233848d011a4f7dcf321bbb22
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 95daf460c05d6219a26605fb9ec939de46e55ae3ecf70d4b3d63a8efe16f5b2d
[INFO] running `Command { std: "docker" "start" "-a" "95daf460c05d6219a26605fb9ec939de46e55ae3ecf70d4b3d63a8efe16f5b2d", kill_on_drop: false }`
[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)]` (part of `#[warn(unused)]`) 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)]` (part of `#[warn(nonstandard_style)]`) 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: `wasm_bindgen::JsValue`
[INFO] [stdout]  --> src/renderers/builder.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use wasm_bindgen::JsValue;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `glUniform4iv`
[INFO] [stdout]  --> src/renderers/opengl.rs:3:709
[INFO] [stdout]   |
[INFO] [stdout] 3 | ...v, glUniform1i, glUniform1iv, glUniform1ui, glUniform1uiv, glUniform4iv, glUniformMatrix2fv, glUniformMatrix3fv, glUniformMatrix4f...
[INFO] [stdout]   |                                                               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `js_sys::JsString`
[INFO] [stdout]  --> src/renderers/webgl.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use js_sys::JsString;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `js_sys::Object`
[INFO] [stdout]  --> src/renderers/webgl.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use js_sys::Object;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::ErrorType`
[INFO] [stdout]   --> src/renderers/webgl.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use crate::ErrorType;
[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:65:96
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 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:59:31
[INFO] [stdout]    |
[INFO] [stdout] 59 |         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:54:114
[INFO] [stdout]    |
[INFO] [stdout] 54 |                 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)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `window_id`
[INFO] [stdout]   --> src/renderers/opengl.rs:65:112
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 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:225:31
[INFO] [stdout]     |
[INFO] [stdout] 225 |     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: `key`
[INFO] [stdout]    --> src/renderers/opengl.rs:229:28
[INFO] [stdout]     |
[INFO] [stdout] 229 |     fn get_property(&self, key: &str) -> Option<Box<dyn std::any::Any>> {
[INFO] [stdout]     |                            ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/renderers/opengl.rs:254:37
[INFO] [stdout]     |
[INFO] [stdout] 254 |     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)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/renderers/opengl.rs:396:26
[INFO] [stdout]     |
[INFO] [stdout] 396 |     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:396:47
[INFO] [stdout]     |
[INFO] [stdout] 396 |     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:400:28
[INFO] [stdout]     |
[INFO] [stdout] 400 |     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:400:49
[INFO] [stdout]     |
[INFO] [stdout] 400 |     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:404:31
[INFO] [stdout]     |
[INFO] [stdout] 404 |     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:404:52
[INFO] [stdout]     |
[INFO] [stdout] 404 |     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:408:31
[INFO] [stdout]     |
[INFO] [stdout] 408 |     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:408:52
[INFO] [stdout]     |
[INFO] [stdout] 408 |     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:412:31
[INFO] [stdout]     |
[INFO] [stdout] 412 |     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:412:52
[INFO] [stdout]     |
[INFO] [stdout] 412 |     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: `x`
[INFO] [stdout]   --> src/renderers/webgl.rs:75:50
[INFO] [stdout]    |
[INFO] [stdout] 75 |                     .map_err(|e| e.map_to_first(|x| JsValue::from_str("Context provided isn't WebGL v2")));
[INFO] [stdout]    |                                                  ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/renderers/webgl.rs:66:42
[INFO] [stdout]    |
[INFO] [stdout] 66 |             .map_err(|e| e.map_to_first(|x| JsValue::from_str("Element provided isn't a canvas")));
[INFO] [stdout]    |                                          ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `width`
[INFO] [stdout]    --> src/renderers/webgl.rs:164:43
[INFO] [stdout]     |
[INFO] [stdout] 164 |     fn create_window (&self, title: &str, width: u32, height: u32, vsync: bool) -> Result<WindowWGL, JsValue> {
[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:164:55
[INFO] [stdout]     |
[INFO] [stdout] 164 |     fn create_window (&self, title: &str, width: u32, height: u32, vsync: bool) -> Result<WindowWGL, JsValue> {
[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:164:68
[INFO] [stdout]     |
[INFO] [stdout] 164 |     fn create_window (&self, title: &str, width: u32, height: u32, vsync: bool) -> Result<WindowWGL, JsValue> {
[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:204:31
[INFO] [stdout]     |
[INFO] [stdout] 204 |     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:400:27
[INFO] [stdout]     |
[INFO] [stdout] 400 |     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:400:45
[INFO] [stdout]     |
[INFO] [stdout] 400 |     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:421:28
[INFO] [stdout]     |
[INFO] [stdout] 421 |     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:421:46
[INFO] [stdout]     |
[INFO] [stdout] 421 |     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:437:32
[INFO] [stdout]     |
[INFO] [stdout] 437 |     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:437:53
[INFO] [stdout]     |
[INFO] [stdout] 437 |     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:441:32
[INFO] [stdout]     |
[INFO] [stdout] 441 |     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:441:53
[INFO] [stdout]     |
[INFO] [stdout] 441 |     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:445:32
[INFO] [stdout]     |
[INFO] [stdout] 445 |     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:445:53
[INFO] [stdout]     |
[INFO] [stdout] 445 |     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: fields `vertices` and `indices` are never read
[INFO] [stdout]    --> src/renderers/opengl.rs:432:5
[INFO] [stdout]     |
[INFO] [stdout] 430 | pub struct MeshGL {
[INFO] [stdout]     |            ------ fields in this struct
[INFO] [stdout] 431 |     id: u32,
[INFO] [stdout] 432 |     vertices: u32,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 433 |     indices: u32,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `vertices` and `indices` are never read
[INFO] [stdout]    --> src/renderers/webgl.rs:461:5
[INFO] [stdout]     |
[INFO] [stdout] 459 | pub struct MeshWGL {
[INFO] [stdout]     |            ------- fields in this struct
[INFO] [stdout] 460 |     id: WebGlVertexArrayObject,
[INFO] [stdout] 461 |     vertices: WebGlBuffer,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 462 |     indices: WebGlBuffer,
[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)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/graph/renderer.rs:28:7
[INFO] [stdout]    |
[INFO] [stdout] 28 |       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)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 28 |       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:34:7
[INFO] [stdout]    |
[INFO] [stdout] 34 |       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] 34 |       let _ = code.read_to_string(&mut code_string);
[INFO] [stdout]    |       +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling vigilant_lamp v0.0.6 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `opengl::OpenGL`
[INFO] [stdout]  --> tests/gl.rs:3:128
[INFO] [stdout]   |
[INFO] [stdout] 3 | ...spectiveCamera, MeshPrimitives, ObjectG, Script, FlatMap, opengl::OpenGL};
[INFO] [stdout]   |                                                              ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `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)]` (part of `#[warn(unused)]`) 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)]` (part of `#[warn(nonstandard_style)]`) 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: `wasm_bindgen::JsValue`
[INFO] [stdout]  --> src/renderers/builder.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use wasm_bindgen::JsValue;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `glUniform4iv`
[INFO] [stdout]  --> src/renderers/opengl.rs:3:709
[INFO] [stdout]   |
[INFO] [stdout] 3 | ...v, glUniform1i, glUniform1iv, glUniform1ui, glUniform1uiv, glUniform4iv, glUniformMatrix2fv, glUniformMatrix3fv, glUniformMatrix4f...
[INFO] [stdout]   |                                                               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `js_sys::JsString`
[INFO] [stdout]  --> src/renderers/webgl.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use js_sys::JsString;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `js_sys::Object`
[INFO] [stdout]  --> src/renderers/webgl.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use js_sys::Object;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::ErrorType`
[INFO] [stdout]   --> src/renderers/webgl.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use crate::ErrorType;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]   --> tests/gl.rs:28:47
[INFO] [stdout]    |
[INFO] [stdout] 28 |         Script::of_update(|s : &mut Scene<R>, k, m, d| {
[INFO] [stdout]    |                                               ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `m`
[INFO] [stdout]   --> tests/gl.rs:28:50
[INFO] [stdout]    |
[INFO] [stdout] 28 |         Script::of_update(|s : &mut Scene<R>, k, m, d| {
[INFO] [stdout]    |                                                  ^ help: if this is intentional, prefix it with an underscore: `_m`
[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:65:96
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 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:59:31
[INFO] [stdout]    |
[INFO] [stdout] 59 |         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:54:114
[INFO] [stdout]    |
[INFO] [stdout] 54 |                 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)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `window_id`
[INFO] [stdout]   --> src/renderers/opengl.rs:65:112
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 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:225:31
[INFO] [stdout]     |
[INFO] [stdout] 225 |     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: `key`
[INFO] [stdout]    --> src/renderers/opengl.rs:229:28
[INFO] [stdout]     |
[INFO] [stdout] 229 |     fn get_property(&self, key: &str) -> Option<Box<dyn std::any::Any>> {
[INFO] [stdout]     |                            ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/renderers/opengl.rs:254:37
[INFO] [stdout]     |
[INFO] [stdout] 254 |     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)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/renderers/opengl.rs:396:26
[INFO] [stdout]     |
[INFO] [stdout] 396 |     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:396:47
[INFO] [stdout]     |
[INFO] [stdout] 396 |     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:400:28
[INFO] [stdout]     |
[INFO] [stdout] 400 |     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:400:49
[INFO] [stdout]     |
[INFO] [stdout] 400 |     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:404:31
[INFO] [stdout]     |
[INFO] [stdout] 404 |     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:404:52
[INFO] [stdout]     |
[INFO] [stdout] 404 |     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:408:31
[INFO] [stdout]     |
[INFO] [stdout] 408 |     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:408:52
[INFO] [stdout]     |
[INFO] [stdout] 408 |     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:412:31
[INFO] [stdout]     |
[INFO] [stdout] 412 |     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:412:52
[INFO] [stdout]     |
[INFO] [stdout] 412 |     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: `x`
[INFO] [stdout]   --> src/renderers/webgl.rs:75:50
[INFO] [stdout]    |
[INFO] [stdout] 75 |                     .map_err(|e| e.map_to_first(|x| JsValue::from_str("Context provided isn't WebGL v2")));
[INFO] [stdout]    |                                                  ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/renderers/webgl.rs:66:42
[INFO] [stdout]    |
[INFO] [stdout] 66 |             .map_err(|e| e.map_to_first(|x| JsValue::from_str("Element provided isn't a canvas")));
[INFO] [stdout]    |                                          ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `width`
[INFO] [stdout]    --> src/renderers/webgl.rs:164:43
[INFO] [stdout]     |
[INFO] [stdout] 164 |     fn create_window (&self, title: &str, width: u32, height: u32, vsync: bool) -> Result<WindowWGL, JsValue> {
[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:164:55
[INFO] [stdout]     |
[INFO] [stdout] 164 |     fn create_window (&self, title: &str, width: u32, height: u32, vsync: bool) -> Result<WindowWGL, JsValue> {
[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:164:68
[INFO] [stdout]     |
[INFO] [stdout] 164 |     fn create_window (&self, title: &str, width: u32, height: u32, vsync: bool) -> Result<WindowWGL, JsValue> {
[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:204:31
[INFO] [stdout]     |
[INFO] [stdout] 204 |     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:400:27
[INFO] [stdout]     |
[INFO] [stdout] 400 |     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:400:45
[INFO] [stdout]     |
[INFO] [stdout] 400 |     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:421:28
[INFO] [stdout]     |
[INFO] [stdout] 421 |     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:421:46
[INFO] [stdout]     |
[INFO] [stdout] 421 |     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:437:32
[INFO] [stdout]     |
[INFO] [stdout] 437 |     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:437:53
[INFO] [stdout]     |
[INFO] [stdout] 437 |     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:441:32
[INFO] [stdout]     |
[INFO] [stdout] 441 |     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:441:53
[INFO] [stdout]     |
[INFO] [stdout] 441 |     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:445:32
[INFO] [stdout]     |
[INFO] [stdout] 445 |     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:445:53
[INFO] [stdout]     |
[INFO] [stdout] 445 |     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: fields `vertices` and `indices` are never read
[INFO] [stdout]    --> src/renderers/opengl.rs:432:5
[INFO] [stdout]     |
[INFO] [stdout] 430 | pub struct MeshGL {
[INFO] [stdout]     |            ------ fields in this struct
[INFO] [stdout] 431 |     id: u32,
[INFO] [stdout] 432 |     vertices: u32,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 433 |     indices: u32,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `vertices` and `indices` are never read
[INFO] [stdout]    --> src/renderers/webgl.rs:461:5
[INFO] [stdout]     |
[INFO] [stdout] 459 | pub struct MeshWGL {
[INFO] [stdout]     |            ------- fields in this struct
[INFO] [stdout] 460 |     id: WebGlVertexArrayObject,
[INFO] [stdout] 461 |     vertices: WebGlBuffer,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 462 |     indices: WebGlBuffer,
[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)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/graph/renderer.rs:28:7
[INFO] [stdout]    |
[INFO] [stdout] 28 |       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)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 28 |       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:34:7
[INFO] [stdout]    |
[INFO] [stdout] 34 |       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] 34 |       let _ = code.read_to_string(&mut code_string);
[INFO] [stdout]    |       +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.79s
[INFO] running `Command { std: "docker" "inspect" "95daf460c05d6219a26605fb9ec939de46e55ae3ecf70d4b3d63a8efe16f5b2d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "95daf460c05d6219a26605fb9ec939de46e55ae3ecf70d4b3d63a8efe16f5b2d", kill_on_drop: false }`
[INFO] [stdout] 95daf460c05d6219a26605fb9ec939de46e55ae3ecf70d4b3d63a8efe16f5b2d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 85c4c3223c3305430fba335635542466c46f37f57b8c2e31209b608eb4d78674
[INFO] running `Command { std: "docker" "start" "-a" "85c4c3223c3305430fba335635542466c46f37f57b8c2e31209b608eb4d78674", kill_on_drop: false }`
[INFO] [stderr] warning: unused imports: `BigInt`, `BigUint`, `One`, and `bigint::Sign`
[INFO] [stderr]  --> src/extra/num_two.rs:1:11
[INFO] [stderr]   |
[INFO] [stderr] 1 | use num::{BigInt, BigUint, Num, One, bigint::Sign};
[INFO] [stderr]   |           ^^^^^^  ^^^^^^^       ^^^  ^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `engine::camera`
[INFO] [stderr]  --> src/engine/scene.rs:1:63
[INFO] [stderr]   |
[INFO] [stderr] 1 | use crate::{graph::{Renderer, Window}, math::matrix::Matrix4, engine::camera};
[INFO] [stderr]   |                                                               ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variant `LEFT_BRACKET` should have an upper camel case name
[INFO] [stderr]   --> src/engine/input/keyboard.rs:53:5
[INFO] [stderr]    |
[INFO] [stderr] 53 |     LEFT_BRACKET,
[INFO] [stderr]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `LeftBracket`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variant `RIGHT_BRACKET` should have an upper camel case name
[INFO] [stderr]   --> src/engine/input/keyboard.rs:55:5
[INFO] [stderr]    |
[INFO] [stderr] 55 |     RIGHT_BRACKET,
[INFO] [stderr]    |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RightBracket`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `GRAVE_ACCENT` should have an upper camel case name
[INFO] [stderr]   --> src/engine/input/keyboard.rs:56:5
[INFO] [stderr]    |
[INFO] [stderr] 56 |     GRAVE_ACCENT,
[INFO] [stderr]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `GraveAccent`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `WORLD_1` should have an upper camel case name
[INFO] [stderr]   --> src/engine/input/keyboard.rs:58:5
[INFO] [stderr]    |
[INFO] [stderr] 58 |     WORLD_1,
[INFO] [stderr]    |     ^^^^^^^ help: convert the identifier to upper camel case: `World1`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `WORLD_2` should have an upper camel case name
[INFO] [stderr]   --> src/engine/input/keyboard.rs:59:5
[INFO] [stderr]    |
[INFO] [stderr] 59 |     WORLD_2,
[INFO] [stderr]    |     ^^^^^^^ help: convert the identifier to upper camel case: `World2`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `PAGE_UP` should have an upper camel case name
[INFO] [stderr]   --> src/engine/input/keyboard.rs:72:5
[INFO] [stderr]    |
[INFO] [stderr] 72 |     PAGE_UP,
[INFO] [stderr]    |     ^^^^^^^ help: convert the identifier to upper camel case: `PageUp`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `PAGE_DOWN` should have an upper camel case name
[INFO] [stderr]   --> src/engine/input/keyboard.rs:73:5
[INFO] [stderr]    |
[INFO] [stderr] 73 |     PAGE_DOWN,
[INFO] [stderr]    |     ^^^^^^^^^ help: convert the identifier to upper camel case: `PageDown`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `CAPS_LOCK` should have an upper camel case name
[INFO] [stderr]   --> src/engine/input/keyboard.rs:77:5
[INFO] [stderr]    |
[INFO] [stderr] 77 |     CAPS_LOCK,
[INFO] [stderr]    |     ^^^^^^^^^ help: convert the identifier to upper camel case: `CapsLock`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `SCROLL_LOCK` should have an upper camel case name
[INFO] [stderr]   --> src/engine/input/keyboard.rs:78:5
[INFO] [stderr]    |
[INFO] [stderr] 78 |     SCROLL_LOCK,
[INFO] [stderr]    |     ^^^^^^^^^^^ help: convert the identifier to upper camel case: `ScrollLock`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `NUM_LOCK` should have an upper camel case name
[INFO] [stderr]   --> src/engine/input/keyboard.rs:79:5
[INFO] [stderr]    |
[INFO] [stderr] 79 |     NUM_LOCK,
[INFO] [stderr]    |     ^^^^^^^^ help: convert the identifier to upper camel case: `NumLock`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `PRINT_SCREEN` should have an upper camel case name
[INFO] [stderr]   --> src/engine/input/keyboard.rs:80:5
[INFO] [stderr]    |
[INFO] [stderr] 80 |     PRINT_SCREEN,
[INFO] [stderr]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PrintScreen`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `KP_DECIMAL` should have an upper camel case name
[INFO] [stderr]    --> src/engine/input/keyboard.rs:122:5
[INFO] [stderr]     |
[INFO] [stderr] 122 |     KP_DECIMAL,
[INFO] [stderr]     |     ^^^^^^^^^^ help: convert the identifier to upper camel case: `KpDecimal`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `KP_DIVIDE` should have an upper camel case name
[INFO] [stderr]    --> src/engine/input/keyboard.rs:123:5
[INFO] [stderr]     |
[INFO] [stderr] 123 |     KP_DIVIDE,
[INFO] [stderr]     |     ^^^^^^^^^ help: convert the identifier to upper camel case: `KpDivide`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `KP_MULTIPLY` should have an upper camel case name
[INFO] [stderr]    --> src/engine/input/keyboard.rs:124:5
[INFO] [stderr]     |
[INFO] [stderr] 124 |     KP_MULTIPLY,
[INFO] [stderr]     |     ^^^^^^^^^^^ help: convert the identifier to upper camel case: `KpMultiply`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `KP_SUBTRACT` should have an upper camel case name
[INFO] [stderr]    --> src/engine/input/keyboard.rs:125:5
[INFO] [stderr]     |
[INFO] [stderr] 125 |     KP_SUBTRACT,
[INFO] [stderr]     |     ^^^^^^^^^^^ help: convert the identifier to upper camel case: `KpSubtract`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `KP_ADD` should have an upper camel case name
[INFO] [stderr]    --> src/engine/input/keyboard.rs:126:5
[INFO] [stderr]     |
[INFO] [stderr] 126 |     KP_ADD,
[INFO] [stderr]     |     ^^^^^^ help: convert the identifier to upper camel case: `KpAdd`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `KP_ENTER` should have an upper camel case name
[INFO] [stderr]    --> src/engine/input/keyboard.rs:127:5
[INFO] [stderr]     |
[INFO] [stderr] 127 |     KP_ENTER,
[INFO] [stderr]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `KpEnter`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `KP_EQUAL` should have an upper camel case name
[INFO] [stderr]    --> src/engine/input/keyboard.rs:128:5
[INFO] [stderr]     |
[INFO] [stderr] 128 |     KP_EQUAL,
[INFO] [stderr]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `KpEqual`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `LEFT_SHIFT` should have an upper camel case name
[INFO] [stderr]    --> src/engine/input/keyboard.rs:130:5
[INFO] [stderr]     |
[INFO] [stderr] 130 |     LEFT_SHIFT,
[INFO] [stderr]     |     ^^^^^^^^^^ help: convert the identifier to upper camel case: `LeftShift`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `LEFT_CONTROL` should have an upper camel case name
[INFO] [stderr]    --> src/engine/input/keyboard.rs:131:5
[INFO] [stderr]     |
[INFO] [stderr] 131 |     LEFT_CONTROL,
[INFO] [stderr]     |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `LeftControl`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `LEFT_ALT` should have an upper camel case name
[INFO] [stderr]    --> src/engine/input/keyboard.rs:132:5
[INFO] [stderr]     |
[INFO] [stderr] 132 |     LEFT_ALT,
[INFO] [stderr]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `LeftAlt`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `LEFT_SUPER` should have an upper camel case name
[INFO] [stderr]    --> src/engine/input/keyboard.rs:133:5
[INFO] [stderr]     |
[INFO] [stderr] 133 |     LEFT_SUPER,
[INFO] [stderr]     |     ^^^^^^^^^^ help: convert the identifier to upper camel case: `LeftSuper`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `RIGHT_SHIFT` should have an upper camel case name
[INFO] [stderr]    --> src/engine/input/keyboard.rs:135:5
[INFO] [stderr]     |
[INFO] [stderr] 135 |     RIGHT_SHIFT,
[INFO] [stderr]     |     ^^^^^^^^^^^ help: convert the identifier to upper camel case: `RightShift`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `RIGHT_CONTROL` should have an upper camel case name
[INFO] [stderr]    --> src/engine/input/keyboard.rs:136:5
[INFO] [stderr]     |
[INFO] [stderr] 136 |     RIGHT_CONTROL,
[INFO] [stderr]     |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RightControl`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `RIGHT_ALT` should have an upper camel case name
[INFO] [stderr]    --> src/engine/input/keyboard.rs:137:5
[INFO] [stderr]     |
[INFO] [stderr] 137 |     RIGHT_ALT,
[INFO] [stderr]     |     ^^^^^^^^^ help: convert the identifier to upper camel case: `RightAlt`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `RIGHT_SUPER` should have an upper camel case name
[INFO] [stderr]    --> src/engine/input/keyboard.rs:138:5
[INFO] [stderr]     |
[INFO] [stderr] 138 |     RIGHT_SUPER,
[INFO] [stderr]     |     ^^^^^^^^^^^ help: convert the identifier to upper camel case: `RightSuper`
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `wasm_bindgen::JsValue`
[INFO] [stderr]  --> src/renderers/builder.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use wasm_bindgen::JsValue;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `glUniform4iv`
[INFO] [stderr]  --> src/renderers/opengl.rs:3:709
[INFO] [stderr]   |
[INFO] [stderr] 3 | ...v, glUniform1i, glUniform1iv, glUniform1ui, glUniform1uiv, glUniform4iv, glUniformMatrix2fv, glUniformMatrix3fv, glUniformMatrix4f...
[INFO] [stderr]   |                                                               ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `js_sys::JsString`
[INFO] [stderr]  --> src/renderers/webgl.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use js_sys::JsString;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `js_sys::Object`
[INFO] [stderr]  --> src/renderers/webgl.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use js_sys::Object;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::ErrorType`
[INFO] [stderr]   --> src/renderers/webgl.rs:19:5
[INFO] [stderr]    |
[INFO] [stderr] 19 | use crate::ErrorType;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated field `glutin::event::WindowEvent::CursorMoved::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stderr]   --> src/renderers/opengl.rs:65:96
[INFO] [stderr]    |
[INFO] [stderr] 65 |                 Event::WindowEvent { event: WindowEvent::CursorMoved { device_id: _, position, modifiers: _ }, window_id } => {
[INFO] [stderr]    |                                                                                                ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] 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] [stderr]   --> src/renderers/webgl.rs:59:31
[INFO] [stderr]    |
[INFO] [stderr] 59 |         let config = JsValue::from_serde("{ antialias: false }").unwrap();
[INFO] [stderr]    |                               ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `window_id`
[INFO] [stderr]   --> src/renderers/opengl.rs:54:114
[INFO] [stderr]    |
[INFO] [stderr] 54 |                 Event::WindowEvent { event: WindowEvent::KeyboardInput { device_id: _, input, is_synthetic: _ }, window_id } => {
[INFO] [stderr]    |                                                                                                                  ^^^^^^^^^ help: try ignoring the field: `window_id: _`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `window_id`
[INFO] [stderr]   --> src/renderers/opengl.rs:65:112
[INFO] [stderr]    |
[INFO] [stderr] 65 |                 Event::WindowEvent { event: WindowEvent::CursorMoved { device_id: _, position, modifiers: _ }, window_id } => {
[INFO] [stderr]    |                                                                                                                ^^^^^^^^^ help: try ignoring the field: `window_id: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `program`
[INFO] [stderr]    --> src/renderers/opengl.rs:225:31
[INFO] [stderr]     |
[INFO] [stderr] 225 |     fn unbind_program (&self, program: &ProgramGL) {
[INFO] [stderr]     |                               ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_program`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `key`
[INFO] [stderr]    --> src/renderers/opengl.rs:229:28
[INFO] [stderr]     |
[INFO] [stderr] 229 |     fn get_property(&self, key: &str) -> Option<Box<dyn std::any::Any>> {
[INFO] [stderr]     |                            ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/renderers/opengl.rs:254:37
[INFO] [stderr]     |
[INFO] [stderr] 254 |     unsafe fn create_shader (&self, mut code: &str, typ: GLenum) -> Result<u32, String> {
[INFO] [stderr]     |                                     ----^^^^
[INFO] [stderr]     |                                     |
[INFO] [stderr]     |                                     help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `key`
[INFO] [stderr]    --> src/renderers/opengl.rs:396:26
[INFO] [stderr]     |
[INFO] [stderr] 396 |     fn set_double(&self, key: &Self::Uniform, value: f64) {
[INFO] [stderr]     |                          ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/renderers/opengl.rs:396:47
[INFO] [stderr]     |
[INFO] [stderr] 396 |     fn set_double(&self, key: &Self::Uniform, value: f64) {
[INFO] [stderr]     |                                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `key`
[INFO] [stderr]    --> src/renderers/opengl.rs:400:28
[INFO] [stderr]     |
[INFO] [stderr] 400 |     fn set_doubles (&self, key: &Self::Uniform, value: &[f64]) {
[INFO] [stderr]     |                            ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/renderers/opengl.rs:400:49
[INFO] [stderr]     |
[INFO] [stderr] 400 |     fn set_doubles (&self, key: &Self::Uniform, value: &[f64]) {
[INFO] [stderr]     |                                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `key`
[INFO] [stderr]    --> src/renderers/opengl.rs:404:31
[INFO] [stderr]     |
[INFO] [stderr] 404 |     fn set_double_mat2(&self, key: &Self::Uniform, value: Matrix2<f64>) {
[INFO] [stderr]     |                               ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/renderers/opengl.rs:404:52
[INFO] [stderr]     |
[INFO] [stderr] 404 |     fn set_double_mat2(&self, key: &Self::Uniform, value: Matrix2<f64>) {
[INFO] [stderr]     |                                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `key`
[INFO] [stderr]    --> src/renderers/opengl.rs:408:31
[INFO] [stderr]     |
[INFO] [stderr] 408 |     fn set_double_mat3(&self, key: &Self::Uniform, value: Matrix3<f64>) {
[INFO] [stderr]     |                               ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/renderers/opengl.rs:408:52
[INFO] [stderr]     |
[INFO] [stderr] 408 |     fn set_double_mat3(&self, key: &Self::Uniform, value: Matrix3<f64>) {
[INFO] [stderr]     |                                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `key`
[INFO] [stderr]    --> src/renderers/opengl.rs:412:31
[INFO] [stderr]     |
[INFO] [stderr] 412 |     fn set_double_mat4(&self, key: &Self::Uniform, value: Matrix4<f64>) {
[INFO] [stderr]     |                               ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/renderers/opengl.rs:412:52
[INFO] [stderr]     |
[INFO] [stderr] 412 |     fn set_double_mat4(&self, key: &Self::Uniform, value: Matrix4<f64>) {
[INFO] [stderr]     |                                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `x`
[INFO] [stderr]   --> src/renderers/webgl.rs:75:50
[INFO] [stderr]    |
[INFO] [stderr] 75 |                     .map_err(|e| e.map_to_first(|x| JsValue::from_str("Context provided isn't WebGL v2")));
[INFO] [stderr]    |                                                  ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `x`
[INFO] [stderr]   --> src/renderers/webgl.rs:66:42
[INFO] [stderr]    |
[INFO] [stderr] 66 |             .map_err(|e| e.map_to_first(|x| JsValue::from_str("Element provided isn't a canvas")));
[INFO] [stderr]    |                                          ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `width`
[INFO] [stderr]    --> src/renderers/webgl.rs:164:43
[INFO] [stderr]     |
[INFO] [stderr] 164 |     fn create_window (&self, title: &str, width: u32, height: u32, vsync: bool) -> Result<WindowWGL, JsValue> {
[INFO] [stderr]     |                                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_width`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `height`
[INFO] [stderr]    --> src/renderers/webgl.rs:164:55
[INFO] [stderr]     |
[INFO] [stderr] 164 |     fn create_window (&self, title: &str, width: u32, height: u32, vsync: bool) -> Result<WindowWGL, JsValue> {
[INFO] [stderr]     |                                                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `vsync`
[INFO] [stderr]    --> src/renderers/webgl.rs:164:68
[INFO] [stderr]     |
[INFO] [stderr] 164 |     fn create_window (&self, title: &str, width: u32, height: u32, vsync: bool) -> Result<WindowWGL, JsValue> {
[INFO] [stderr]     |                                                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_vsync`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `program`
[INFO] [stderr]    --> src/renderers/webgl.rs:204:31
[INFO] [stderr]     |
[INFO] [stderr] 204 |     fn unbind_program (&self, program: &ProgramWGL) {
[INFO] [stderr]     |                               ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_program`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `key`
[INFO] [stderr]    --> src/renderers/webgl.rs:400:27
[INFO] [stderr]     |
[INFO] [stderr] 400 |     fn set_double (&self, key: &UniformWGL, value: f64) {
[INFO] [stderr]     |                           ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/renderers/webgl.rs:400:45
[INFO] [stderr]     |
[INFO] [stderr] 400 |     fn set_double (&self, key: &UniformWGL, value: f64) {
[INFO] [stderr]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `key`
[INFO] [stderr]    --> src/renderers/webgl.rs:421:28
[INFO] [stderr]     |
[INFO] [stderr] 421 |     fn set_doubles (&self, key: &UniformWGL, value: &[f64]) {
[INFO] [stderr]     |                            ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/renderers/webgl.rs:421:46
[INFO] [stderr]     |
[INFO] [stderr] 421 |     fn set_doubles (&self, key: &UniformWGL, value: &[f64]) {
[INFO] [stderr]     |                                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `key`
[INFO] [stderr]    --> src/renderers/webgl.rs:437:32
[INFO] [stderr]     |
[INFO] [stderr] 437 |     fn set_double_mat2 (&self, key: &Self::Uniform, value: crate::math::matrix::Matrix2<f64>) {
[INFO] [stderr]     |                                ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/renderers/webgl.rs:437:53
[INFO] [stderr]     |
[INFO] [stderr] 437 |     fn set_double_mat2 (&self, key: &Self::Uniform, value: crate::math::matrix::Matrix2<f64>) {
[INFO] [stderr]     |                                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `key`
[INFO] [stderr]    --> src/renderers/webgl.rs:441:32
[INFO] [stderr]     |
[INFO] [stderr] 441 |     fn set_double_mat3 (&self, key: &Self::Uniform, value: crate::math::matrix::Matrix3<f64>) {
[INFO] [stderr]     |                                ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/renderers/webgl.rs:441:53
[INFO] [stderr]     |
[INFO] [stderr] 441 |     fn set_double_mat3 (&self, key: &Self::Uniform, value: crate::math::matrix::Matrix3<f64>) {
[INFO] [stderr]     |                                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `key`
[INFO] [stderr]    --> src/renderers/webgl.rs:445:32
[INFO] [stderr]     |
[INFO] [stderr] 445 |     fn set_double_mat4 (&self, key: &Self::Uniform, value: crate::math::matrix::Matrix4<f64>) {
[INFO] [stderr]     |                                ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `value`
[INFO] [stderr]    --> src/renderers/webgl.rs:445:53
[INFO] [stderr]     |
[INFO] [stderr] 445 |     fn set_double_mat4 (&self, key: &Self::Uniform, value: crate::math::matrix::Matrix4<f64>) {
[INFO] [stderr]     |                                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stderr] 
[INFO] [stderr] warning: fields `vertices` and `indices` are never read
[INFO] [stderr]    --> src/renderers/opengl.rs:432:5
[INFO] [stderr]     |
[INFO] [stderr] 430 | pub struct MeshGL {
[INFO] [stderr]     |            ------ fields in this struct
[INFO] [stderr] 431 |     id: u32,
[INFO] [stderr] 432 |     vertices: u32,
[INFO] [stderr]     |     ^^^^^^^^
[INFO] [stderr] 433 |     indices: u32,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: fields `vertices` and `indices` are never read
[INFO] [stderr]    --> src/renderers/webgl.rs:461:5
[INFO] [stderr]     |
[INFO] [stderr] 459 | pub struct MeshWGL {
[INFO] [stderr]     |            ------- fields in this struct
[INFO] [stderr] 460 |     id: WebGlVertexArrayObject,
[INFO] [stderr] 461 |     vertices: WebGlBuffer,
[INFO] [stderr]     |     ^^^^^^^^
[INFO] [stderr] 462 |     indices: WebGlBuffer,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `T` should have a snake case name
[INFO] [stderr]   --> src/math/matrix.rs:41:12
[INFO] [stderr]    |
[INFO] [stderr] 41 |     pub fn T (&self) -> Matrix<T, C, R> {
[INFO] [stderr]    |            ^ help: convert the identifier to snake case: `t`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/graph/renderer.rs:28:7
[INFO] [stderr]    |
[INFO] [stderr] 28 |       code.read_to_string(&mut code_string);
[INFO] [stderr]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 28 |       let _ = code.read_to_string(&mut code_string);
[INFO] [stderr]    |       +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/graph/renderer.rs:34:7
[INFO] [stderr]    |
[INFO] [stderr] 34 |       code.read_to_string(&mut code_string);
[INFO] [stderr]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 34 |       let _ = code.read_to_string(&mut code_string);
[INFO] [stderr]    |       +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `vigilant_lamp` (lib) generated 71 warnings (run `cargo fix --lib -p vigilant_lamp` to apply 38 suggestions)
[INFO] [stderr] warning: `vigilant_lamp` (lib test) generated 71 warnings (71 duplicates)
[INFO] [stderr] warning: unused import: `opengl::OpenGL`
[INFO] [stderr]  --> tests/gl.rs:3:128
[INFO] [stderr]   |
[INFO] [stderr] 3 | ...spectiveCamera, MeshPrimitives, ObjectG, Script, FlatMap, opengl::OpenGL};
[INFO] [stderr]   |                                                              ^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `k`
[INFO] [stderr]   --> tests/gl.rs:28:47
[INFO] [stderr]    |
[INFO] [stderr] 28 |         Script::of_update(|s : &mut Scene<R>, k, m, d| {
[INFO] [stderr]    |                                               ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `m`
[INFO] [stderr]   --> tests/gl.rs:28:50
[INFO] [stderr]    |
[INFO] [stderr] 28 |         Script::of_update(|s : &mut Scene<R>, k, m, d| {
[INFO] [stderr]    |                                                  ^ help: if this is intentional, prefix it with an underscore: `_m`
[INFO] [stderr] 
[INFO] [stderr] warning: `vigilant_lamp` (test "gl") generated 3 warnings (run `cargo fix --test "gl" -p vigilant_lamp` to apply 3 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.34s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/vigilant_lamp-a894f849f80fac12)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/gl.rs (/opt/rustwide/target/debug/deps/gl-5ec0f4268c634395)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test tests::main ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- tests::main stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'tests::main' (18) panicked at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/winit-0.26.1/src/platform_impl/linux/mod.rs:758:9:
[INFO] [stdout] Initializing the event loop outside of the main thread is a significant cross-platform compatibility hazard. If you really, absolutely need to create an EventLoop on a different thread, please use the `EventLoopExtUnix::new_any_thread` function.
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x6445c99ed142 - std[3b51380354919863]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x6445c99ed142 - std[3b51380354919863]::backtrace_rs::backtrace::trace_unsynchronized::<std[3b51380354919863]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x6445c99ed142 - std[3b51380354919863]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x6445c99ed142 - <<std[3b51380354919863]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[27de1724e4349be2]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x6445c9a045ea - <core[27de1724e4349be2]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x6445c9a045ea - core[27de1724e4349be2]::fmt::write
[INFO] [stdout]    6:     0x6445c99f21d6 - std[3b51380354919863]::io::default_write_fmt::<alloc[a57f19327c0ad893]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x6445c99f21d6 - <alloc[a57f19327c0ad893]::vec::Vec<u8> as std[3b51380354919863]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x6445c99caaef - <std[3b51380354919863]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x6445c99caaef - std[3b51380354919863]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x6445c99e4b29 - std[3b51380354919863]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x6445c962e39e - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x6445c962e39e - test[182b2e79ecd7bbd9]::test_main_with_exit_callback::<test[182b2e79ecd7bbd9]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x6445c99e4ce2 - <alloc[a57f19327c0ad893]::boxed::Box<dyn for<'a, 'b> core[27de1724e4349be2]::ops::function::Fn<(&'a std[3b51380354919863]::panic::PanicHookInfo<'b>,), Output = ()> + core[27de1724e4349be2]::marker::Sync + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::Fn<(&std[3b51380354919863]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x6445c99e4ce2 - std[3b51380354919863]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x6445c99caba8 - std[3b51380354919863]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x6445c99bfc49 - std[3b51380354919863]::sys::backtrace::__rust_end_short_backtrace::<std[3b51380354919863]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x6445c99cbb1d - __rustc[d79c0ace40940972]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x6445c9a04d5c - core[27de1724e4349be2]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x6445c9737ec5 - winit[2ffc6d7ed835839f]::platform_impl::platform::assert_is_main_thread
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/winit-0.26.1/src/platform_impl/linux/mod.rs:758:9
[INFO] [stdout]   20:     0x6445c9737560 - <winit[2ffc6d7ed835839f]::platform_impl::platform::EventLoop<()>>::new
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/winit-0.26.1/src/platform_impl/linux/mod.rs:572:9
[INFO] [stdout]   21:     0x6445c9767feb - <winit[2ffc6d7ed835839f]::event_loop::EventLoop<()>>::with_user_event
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/winit-0.26.1/src/event_loop.rs:134:25
[INFO] [stdout]   22:     0x6445c9767fbe - <winit[2ffc6d7ed835839f]::event_loop::EventLoop<()>>::new
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/winit-0.26.1/src/event_loop.rs:120:9
[INFO] [stdout]   23:     0x6445c96b18db - <vigilant_lamp[bbff339d02605fd9]::renderers::opengl::OpenGL>::new
[INFO] [stdout]                                at /opt/rustwide/workdir/src/renderers/opengl.rs:14:30
[INFO] [stdout]   24:     0x6445c961f924 - vigilant_lamp[bbff339d02605fd9]::renderers::builder::build_opengl::<vigilant_lamp[bbff339d02605fd9]::engine::camera::PerspectiveCamera>
[INFO] [stdout]                                at /opt/rustwide/workdir/src/renderers/builder.rs:12:20
[INFO] [stdout]   25:     0x6445c9621615 - gl[b8711c90cb40cb51]::tests::main
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/gl.rs:7:18
[INFO] [stdout]   26:     0x6445c9620457 - gl[b8711c90cb40cb51]::tests::main::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/gl.rs:6:14
[INFO] [stdout]   27:     0x6445c96221f6 - <gl[b8711c90cb40cb51]::tests::main::{closure#0} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x6445c962274b - <fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   29:     0x6445c962274b - test[182b2e79ecd7bbd9]::__rust_begin_short_backtrace::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, fn() -> core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:663:18
[INFO] [stdout]   30:     0x6445c962efaa - test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:74
[INFO] [stdout]   31:     0x6445c962efaa - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   32:     0x6445c962efaa - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   33:     0x6445c962efaa - std[3b51380354919863]::panicking::catch_unwind::<core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>, core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   34:     0x6445c962efaa - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<test[182b2e79ecd7bbd9]::run_test_in_process::{closure#0}>, core[27de1724e4349be2]::result::Result<(), alloc[a57f19327c0ad893]::string::String>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   35:     0x6445c962efaa - test[182b2e79ecd7bbd9]::run_test_in_process
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:686:27
[INFO] [stdout]   36:     0x6445c962efaa - test[182b2e79ecd7bbd9]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:607:43
[INFO] [stdout]   37:     0x6445c962a554 - test[182b2e79ecd7bbd9]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/test/src/lib.rs:637:41
[INFO] [stdout]   38:     0x6445c962a554 - std[3b51380354919863]::sys::backtrace::__rust_begin_short_backtrace::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   39:     0x6445c9631aa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   40:     0x6445c9631aa2 - <core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   41:     0x6445c9631aa2 - std[3b51380354919863]::panicking::catch_unwind::do_call::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:581:40
[INFO] [stdout]   42:     0x6445c9631aa2 - std[3b51380354919863]::panicking::catch_unwind::<(), core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panicking.rs:544:19
[INFO] [stdout]   43:     0x6445c9631aa2 - std[3b51380354919863]::panic::catch_unwind::<core[27de1724e4349be2]::panic::unwind_safe::AssertUnwindSafe<std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/panic.rs:359:14
[INFO] [stdout]   44:     0x6445c9631aa2 - std[3b51380354919863]::thread::lifecycle::spawn_unchecked::<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   45:     0x6445c9631aa2 - <std[3b51380354919863]::thread::lifecycle::spawn_unchecked<test[182b2e79ecd7bbd9]::run_test::{closure#1}, ()>::{closure#1} as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   46:     0x6445c99ec61f - <alloc[a57f19327c0ad893]::boxed::Box<dyn core[27de1724e4349be2]::ops::function::FnOnce<(), Output = ()> + core[27de1724e4349be2]::marker::Send> as core[27de1724e4349be2]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   47:     0x6445c99ec61f - <std[3b51380354919863]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0d162b25edd5bf0dba9a22e83b614f1113e90474/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   48:     0x71ca09c40aa4 - <unknown>
[INFO] [stdout]   49:     0x71ca09ccda64 - clone
[INFO] [stdout]   50:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     tests::main
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.12s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--test gl`
[INFO] running `Command { std: "docker" "inspect" "85c4c3223c3305430fba335635542466c46f37f57b8c2e31209b608eb4d78674", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "85c4c3223c3305430fba335635542466c46f37f57b8c2e31209b608eb4d78674", kill_on_drop: false }`
[INFO] [stdout] 85c4c3223c3305430fba335635542466c46f37f57b8c2e31209b608eb4d78674
