[INFO] fetching crate byteplug 0.0.1...
[INFO] checking byteplug-0.0.1 against master#b0696a5160711c068cb1f01b7437db7990d15750 for pr-121848
[INFO] extracting crate byteplug 0.0.1 into /workspace/builds/worker-2-tc1/source
[INFO] validating manifest of crates.io crate byteplug 0.0.1 on toolchain b0696a5160711c068cb1f01b7437db7990d15750
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b0696a5160711c068cb1f01b7437db7990d15750" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate byteplug 0.0.1
[INFO] finished tweaking crates.io crate byteplug 0.0.1
[INFO] tweaked toml for crates.io crate byteplug 0.0.1 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] crate crates.io crate byteplug 0.0.1 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b0696a5160711c068cb1f01b7437db7990d15750" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded smallvec v1.0.0
[INFO] [stderr]   Downloaded net2 v0.2.33
[INFO] [stderr]   Downloaded derivative v2.1.1
[INFO] [stderr]   Downloaded serde v1.0.110
[INFO] [stderr]   Downloaded proc-macro-crate v0.1.4
[INFO] [stderr]   Downloaded winit v0.22.2
[INFO] [stderr]   Downloaded scopeguard v1.0.0
[INFO] [stderr]   Downloaded bitflags v0.9.1
[INFO] [stderr]   Downloaded same-file v1.0.5
[INFO] [stderr]   Downloaded libloading v0.5.2
[INFO] [stderr]   Downloaded autocfg v1.0.0
[INFO] [stderr]   Downloaded memmap v0.7.0
[INFO] [stderr]   Downloaded approx v0.3.2
[INFO] [stderr]   Downloaded xml-rs v0.8.0
[INFO] [stderr]   Downloaded xml-rs v0.6.1
[INFO] [stderr]   Downloaded wayland-sys v0.23.6
[INFO] [stderr]   Downloaded mio v0.6.21
[INFO] [stderr]   Downloaded rusttype v0.7.9
[INFO] [stderr]   Downloaded libc v0.2.66
[INFO] [stderr]   Downloaded smithay-client-toolkit v0.6.6
[INFO] [stderr]   Downloaded nix v0.14.1
[INFO] [stderr]   Downloaded khronos_api v1.0.1
[INFO] [stderr]   Downloaded ndk-sys v0.1.0
[INFO] [stderr]   Downloaded gl_generator v0.5.5
[INFO] [stderr]   Downloaded calloop v0.4.4
[INFO] [stderr]   Downloaded wayland-scanner v0.23.6
[INFO] [stderr]   Downloaded arrayvec v0.5.1
[INFO] [stderr]   Downloaded winapi-util v0.1.2
[INFO] [stderr]   Downloaded andrew v0.2.1
[INFO] [stderr]   Downloaded lazycell v1.2.1
[INFO] [stderr]   Downloaded downcast-rs v1.1.1
[INFO] [stderr]   Downloaded byteorder v1.3.2
[INFO] [stderr]   Downloaded walkdir v2.2.9
[INFO] [stderr]   Downloaded xdg v2.2.0
[INFO] [stderr]   Downloaded pkg-config v0.3.17
[INFO] [stderr]   Downloaded log v0.4.8
[INFO] [stderr]   Downloaded core-graphics v0.19.0
[INFO] [stderr]   Downloaded toml v0.5.6
[INFO] [stderr]   Downloaded glutin_glx_sys v0.1.6
[INFO] [stderr]   Downloaded cc v1.0.48
[INFO] [stderr]   Downloaded unicode-xid v0.2.0
[INFO] [stderr]   Downloaded wayland-client v0.23.6
[INFO] [stderr]   Downloaded num-traits v0.2.11
[INFO] [stderr]   Downloaded ordered-float v1.0.2
[INFO] [stderr]   Downloaded stb_truetype v0.3.1
[INFO] [stderr]   Downloaded wayland-protocols v0.23.6
[INFO] [stderr]   Downloaded lock_api v0.3.2
[INFO] [stderr]   Downloaded dlib v0.4.1
[INFO] [stderr]   Downloaded wayland-commons v0.23.6
[INFO] [stderr]   Downloaded rusttype v0.8.2
[INFO] [stderr]   Downloaded glutin_egl_sys v0.1.4
[INFO] [stderr]   Downloaded glutin_gles2_sys v0.1.4
[INFO] [stderr]   Downloaded glutin_wgl_sys v0.1.4
[INFO] [stderr]   Downloaded glutin v0.24.0
[INFO] [stderr]   Downloaded cocoa v0.20.1
[INFO] [stderr]   Downloaded instant v0.1.2
[INFO] [stderr]   Downloaded proc-macro2 v1.0.17
[INFO] [stderr]   Downloaded quote v1.0.6
[INFO] [stderr]   Downloaded syn v1.0.28
[INFO] [stderr]   Downloaded ndk v0.1.0
[INFO] [stderr]   Downloaded ndk-glue v0.1.0
[INFO] [stderr]   Downloaded redox_syscall v0.1.56
[INFO] [stderr]   Downloaded parking_lot_core v0.7.0
[INFO] [stderr]   Downloaded parking_lot v0.10.0
[INFO] [stderr]   Downloaded line_drawing v0.7.0
[INFO] [stderr]   Downloaded miow 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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b0696a5160711c068cb1f01b7437db7990d15750" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 32a85905ca4ede1130917a4da4cd2715491b35926dd6d7b3c79c3c730bacabf6
[INFO] running `Command { std: "docker" "start" "-a" "32a85905ca4ede1130917a4da4cd2715491b35926dd6d7b3c79c3c730bacabf6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "32a85905ca4ede1130917a4da4cd2715491b35926dd6d7b3c79c3c730bacabf6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "32a85905ca4ede1130917a4da4cd2715491b35926dd6d7b3c79c3c730bacabf6", kill_on_drop: false }`
[INFO] [stdout] 32a85905ca4ede1130917a4da4cd2715491b35926dd6d7b3c79c3c730bacabf6
[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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b0696a5160711c068cb1f01b7437db7990d15750" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 504969a2d31c7c259358db16c8f5aa4d274a37b0cd2e828e3ffab42f36132570
[INFO] running `Command { std: "docker" "start" "-a" "504969a2d31c7c259358db16c8f5aa4d274a37b0cd2e828e3ffab42f36132570", kill_on_drop: false }`
[INFO] [stderr]    Compiling log v0.4.8
[INFO] [stderr]    Compiling libc v0.2.66
[INFO] [stderr]    Compiling xml-rs v0.8.0
[INFO] [stderr]    Compiling proc-macro2 v0.4.30
[INFO] [stderr]    Compiling cfg-if v0.1.10
[INFO] [stderr]    Compiling autocfg v1.0.0
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]    Compiling cc v1.0.48
[INFO] [stderr]    Compiling byteorder v1.3.2
[INFO] [stderr]    Compiling nix v0.14.1
[INFO] [stderr]    Compiling num-traits v0.2.11
[INFO] [stderr]     Checking slab v0.4.2
[INFO] [stderr]     Checking void v1.0.2
[INFO] [stderr]    Compiling gl_generator v0.13.1
[INFO] [stderr]     Checking lazycell v1.2.1
[INFO] [stderr]     Checking stb_truetype v0.3.1
[INFO] [stderr]     Checking arrayvec v0.5.1
[INFO] [stderr]     Checking net2 v0.2.33
[INFO] [stderr]     Checking iovec v0.1.4
[INFO] [stderr]    Compiling quote v0.6.13
[INFO] [stderr]     Checking mio v0.6.21
[INFO] [stderr]    Compiling libloading v0.5.2
[INFO] [stderr]    Compiling wayland-scanner v0.23.6
[INFO] [stderr]    Compiling pkg-config v0.3.17
[INFO] [stderr]     Checking downcast-rs v1.1.1
[INFO] [stderr]     Checking same-file v1.0.5
[INFO] [stderr]     Checking ordered-float v1.0.2
[INFO] [stderr]     Checking approx v0.3.2
[INFO] [stderr]     Checking mio-extras v2.0.6
[INFO] [stderr]     Checking walkdir v2.2.9
[INFO] [stderr]     Checking line_drawing v0.7.0
[INFO] [stderr]     Checking rusttype v0.8.2
[INFO] [stderr]     Checking xdg v2.2.0
[INFO] [stderr]     Checking smallvec v1.0.0
[INFO] [stderr]     Checking dlib v0.4.1
[INFO] [stderr]    Compiling bitflags v0.9.1
[INFO] [stderr]     Checking scopeguard v1.0.0
[INFO] [stderr]     Checking wayland-sys v0.23.6
[INFO] [stderr]    Compiling x11-dl v2.18.5
[INFO] [stderr]     Checking lock_api v0.3.2
[INFO] [stderr]     Checking rusttype v0.7.9
[INFO] [stderr]    Compiling xml-rs v0.6.1
[INFO] [stderr]     Checking parking_lot_core v0.7.0
[INFO] [stderr]    Compiling glutin_glx_sys v0.1.6
[INFO] [stderr]    Compiling glutin_egl_sys v0.1.4
[INFO] [stderr]     Checking memmap v0.7.0
[INFO] [stderr]     Checking andrew v0.2.1
[INFO] [stderr]    Compiling log v0.3.9
[INFO] [stderr]    Compiling khronos_api v1.0.1
[INFO] [stderr]     Checking parking_lot v0.10.0
[INFO] [stderr]    Compiling gl_generator v0.5.5
[INFO] [stderr]     Checking raw-window-handle v0.3.3
[INFO] [stderr]     Checking shared_library v0.1.9
[INFO] [stderr]     Checking instant v0.1.2
[INFO] [stderr]    Compiling wayland-client v0.23.6
[INFO] [stderr]    Compiling wayland-protocols v0.23.6
[INFO] [stderr]     Checking osmesa-sys v0.1.2
[INFO] [stderr]     Checking calloop v0.4.4
[INFO] [stderr]     Checking wayland-commons v0.23.6
[INFO] [stderr]    Compiling byteplug v0.0.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking smithay-client-toolkit v0.6.6
[INFO] [stderr]     Checking winit v0.22.2
[INFO] [stderr]     Checking glutin v0.24.0
[INFO] [stdout] warning: the item `Default` is imported redundantly
[INFO] [stdout]  --> src/image/color.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::default::Default;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/b0696a5160711c068cb1f01b7437db7990d15750/library/std/src/prelude/mod.rs:115:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `Default` is already defined here
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem`
[INFO] [stdout]  --> /opt/rustwide/target/debug/build/byteplug-05e94e9a6c956a8b/out/bindings.rs:3:21
[INFO] [stdout]   |
[INFO] [stdout] 3 |             pub use std::mem;
[INFO] [stdout]   |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Default` is imported redundantly
[INFO] [stdout]  --> src/image/color.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::default::Default;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/b0696a5160711c068cb1f01b7437db7990d15750/library/std/src/prelude/mod.rs:115:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `Default` is already defined here
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::draw::gl`
[INFO] [stdout]   --> src/draw/context.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::draw::gl;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem`
[INFO] [stdout]  --> /opt/rustwide/target/debug/build/byteplug-05e94e9a6c956a8b/out/bindings.rs:3:21
[INFO] [stdout]   |
[INFO] [stdout] 3 |             pub use std::mem;
[INFO] [stdout]   |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `String` is imported redundantly
[INFO] [stdout]  --> src/draw/shader.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::string::String;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/b0696a5160711c068cb1f01b7437db7990d15750/library/std/src/prelude/mod.rs:115:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `String` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `winit` is imported redundantly
[INFO] [stdout]  --> src/application/window.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use winit;
[INFO] [stdout]   |     ^^^^^ the item `winit` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `glutin` is imported redundantly
[INFO] [stdout]   --> src/application/window.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use glutin;
[INFO] [stdout]    |     ^^^^^^ the item `glutin` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `gl`
[INFO] [stdout]   --> src/application/window.rs:14:19
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::draw::{gl, Surface};
[INFO] [stdout]    |                   ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::draw::gl`
[INFO] [stdout]   --> src/draw/context.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::draw::gl;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `String` is imported redundantly
[INFO] [stdout]  --> src/draw/shader.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::string::String;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/b0696a5160711c068cb1f01b7437db7990d15750/library/std/src/prelude/mod.rs:115:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `String` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `winit` is imported redundantly
[INFO] [stdout]  --> src/application/window.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use winit;
[INFO] [stdout]   |     ^^^^^ the item `winit` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `glutin` is imported redundantly
[INFO] [stdout]   --> src/application/window.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use glutin;
[INFO] [stdout]    |     ^^^^^^ the item `glutin` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `gl`
[INFO] [stdout]   --> src/application/window.rs:14:19
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::draw::{gl, Surface};
[INFO] [stdout]    |                   ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]   --> src/draw/context.rs:18:15
[INFO] [stdout]    |
[INFO] [stdout] 18 |         match &CONTEXT {
[INFO] [stdout]    |               ^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout]    = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 18 |         match addr_of!(CONTEXT) {
[INFO] [stdout]    |               ~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]   --> src/draw/context.rs:18:15
[INFO] [stdout]    |
[INFO] [stdout] 18 |         match &CONTEXT {
[INFO] [stdout]    |               ^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout]    = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 18 |         match addr_of!(CONTEXT) {
[INFO] [stdout]    |               ~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]   --> src/draw/default_shader.rs:43:15
[INFO] [stdout]    |
[INFO] [stdout] 43 |         match &DEFAULT_SHADER {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 43 |         match addr_of!(DEFAULT_SHADER) {
[INFO] [stdout]    |               ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]   --> src/application/event_loop.rs:15:15
[INFO] [stdout]    |
[INFO] [stdout] 15 |         match &EVENT_LOOP {
[INFO] [stdout]    |               ^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 15 |         match addr_of!(EVENT_LOOP) {
[INFO] [stdout]    |               ~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]   --> src/draw/default_shader.rs:43:15
[INFO] [stdout]    |
[INFO] [stdout] 43 |         match &DEFAULT_SHADER {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 43 |         match addr_of!(DEFAULT_SHADER) {
[INFO] [stdout]    |               ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]   --> src/application/event_loop.rs:15:15
[INFO] [stdout]    |
[INFO] [stdout] 15 |         match &EVENT_LOOP {
[INFO] [stdout]    |               ^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 15 |         match addr_of!(EVENT_LOOP) {
[INFO] [stdout]    |               ~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::KeyboardInput::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/application/window.rs:207:22
[INFO] [stdout]     |
[INFO] [stdout] 207 |             control: input.modifiers.ctrl(),
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::KeyboardInput::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/application/window.rs:208:20
[INFO] [stdout]     |
[INFO] [stdout] 208 |             shift: input.modifiers.shift(),
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::KeyboardInput::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/application/window.rs:209:24
[INFO] [stdout]     |
[INFO] [stdout] 209 |             alternate: input.modifiers.alt(),
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::KeyboardInput::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/application/window.rs:210:21
[INFO] [stdout]     |
[INFO] [stdout] 210 |             system: input.modifiers.logo()
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::WindowEvent::CursorMoved::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/application/window.rs:358:78
[INFO] [stdout]     |
[INFO] [stdout] 358 |             winit::event::WindowEvent::CursorMoved { device_id: _, position, modifiers } => {
[INFO] [stdout]     |                                                                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::WindowEvent::MouseInput::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/application/window.rs:361:82
[INFO] [stdout]     |
[INFO] [stdout] 361 |             winit::event::WindowEvent::MouseInput { device_id: _, state, button, modifiers }=> {
[INFO] [stdout]     |                                                                                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::WindowEvent::MouseWheel::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/application/window.rs:364:81
[INFO] [stdout]     |
[INFO] [stdout] 364 |             winit::event::WindowEvent::MouseWheel { device_id: _, delta, phase, modifiers } => {
[INFO] [stdout]     |                                                                                 ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::KeyboardInput::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/application/window.rs:207:22
[INFO] [stdout]     |
[INFO] [stdout] 207 |             control: input.modifiers.ctrl(),
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::KeyboardInput::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/application/window.rs:208:20
[INFO] [stdout]     |
[INFO] [stdout] 208 |             shift: input.modifiers.shift(),
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::KeyboardInput::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/application/window.rs:209:24
[INFO] [stdout]     |
[INFO] [stdout] 209 |             alternate: input.modifiers.alt(),
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::KeyboardInput::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/application/window.rs:210:21
[INFO] [stdout]     |
[INFO] [stdout] 210 |             system: input.modifiers.logo()
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::WindowEvent::CursorMoved::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/application/window.rs:358:78
[INFO] [stdout]     |
[INFO] [stdout] 358 |             winit::event::WindowEvent::CursorMoved { device_id: _, position, modifiers } => {
[INFO] [stdout]     |                                                                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::WindowEvent::MouseInput::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/application/window.rs:361:82
[INFO] [stdout]     |
[INFO] [stdout] 361 |             winit::event::WindowEvent::MouseInput { device_id: _, state, button, modifiers }=> {
[INFO] [stdout]     |                                                                                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::WindowEvent::MouseWheel::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/application/window.rs:364:81
[INFO] [stdout]     |
[INFO] [stdout] 364 |             winit::event::WindowEvent::MouseWheel { device_id: _, delta, phase, modifiers } => {
[INFO] [stdout]     |                                                                                 ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `options`
[INFO] [stdout]   --> src/draw/surface.rs:76:28
[INFO] [stdout]    |
[INFO] [stdout] 76 |     pub fn new(size: Size, options: Options) -> Surface {
[INFO] [stdout]    |                            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_options`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `options`
[INFO] [stdout]   --> src/draw/surface.rs:76:28
[INFO] [stdout]    |
[INFO] [stdout] 76 |     pub fn new(size: Size, options: Options) -> Surface {
[INFO] [stdout]    |                            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_options`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/application/window.rs:90:14
[INFO] [stdout]    |
[INFO] [stdout] 90 |         let (mut raw_context, window) = unsafe {
[INFO] [stdout]    |              ----^^^^^^^^^^^
[INFO] [stdout]    |              |
[INFO] [stdout]    |              help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_synthetic`
[INFO] [stdout]    --> src/application/window.rs:203:99
[INFO] [stdout]     |
[INFO] [stdout] 203 |     fn handle_keyboard_input(&mut self, states: &mut States, input: &winit::event::KeyboardInput, is_synthetic: &bool) {
[INFO] [stdout]     |                                                                                                   ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_synthetic`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `states`
[INFO] [stdout]    --> src/application/window.rs:283:27
[INFO] [stdout]     |
[INFO] [stdout] 283 |                           states: &mut States,
[INFO] [stdout]     |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_states`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/application/window.rs:284:27
[INFO] [stdout]     |
[INFO] [stdout] 284 |                           state: &winit::event::ElementState,
[INFO] [stdout]     |                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `button`
[INFO] [stdout]    --> src/application/window.rs:285:27
[INFO] [stdout]     |
[INFO] [stdout] 285 |                           button: &winit::event::MouseButton,
[INFO] [stdout]     |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_button`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `modifiers`
[INFO] [stdout]    --> src/application/window.rs:286:27
[INFO] [stdout]     |
[INFO] [stdout] 286 |                           modifiers: &winit::event::ModifiersState) {
[INFO] [stdout]     |                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_modifiers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/application/window.rs:90:14
[INFO] [stdout]    |
[INFO] [stdout] 90 |         let (mut raw_context, window) = unsafe {
[INFO] [stdout]    |              ----^^^^^^^^^^^
[INFO] [stdout]    |              |
[INFO] [stdout]    |              help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_synthetic`
[INFO] [stdout]    --> src/application/window.rs:203:99
[INFO] [stdout]     |
[INFO] [stdout] 203 |     fn handle_keyboard_input(&mut self, states: &mut States, input: &winit::event::KeyboardInput, is_synthetic: &bool) {
[INFO] [stdout]     |                                                                                                   ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_synthetic`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `states`
[INFO] [stdout]    --> src/application/window.rs:283:27
[INFO] [stdout]     |
[INFO] [stdout] 283 |                           states: &mut States,
[INFO] [stdout]     |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_states`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/application/window.rs:284:27
[INFO] [stdout]     |
[INFO] [stdout] 284 |                           state: &winit::event::ElementState,
[INFO] [stdout]     |                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `button`
[INFO] [stdout]    --> src/application/window.rs:285:27
[INFO] [stdout]     |
[INFO] [stdout] 285 |                           button: &winit::event::MouseButton,
[INFO] [stdout]     |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_button`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `modifiers`
[INFO] [stdout]    --> src/application/window.rs:286:27
[INFO] [stdout]     |
[INFO] [stdout] 286 |                           modifiers: &winit::event::ModifiersState) {
[INFO] [stdout]     |                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_modifiers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `depth_bits`, `stencil_bits`, `antialiasing_level`, `srgb`, `vsync`, and `debug` are never read
[INFO] [stdout]   --> src/draw/options.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 9  | pub struct Options {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 10 |     depth_bits: Option<u32>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 11 |     stencil_bits: Option<u32>,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 12 |     antialiasing_level: Option<u32>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 13 |     srgb: Option<u32>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 14 |     vsync: Option<u32>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 15 |     debug: Option<u32>
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `render_buffer`, `frame_buffer`, and `size` are never read
[INFO] [stdout]   --> src/draw/surface.rs:66:5
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct Surface {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 65 |     context: Option<UnderlyingContext>, // shouldn't be a Option, but the make_current() methods consume themselves
[INFO] [stdout] 66 |     render_buffer: u32, // not used in the case of a window surface
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 67 |     frame_buffer: u32,  // not used in the case of a window surface
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 68 |     size: Size
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `vertex_shader` and `fragment_shader` are never read
[INFO] [stdout]   --> src/draw/shader.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct Shader {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 20 |     vertex_shader: gl::types::GLuint,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 21 |     fragment_shader: gl::types::GLuint,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `DEFAULT_SHADER` is never used
[INFO] [stdout]   --> src/draw/default_shader.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | static mut DEFAULT_SHADER: Option<Shader> = None;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VERTEX_SHADER_SRC` is never used
[INFO] [stdout]   --> src/draw/default_shader.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const VERTEX_SHADER_SRC: &'static [u8] = b"
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FRAGMENT_SHADER_SRC` is never used
[INFO] [stdout]   --> src/draw/default_shader.rs:28:7
[INFO] [stdout]    |
[INFO] [stdout] 28 | const FRAGMENT_SHADER_SRC: &'static [u8] = b"
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ensure_default_shader` is never used
[INFO] [stdout]   --> src/draw/default_shader.rs:40:4
[INFO] [stdout]    |
[INFO] [stdout] 40 | fn ensure_default_shader() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_or_create_default_shader` is never used
[INFO] [stdout]   --> src/draw/default_shader.rs:61:8
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub fn get_or_create_default_shader() -> &'static mut Shader {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pressed_keys` is never read
[INFO] [stdout]    --> src/controller/keyboard.rs:140:5
[INFO] [stdout]     |
[INFO] [stdout] 139 | pub struct Keyboard {
[INFO] [stdout]     |            -------- field in this struct
[INFO] [stdout] 140 |     pressed_keys: HashMap<Key, ()>
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `title` and `window` are never read
[INFO] [stdout]   --> src/application/window.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct Window<States> {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 47 |     title: String,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     window: winit::window::Window,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `depth_bits`, `stencil_bits`, `antialiasing_level`, `srgb`, `vsync`, and `debug` are never read
[INFO] [stdout]   --> src/draw/options.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 9  | pub struct Options {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 10 |     depth_bits: Option<u32>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 11 |     stencil_bits: Option<u32>,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 12 |     antialiasing_level: Option<u32>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 13 |     srgb: Option<u32>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 14 |     vsync: Option<u32>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 15 |     debug: Option<u32>
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `render_buffer`, `frame_buffer`, and `size` are never read
[INFO] [stdout]   --> src/draw/surface.rs:66:5
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct Surface {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 65 |     context: Option<UnderlyingContext>, // shouldn't be a Option, but the make_current() methods consume themselves
[INFO] [stdout] 66 |     render_buffer: u32, // not used in the case of a window surface
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 67 |     frame_buffer: u32,  // not used in the case of a window surface
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 68 |     size: Size
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `vertex_shader` and `fragment_shader` are never read
[INFO] [stdout]   --> src/draw/shader.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct Shader {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 20 |     vertex_shader: gl::types::GLuint,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 21 |     fragment_shader: gl::types::GLuint,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `DEFAULT_SHADER` is never used
[INFO] [stdout]   --> src/draw/default_shader.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | static mut DEFAULT_SHADER: Option<Shader> = None;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VERTEX_SHADER_SRC` is never used
[INFO] [stdout]   --> src/draw/default_shader.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const VERTEX_SHADER_SRC: &'static [u8] = b"
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FRAGMENT_SHADER_SRC` is never used
[INFO] [stdout]   --> src/draw/default_shader.rs:28:7
[INFO] [stdout]    |
[INFO] [stdout] 28 | const FRAGMENT_SHADER_SRC: &'static [u8] = b"
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ensure_default_shader` is never used
[INFO] [stdout]   --> src/draw/default_shader.rs:40:4
[INFO] [stdout]    |
[INFO] [stdout] 40 | fn ensure_default_shader() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_or_create_default_shader` is never used
[INFO] [stdout]   --> src/draw/default_shader.rs:61:8
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub fn get_or_create_default_shader() -> &'static mut Shader {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pressed_keys` is never read
[INFO] [stdout]    --> src/controller/keyboard.rs:140:5
[INFO] [stdout]     |
[INFO] [stdout] 139 | pub struct Keyboard {
[INFO] [stdout]     |            -------- field in this struct
[INFO] [stdout] 140 |     pressed_keys: HashMap<Key, ()>
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `title` and `window` are never read
[INFO] [stdout]   --> src/application/window.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct Window<States> {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 47 |     title: String,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     window: winit::window::Window,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 34 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 34 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 10.56s
[INFO] running `Command { std: "docker" "inspect" "504969a2d31c7c259358db16c8f5aa4d274a37b0cd2e828e3ffab42f36132570", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "504969a2d31c7c259358db16c8f5aa4d274a37b0cd2e828e3ffab42f36132570", kill_on_drop: false }`
[INFO] [stdout] 504969a2d31c7c259358db16c8f5aa4d274a37b0cd2e828e3ffab42f36132570
[INFO] checking byteplug-0.0.1 against try#bfe97fcae016881ad333f0ff8cea2cadb9cf136c for pr-121848
[INFO] extracting crate byteplug 0.0.1 into /workspace/builds/worker-2-tc2/source
[INFO] validating manifest of crates.io crate byteplug 0.0.1 on toolchain bfe97fcae016881ad333f0ff8cea2cadb9cf136c
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bfe97fcae016881ad333f0ff8cea2cadb9cf136c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate byteplug 0.0.1
[INFO] finished tweaking crates.io crate byteplug 0.0.1
[INFO] tweaked toml for crates.io crate byteplug 0.0.1 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] crate crates.io crate byteplug 0.0.1 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bfe97fcae016881ad333f0ff8cea2cadb9cf136c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+bfe97fcae016881ad333f0ff8cea2cadb9cf136c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 1616667fdd1fe57e7a55d702997a8f16b803703b69124481ba35ca0551766072
[INFO] running `Command { std: "docker" "start" "-a" "1616667fdd1fe57e7a55d702997a8f16b803703b69124481ba35ca0551766072", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1616667fdd1fe57e7a55d702997a8f16b803703b69124481ba35ca0551766072", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1616667fdd1fe57e7a55d702997a8f16b803703b69124481ba35ca0551766072", kill_on_drop: false }`
[INFO] [stdout] 1616667fdd1fe57e7a55d702997a8f16b803703b69124481ba35ca0551766072
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+bfe97fcae016881ad333f0ff8cea2cadb9cf136c" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d1142ceaa6f30afe66b2215d89208cfb42c84b8eabb3133d10f9e3d51eae1abd
[INFO] running `Command { std: "docker" "start" "-a" "d1142ceaa6f30afe66b2215d89208cfb42c84b8eabb3133d10f9e3d51eae1abd", kill_on_drop: false }`
[INFO] [stderr]    Compiling log v0.4.8
[INFO] [stderr]    Compiling libc v0.2.66
[INFO] [stderr]    Compiling xml-rs v0.8.0
[INFO] [stderr]    Compiling cfg-if v0.1.10
[INFO] [stderr]    Compiling proc-macro2 v0.4.30
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]    Compiling autocfg v1.0.0
[INFO] [stderr]    Compiling cc v1.0.48
[INFO] [stderr]    Compiling byteorder v1.3.2
[INFO] [stderr]    Compiling nix v0.14.1
[INFO] [stderr]     Checking void v1.0.2
[INFO] [stderr]    Compiling num-traits v0.2.11
[INFO] [stderr]     Checking slab v0.4.2
[INFO] [stderr]    Compiling gl_generator v0.13.1
[INFO] [stderr]     Checking lazycell v1.2.1
[INFO] [stderr]     Checking stb_truetype v0.3.1
[INFO] [stderr]    Compiling pkg-config v0.3.17
[INFO] [stderr]    Compiling quote v0.6.13
[INFO] [stderr]    Compiling wayland-scanner v0.23.6
[INFO] [stderr]     Checking iovec v0.1.4
[INFO] [stderr]     Checking net2 v0.2.33
[INFO] [stderr]    Compiling libloading v0.5.2
[INFO] [stderr]     Checking arrayvec v0.5.1
[INFO] [stderr]     Checking mio v0.6.21
[INFO] [stderr]    Compiling x11-dl v2.18.5
[INFO] [stderr]     Checking downcast-rs v1.1.1
[INFO] [stderr]     Checking same-file v1.0.5
[INFO] [stderr]     Checking walkdir v2.2.9
[INFO] [stderr]     Checking ordered-float v1.0.2
[INFO] [stderr]     Checking approx v0.3.2
[INFO] [stderr]     Checking dlib v0.4.1
[INFO] [stderr]     Checking line_drawing v0.7.0
[INFO] [stderr]     Checking wayland-sys v0.23.6
[INFO] [stderr]     Checking rusttype v0.8.2
[INFO] [stderr]     Checking mio-extras v2.0.6
[INFO] [stderr]     Checking smallvec v1.0.0
[INFO] [stderr]     Checking scopeguard v1.0.0
[INFO] [stderr]     Checking xdg v2.2.0
[INFO] [stderr]    Compiling bitflags v0.9.1
[INFO] [stderr]     Checking lock_api v0.3.2
[INFO] [stderr]     Checking parking_lot_core v0.7.0
[INFO] [stderr]    Compiling glutin_glx_sys v0.1.6
[INFO] [stderr]     Checking rusttype v0.7.9
[INFO] [stderr]    Compiling xml-rs v0.6.1
[INFO] [stderr]    Compiling glutin_egl_sys v0.1.4
[INFO] [stderr]     Checking andrew v0.2.1
[INFO] [stderr]     Checking memmap v0.7.0
[INFO] [stderr]    Compiling log v0.3.9
[INFO] [stderr]    Compiling khronos_api v1.0.1
[INFO] [stderr]     Checking parking_lot v0.10.0
[INFO] [stderr]     Checking raw-window-handle v0.3.3
[INFO] [stderr]     Checking shared_library v0.1.9
[INFO] [stderr]    Compiling gl_generator v0.5.5
[INFO] [stderr]     Checking instant v0.1.2
[INFO] [stderr]     Checking osmesa-sys v0.1.2
[INFO] [stderr]    Compiling wayland-client v0.23.6
[INFO] [stderr]    Compiling wayland-protocols v0.23.6
[INFO] [stderr]    Compiling byteplug v0.0.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking calloop v0.4.4
[INFO] [stderr]     Checking wayland-commons v0.23.6
[INFO] [stderr]     Checking smithay-client-toolkit v0.6.6
[INFO] [stderr]     Checking winit v0.22.2
[INFO] [stderr]     Checking glutin v0.24.0
[INFO] [stdout] warning: the item `Default` is imported redundantly
[INFO] [stdout]  --> src/image/color.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::default::Default;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/bfe97fcae016881ad333f0ff8cea2cadb9cf136c/library/std/src/prelude/mod.rs:115:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `Default` is already defined here
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem`
[INFO] [stdout]  --> /opt/rustwide/target/debug/build/byteplug-05e94e9a6c956a8b/out/bindings.rs:3:21
[INFO] [stdout]   |
[INFO] [stdout] 3 |             pub use std::mem;
[INFO] [stdout]   |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Default` is imported redundantly
[INFO] [stdout]  --> src/image/color.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::default::Default;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/bfe97fcae016881ad333f0ff8cea2cadb9cf136c/library/std/src/prelude/mod.rs:115:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `Default` is already defined here
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::draw::gl`
[INFO] [stdout]   --> src/draw/context.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::draw::gl;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem`
[INFO] [stdout]  --> /opt/rustwide/target/debug/build/byteplug-05e94e9a6c956a8b/out/bindings.rs:3:21
[INFO] [stdout]   |
[INFO] [stdout] 3 |             pub use std::mem;
[INFO] [stdout]   |                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `String` is imported redundantly
[INFO] [stdout]  --> src/draw/shader.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::string::String;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/bfe97fcae016881ad333f0ff8cea2cadb9cf136c/library/std/src/prelude/mod.rs:115:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `String` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `winit` is imported redundantly
[INFO] [stdout]  --> src/application/window.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use winit;
[INFO] [stdout]   |     ^^^^^ the item `winit` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `glutin` is imported redundantly
[INFO] [stdout]   --> src/application/window.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use glutin;
[INFO] [stdout]    |     ^^^^^^ the item `glutin` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `gl`
[INFO] [stdout]   --> src/application/window.rs:14:19
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::draw::{gl, Surface};
[INFO] [stdout]    |                   ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::draw::gl`
[INFO] [stdout]   --> src/draw/context.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::draw::gl;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `String` is imported redundantly
[INFO] [stdout]  --> src/draw/shader.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::string::String;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/bfe97fcae016881ad333f0ff8cea2cadb9cf136c/library/std/src/prelude/mod.rs:115:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `String` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `winit` is imported redundantly
[INFO] [stdout]  --> src/application/window.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use winit;
[INFO] [stdout]   |     ^^^^^ the item `winit` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `glutin` is imported redundantly
[INFO] [stdout]   --> src/application/window.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use glutin;
[INFO] [stdout]    |     ^^^^^^ the item `glutin` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `gl`
[INFO] [stdout]   --> src/application/window.rs:14:19
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::draw::{gl, Surface};
[INFO] [stdout]    |                   ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]   --> src/draw/context.rs:18:15
[INFO] [stdout]    |
[INFO] [stdout] 18 |         match &CONTEXT {
[INFO] [stdout]    |               ^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout]    = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 18 |         match addr_of!(CONTEXT) {
[INFO] [stdout]    |               ~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]   --> src/draw/default_shader.rs:43:15
[INFO] [stdout]    |
[INFO] [stdout] 43 |         match &DEFAULT_SHADER {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 43 |         match addr_of!(DEFAULT_SHADER) {
[INFO] [stdout]    |               ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]   --> src/application/event_loop.rs:15:15
[INFO] [stdout]    |
[INFO] [stdout] 15 |         match &EVENT_LOOP {
[INFO] [stdout]    |               ^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 15 |         match addr_of!(EVENT_LOOP) {
[INFO] [stdout]    |               ~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]   --> src/draw/context.rs:18:15
[INFO] [stdout]    |
[INFO] [stdout] 18 |         match &CONTEXT {
[INFO] [stdout]    |               ^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout]    = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 18 |         match addr_of!(CONTEXT) {
[INFO] [stdout]    |               ~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::KeyboardInput::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/application/window.rs:207:22
[INFO] [stdout]     |
[INFO] [stdout] 207 |             control: input.modifiers.ctrl(),
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::KeyboardInput::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/application/window.rs:208:20
[INFO] [stdout]     |
[INFO] [stdout] 208 |             shift: input.modifiers.shift(),
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::KeyboardInput::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/application/window.rs:209:24
[INFO] [stdout]     |
[INFO] [stdout] 209 |             alternate: input.modifiers.alt(),
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]   --> src/draw/default_shader.rs:43:15
[INFO] [stdout]    |
[INFO] [stdout] 43 |         match &DEFAULT_SHADER {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 43 |         match addr_of!(DEFAULT_SHADER) {
[INFO] [stdout]    |               ~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]   --> src/application/event_loop.rs:15:15
[INFO] [stdout]    |
[INFO] [stdout] 15 |         match &EVENT_LOOP {
[INFO] [stdout]    |               ^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 15 |         match addr_of!(EVENT_LOOP) {
[INFO] [stdout]    |               ~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::KeyboardInput::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/application/window.rs:210:21
[INFO] [stdout]     |
[INFO] [stdout] 210 |             system: input.modifiers.logo()
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::WindowEvent::CursorMoved::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/application/window.rs:358:78
[INFO] [stdout]     |
[INFO] [stdout] 358 |             winit::event::WindowEvent::CursorMoved { device_id: _, position, modifiers } => {
[INFO] [stdout]     |                                                                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::WindowEvent::MouseInput::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/application/window.rs:361:82
[INFO] [stdout]     |
[INFO] [stdout] 361 |             winit::event::WindowEvent::MouseInput { device_id: _, state, button, modifiers }=> {
[INFO] [stdout]     |                                                                                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::WindowEvent::MouseWheel::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/application/window.rs:364:81
[INFO] [stdout]     |
[INFO] [stdout] 364 |             winit::event::WindowEvent::MouseWheel { device_id: _, delta, phase, modifiers } => {
[INFO] [stdout]     |                                                                                 ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::KeyboardInput::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/application/window.rs:207:22
[INFO] [stdout]     |
[INFO] [stdout] 207 |             control: input.modifiers.ctrl(),
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::KeyboardInput::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/application/window.rs:208:20
[INFO] [stdout]     |
[INFO] [stdout] 208 |             shift: input.modifiers.shift(),
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::KeyboardInput::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/application/window.rs:209:24
[INFO] [stdout]     |
[INFO] [stdout] 209 |             alternate: input.modifiers.alt(),
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::KeyboardInput::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/application/window.rs:210:21
[INFO] [stdout]     |
[INFO] [stdout] 210 |             system: input.modifiers.logo()
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::WindowEvent::CursorMoved::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/application/window.rs:358:78
[INFO] [stdout]     |
[INFO] [stdout] 358 |             winit::event::WindowEvent::CursorMoved { device_id: _, position, modifiers } => {
[INFO] [stdout]     |                                                                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::WindowEvent::MouseInput::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/application/window.rs:361:82
[INFO] [stdout]     |
[INFO] [stdout] 361 |             winit::event::WindowEvent::MouseInput { device_id: _, state, button, modifiers }=> {
[INFO] [stdout]     |                                                                                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::WindowEvent::MouseWheel::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/application/window.rs:364:81
[INFO] [stdout]     |
[INFO] [stdout] 364 |             winit::event::WindowEvent::MouseWheel { device_id: _, delta, phase, modifiers } => {
[INFO] [stdout]     |                                                                                 ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `options`
[INFO] [stdout]   --> src/draw/surface.rs:76:28
[INFO] [stdout]    |
[INFO] [stdout] 76 |     pub fn new(size: Size, options: Options) -> Surface {
[INFO] [stdout]    |                            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_options`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `options`
[INFO] [stdout]   --> src/draw/surface.rs:76:28
[INFO] [stdout]    |
[INFO] [stdout] 76 |     pub fn new(size: Size, options: Options) -> Surface {
[INFO] [stdout]    |                            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_options`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/application/window.rs:90:14
[INFO] [stdout]    |
[INFO] [stdout] 90 |         let (mut raw_context, window) = unsafe {
[INFO] [stdout]    |              ----^^^^^^^^^^^
[INFO] [stdout]    |              |
[INFO] [stdout]    |              help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_synthetic`
[INFO] [stdout]    --> src/application/window.rs:203:99
[INFO] [stdout]     |
[INFO] [stdout] 203 |     fn handle_keyboard_input(&mut self, states: &mut States, input: &winit::event::KeyboardInput, is_synthetic: &bool) {
[INFO] [stdout]     |                                                                                                   ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_synthetic`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `states`
[INFO] [stdout]    --> src/application/window.rs:283:27
[INFO] [stdout]     |
[INFO] [stdout] 283 |                           states: &mut States,
[INFO] [stdout]     |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_states`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/application/window.rs:284:27
[INFO] [stdout]     |
[INFO] [stdout] 284 |                           state: &winit::event::ElementState,
[INFO] [stdout]     |                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/application/window.rs:90:14
[INFO] [stdout]    |
[INFO] [stdout] 90 |         let (mut raw_context, window) = unsafe {
[INFO] [stdout]    |              ----^^^^^^^^^^^
[INFO] [stdout]    |              |
[INFO] [stdout]    |              help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `button`
[INFO] [stdout]    --> src/application/window.rs:285:27
[INFO] [stdout]     |
[INFO] [stdout] 285 |                           button: &winit::event::MouseButton,
[INFO] [stdout]     |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_button`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `modifiers`
[INFO] [stdout]    --> src/application/window.rs:286:27
[INFO] [stdout]     |
[INFO] [stdout] 286 |                           modifiers: &winit::event::ModifiersState) {
[INFO] [stdout]     |                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_modifiers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_synthetic`
[INFO] [stdout]    --> src/application/window.rs:203:99
[INFO] [stdout]     |
[INFO] [stdout] 203 |     fn handle_keyboard_input(&mut self, states: &mut States, input: &winit::event::KeyboardInput, is_synthetic: &bool) {
[INFO] [stdout]     |                                                                                                   ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_synthetic`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `states`
[INFO] [stdout]    --> src/application/window.rs:283:27
[INFO] [stdout]     |
[INFO] [stdout] 283 |                           states: &mut States,
[INFO] [stdout]     |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_states`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/application/window.rs:284:27
[INFO] [stdout]     |
[INFO] [stdout] 284 |                           state: &winit::event::ElementState,
[INFO] [stdout]     |                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `button`
[INFO] [stdout]    --> src/application/window.rs:285:27
[INFO] [stdout]     |
[INFO] [stdout] 285 |                           button: &winit::event::MouseButton,
[INFO] [stdout]     |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_button`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `modifiers`
[INFO] [stdout]    --> src/application/window.rs:286:27
[INFO] [stdout]     |
[INFO] [stdout] 286 |                           modifiers: &winit::event::ModifiersState) {
[INFO] [stdout]     |                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_modifiers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `depth_bits`, `stencil_bits`, `antialiasing_level`, `srgb`, `vsync`, and `debug` are never read
[INFO] [stdout]   --> src/draw/options.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 9  | pub struct Options {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 10 |     depth_bits: Option<u32>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 11 |     stencil_bits: Option<u32>,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 12 |     antialiasing_level: Option<u32>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 13 |     srgb: Option<u32>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 14 |     vsync: Option<u32>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 15 |     debug: Option<u32>
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `render_buffer`, `frame_buffer`, and `size` are never read
[INFO] [stdout]   --> src/draw/surface.rs:66:5
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct Surface {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 65 |     context: Option<UnderlyingContext>, // shouldn't be a Option, but the make_current() methods consume themselves
[INFO] [stdout] 66 |     render_buffer: u32, // not used in the case of a window surface
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 67 |     frame_buffer: u32,  // not used in the case of a window surface
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 68 |     size: Size
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `vertex_shader` and `fragment_shader` are never read
[INFO] [stdout]   --> src/draw/shader.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct Shader {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 20 |     vertex_shader: gl::types::GLuint,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 21 |     fragment_shader: gl::types::GLuint,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `DEFAULT_SHADER` is never used
[INFO] [stdout]   --> src/draw/default_shader.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | static mut DEFAULT_SHADER: Option<Shader> = None;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VERTEX_SHADER_SRC` is never used
[INFO] [stdout]   --> src/draw/default_shader.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const VERTEX_SHADER_SRC: &'static [u8] = b"
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FRAGMENT_SHADER_SRC` is never used
[INFO] [stdout]   --> src/draw/default_shader.rs:28:7
[INFO] [stdout]    |
[INFO] [stdout] 28 | const FRAGMENT_SHADER_SRC: &'static [u8] = b"
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `depth_bits`, `stencil_bits`, `antialiasing_level`, `srgb`, `vsync`, and `debug` are never read
[INFO] [stdout]   --> src/draw/options.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 9  | pub struct Options {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 10 |     depth_bits: Option<u32>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 11 |     stencil_bits: Option<u32>,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 12 |     antialiasing_level: Option<u32>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 13 |     srgb: Option<u32>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 14 |     vsync: Option<u32>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 15 |     debug: Option<u32>
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ensure_default_shader` is never used
[INFO] [stdout]   --> src/draw/default_shader.rs:40:4
[INFO] [stdout]    |
[INFO] [stdout] 40 | fn ensure_default_shader() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_or_create_default_shader` is never used
[INFO] [stdout]   --> src/draw/default_shader.rs:61:8
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub fn get_or_create_default_shader() -> &'static mut Shader {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `render_buffer`, `frame_buffer`, and `size` are never read
[INFO] [stdout]   --> src/draw/surface.rs:66:5
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct Surface {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 65 |     context: Option<UnderlyingContext>, // shouldn't be a Option, but the make_current() methods consume themselves
[INFO] [stdout] 66 |     render_buffer: u32, // not used in the case of a window surface
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 67 |     frame_buffer: u32,  // not used in the case of a window surface
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 68 |     size: Size
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pressed_keys` is never read
[INFO] [stdout]    --> src/controller/keyboard.rs:140:5
[INFO] [stdout]     |
[INFO] [stdout] 139 | pub struct Keyboard {
[INFO] [stdout]     |            -------- field in this struct
[INFO] [stdout] 140 |     pressed_keys: HashMap<Key, ()>
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `vertex_shader` and `fragment_shader` are never read
[INFO] [stdout]   --> src/draw/shader.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct Shader {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 20 |     vertex_shader: gl::types::GLuint,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 21 |     fragment_shader: gl::types::GLuint,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `DEFAULT_SHADER` is never used
[INFO] [stdout]   --> src/draw/default_shader.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | static mut DEFAULT_SHADER: Option<Shader> = None;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `title` and `window` are never read
[INFO] [stdout]   --> src/application/window.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct Window<States> {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 47 |     title: String,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     window: winit::window::Window,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VERTEX_SHADER_SRC` is never used
[INFO] [stdout]   --> src/draw/default_shader.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const VERTEX_SHADER_SRC: &'static [u8] = b"
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FRAGMENT_SHADER_SRC` is never used
[INFO] [stdout]   --> src/draw/default_shader.rs:28:7
[INFO] [stdout]    |
[INFO] [stdout] 28 | const FRAGMENT_SHADER_SRC: &'static [u8] = b"
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ensure_default_shader` is never used
[INFO] [stdout]   --> src/draw/default_shader.rs:40:4
[INFO] [stdout]    |
[INFO] [stdout] 40 | fn ensure_default_shader() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_or_create_default_shader` is never used
[INFO] [stdout]   --> src/draw/default_shader.rs:61:8
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub fn get_or_create_default_shader() -> &'static mut Shader {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pressed_keys` is never read
[INFO] [stdout]    --> src/controller/keyboard.rs:140:5
[INFO] [stdout]     |
[INFO] [stdout] 139 | pub struct Keyboard {
[INFO] [stdout]     |            -------- field in this struct
[INFO] [stdout] 140 |     pressed_keys: HashMap<Key, ()>
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `title` and `window` are never read
[INFO] [stdout]   --> src/application/window.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct Window<States> {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 47 |     title: String,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     window: winit::window::Window,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 34 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 34 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 13.84s
[INFO] running `Command { std: "docker" "inspect" "d1142ceaa6f30afe66b2215d89208cfb42c84b8eabb3133d10f9e3d51eae1abd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d1142ceaa6f30afe66b2215d89208cfb42c84b8eabb3133d10f9e3d51eae1abd", kill_on_drop: false }`
[INFO] [stdout] d1142ceaa6f30afe66b2215d89208cfb42c84b8eabb3133d10f9e3d51eae1abd
