[INFO] cloning repository https://github.com/ToothlessBrush/LearnRust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ToothlessBrush/LearnRust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FToothlessBrush%2FLearnRust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FToothlessBrush%2FLearnRust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 4a6a7a0afe39e63129f273c4e2de7f7fcbb5d8e0
[INFO] testing ToothlessBrush/LearnRust against nightly-2025-01-18+rustflags=-Zrandomize-layout for randomize-layout-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FToothlessBrush%2FLearnRust" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/ToothlessBrush/LearnRust on toolchain nightly-2025-01-18
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2025-01-18" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/ToothlessBrush/LearnRust
[INFO] finished tweaking git repo https://github.com/ToothlessBrush/LearnRust
[INFO] tweaked toml for git repo https://github.com/ToothlessBrush/LearnRust written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/ToothlessBrush/LearnRust 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" "+nightly-2025-01-18" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:819108c5571ea2e421544af4d832f968d213c87fbe3707a016657f43d2f853bc" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2025-01-18" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] b45fd6d4dbbadca19939902be8f8ad945ebdc6af7ff6379ea2fd750d24b6e032
[INFO] running `Command { std: "docker" "start" "-a" "b45fd6d4dbbadca19939902be8f8ad945ebdc6af7ff6379ea2fd750d24b6e032", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b45fd6d4dbbadca19939902be8f8ad945ebdc6af7ff6379ea2fd750d24b6e032", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b45fd6d4dbbadca19939902be8f8ad945ebdc6af7ff6379ea2fd750d24b6e032", kill_on_drop: false }`
[INFO] [stdout] b45fd6d4dbbadca19939902be8f8ad945ebdc6af7ff6379ea2fd750d24b6e032
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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 -Zrandomize-layout" "-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:819108c5571ea2e421544af4d832f968d213c87fbe3707a016657f43d2f853bc" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2025-01-18" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6ba348bbc4b11651b16bc305129dd6077d6cba0cff9dee010acc8efef4196fe3
[INFO] running `Command { std: "docker" "start" "-a" "6ba348bbc4b11651b16bc305129dd6077d6cba0cff9dee010acc8efef4196fe3", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.4.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.92
[INFO] [stderr]    Compiling unicode-ident v1.0.14
[INFO] [stderr]    Compiling libc v0.2.169
[INFO] [stderr]    Compiling xml-rs v0.8.24
[INFO] [stderr]    Compiling once_cell v1.20.2
[INFO] [stderr]    Compiling smallvec v1.13.2
[INFO] [stderr]    Compiling shlex v1.3.0
[INFO] [stderr]    Compiling pkg-config v0.3.31
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling khronos_api v3.1.0
[INFO] [stderr]    Compiling bytemuck v1.21.0
[INFO] [stderr]    Compiling log v0.4.22
[INFO] [stderr]    Compiling version_check v0.9.5
[INFO] [stderr]    Compiling rustix v0.38.42
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling simd-adler32 v0.3.7
[INFO] [stderr]    Compiling cc v1.2.7
[INFO] [stderr]    Compiling hashbrown v0.15.2
[INFO] [stderr]    Compiling equivalent v1.0.1
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling adler2 v2.0.0
[INFO] [stderr]    Compiling fixedbitset v0.4.2
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling bitflags v2.6.0
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling paste v1.0.15
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]    Compiling linux-raw-sys v0.4.14
[INFO] [stderr]    Compiling memoffset v0.6.5
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling serde v1.0.217
[INFO] [stderr]    Compiling downcast-rs v1.2.1
[INFO] [stderr]    Compiling ttf-parser v0.25.1
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling matrixmultiply v0.3.9
[INFO] [stderr]    Compiling safe_arch v0.7.4
[INFO] [stderr]    Compiling wayland-sys v0.29.5
[INFO] [stderr]    Compiling miniz_oxide v0.8.2
[INFO] [stderr]    Compiling crc32fast v1.4.2
[INFO] [stderr]    Compiling fastrand v2.3.0
[INFO] [stderr]    Compiling emath v0.29.1
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling zerocopy v0.7.35
[INFO] [stderr]    Compiling serde_json v1.0.134
[INFO] [stderr]    Compiling typenum v1.17.0
[INFO] [stderr]    Compiling ab_glyph_rasterizer v0.1.8
[INFO] [stderr]    Compiling quote v1.0.38
[INFO] [stderr]    Compiling indexmap v2.7.0
[INFO] [stderr]    Compiling gl_generator v0.14.0
[INFO] [stderr]    Compiling ecolor v0.29.1
[INFO] [stderr]    Compiling wide v0.7.30
[INFO] [stderr]    Compiling wayland-scanner v0.29.5
[INFO] [stderr]    Compiling syn v2.0.94
[INFO] [stderr]    Compiling cmake v0.1.52
[INFO] [stderr]    Compiling flate2 v1.0.35
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling approx v0.5.1
[INFO] [stderr]    Compiling nix v0.24.3
[INFO] [stderr]    Compiling petgraph v0.6.5
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]    Compiling gethostname v0.2.3
[INFO] [stderr]    Compiling os_pipe v1.2.1
[INFO] [stderr]    Compiling gl v0.14.0
[INFO] [stderr]    Compiling glfw-sys v5.0.0+3.3.9
[INFO] [stderr]    Compiling parking_lot v0.12.3
[INFO] [stderr]    Compiling fdeflate v0.3.7
[INFO] [stderr]    Compiling epaint_default_fonts v0.29.1
[INFO] [stderr]    Compiling wayland-client v0.29.5
[INFO] [stderr]    Compiling wayland-protocols v0.29.5
[INFO] [stderr]    Compiling rawpointer v0.2.1
[INFO] [stderr]    Compiling itoa v1.0.14
[INFO] [stderr]    Compiling ryu v1.0.18
[INFO] [stderr]    Compiling inflections v1.1.1
[INFO] [stderr]    Compiling zune-core v0.4.12
[INFO] [stderr]    Compiling nohash-hasher v0.2.0
[INFO] [stderr]    Compiling png v0.17.16
[INFO] [stderr]    Compiling zune-jpeg v0.4.14
[INFO] [stderr]    Compiling tempfile v3.15.0
[INFO] [stderr]    Compiling owned_ttf_parser v0.25.0
[INFO] [stderr]    Compiling ab_glyph v0.2.29
[INFO] [stderr]    Compiling simba v0.8.1
[INFO] [stderr]    Compiling stb_image v0.3.0
[INFO] [stderr]    Compiling num-rational v0.4.2
[INFO] [stderr]    Compiling epaint v0.29.1
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling tree_magic_mini v3.1.6
[INFO] [stderr]    Compiling raw-window-handle v0.6.2
[INFO] [stderr]    Compiling derive-new v0.5.9
[INFO] [stderr]    Compiling byteorder-lite v0.1.0
[INFO] [stderr]    Compiling base64 v0.13.1
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling urlencoding v2.1.3
[INFO] [stderr]    Compiling quaturn v0.1.3 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling colored v2.2.0
[INFO] [stderr]    Compiling dyn-clone v1.0.17
[INFO] [stderr]    Compiling image v0.25.5
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling serde_derive v1.0.217
[INFO] [stderr]    Compiling gltf-derive v1.4.1
[INFO] [stderr]    Compiling egui v0.29.1
[INFO] [stderr]    Compiling wayland-commons v0.29.5
[INFO] [stderr]    Compiling x11rb-protocol v0.10.0
[INFO] [stderr]    Compiling glfw v0.59.0
[INFO] [stderr]    Compiling gltf-json v1.4.1
[INFO] [stderr]    Compiling nalgebra v0.32.6
[INFO] [stderr]    Compiling gltf v1.4.1
[INFO] [stderr]    Compiling x11rb v0.10.1
[INFO] [stderr]    Compiling x11-clipboard v0.7.1
[INFO] [stderr]    Compiling nalgebra-glm v0.18.0
[INFO] [stderr]    Compiling wl-clipboard-rs v0.7.0
[INFO] [stderr]    Compiling cli-clipboard v0.4.0
[INFO] [stderr]    Compiling egui_gl_glfw v0.1.8
[INFO] [stdout] warning: unused import: `DirectionalLight`
[INFO] [stdout]   --> src/lib.rs:11:30
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::nodes::{Camera3D, DirectionalLight, Model, PointLight, UI};
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mat4`
[INFO] [stdout]   --> src/nodes/model.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | use glm::{Mat4, Vec3};
[INFO] [stdout]    |           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::default`
[INFO] [stdout]  --> src/nodes/node_builder.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::default;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mat4`
[INFO] [stdout]   --> src/context/node_manager.rs:75:33
[INFO] [stdout]    |
[INFO] [stdout] 75 | use nalgebra_glm::{self as glm, Mat4};
[INFO] [stdout]    |                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `egui_gl_glfw::egui::Context::begin_frame`: Renamed begin_pass
[INFO] [stdout]    --> src/nodes/ui.rs:119:22
[INFO] [stdout]     |
[INFO] [stdout] 119 |             self.ctx.begin_frame(input.input.take());
[INFO] [stdout]     |                      ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `egui_gl_glfw::egui::Context::end_frame`: Renamed end_pass
[INFO] [stdout]    --> src/nodes/ui.rs:152:22
[INFO] [stdout]     |
[INFO] [stdout] 152 |         } = self.ctx.end_frame();
[INFO] [stdout]     |                      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `collect_models` is never used
[INFO] [stdout]    --> src/lib.rs:318:4
[INFO] [stdout]     |
[INFO] [stdout] 318 | fn collect_models<T>(node: &mut dyn Node, models: &mut Vec<T>)
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `collect_lights` is never used
[INFO] [stdout]    --> src/lib.rs:334:4
[INFO] [stdout]     |
[INFO] [stdout] 334 | fn collect_lights<T>(node: &mut dyn Node, lights: &mut Vec<T>)
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `strength` is never read
[INFO] [stdout]   --> src/nodes/point_light.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct PointLight {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 24 |     strength: u32,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PointLight` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Modes` is never used
[INFO] [stdout]  --> src/utils/debug.rs:1:6
[INFO] [stdout]   |
[INFO] [stdout] 1 | enum Modes {
[INFO] [stdout]   |      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/lib.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub mod components;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:2:9
[INFO] [stdout]    |
[INFO] [stdout] 2  | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/lib.rs:20:1
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub mod utils;
[INFO] [stdout]    | ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/lib.rs:94:5
[INFO] [stdout]    |
[INFO] [stdout] 94 |     pub fn set_window_title(&mut self, title: &str) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/nodes/mod.rs:18:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub mod point_light;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/nodes/mod.rs:20:1
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub mod node_builder;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/nodes/model.rs:470:5
[INFO] [stdout]     |
[INFO] [stdout] 470 |     pub fn casts_shadows(&mut self, cast_shadow: bool) -> &mut Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/nodes/model.rs:475:5
[INFO] [stdout]     |
[INFO] [stdout] 475 |     pub fn has_lighting(&mut self, lighting: bool) -> &mut Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/nodes/model.rs:480:5
[INFO] [stdout]     |
[INFO] [stdout] 480 |     pub fn set_material(&mut self, material: MaterialProperties) -> &mut Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/nodes/point_light.rs:15:1
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct PointLight {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/nodes/point_light.rs:86:5
[INFO] [stdout]    |
[INFO] [stdout] 86 | /     pub fn new(
[INFO] [stdout] 87 | |         transform: NodeTransform,
[INFO] [stdout] 88 | |         strength: u32,
[INFO] [stdout] 89 | |         near_plane: f32,
[INFO] [stdout] 90 | |         far_plane: f32,
[INFO] [stdout] 91 | |         shadow_resoultion: u32,
[INFO] [stdout] 92 | |     ) -> PointLight {
[INFO] [stdout]    | |___________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/nodes/point_light.rs:164:5
[INFO] [stdout]     |
[INFO] [stdout] 164 |     pub fn bind_uniforms(&mut self, shader: &mut Shader) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/nodes/point_light.rs:172:5
[INFO] [stdout]     |
[INFO] [stdout] 172 |     pub fn render_shadow_map(&mut self, models: &mut [&mut Model]) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/nodes/ui.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 109 |     pub fn update(&mut self, context: &mut GameContext) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/nodes/ui.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 126 | /     pub fn define_ui<F>(&mut self, ui_window: F) -> &mut UI
[INFO] [stdout] 127 | |     where
[INFO] [stdout] 128 | |         F: FnMut(&egui::Context, &mut GameContext) + 'static,
[INFO] [stdout]     | |_____________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/nodes/ui.rs:135:5
[INFO] [stdout]     |
[INFO] [stdout] 135 |     pub fn render(&mut self, context: &mut GameContext) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/nodes/node_builder.rs:7:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct NodeBuilder<T: Node> {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/nodes/node_builder.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub fn new(node: T) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/nodes/node_builder.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub fn with_transform(&mut self, transform: NodeTransform) -> &mut Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/nodes/node_builder.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub fn add_child<U: Node + 'static>(&mut self, name: &str, node: U) -> &mut Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/nodes/node_builder.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn build(&mut self) -> T {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/components/node_transform.rs:89:5
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub fn get_position_mut(&mut self) -> &mut Vec3 {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/components/node_transform.rs:114:5
[INFO] [stdout]     |
[INFO] [stdout] 114 |     pub fn get_rotation_mut(&mut self) -> &mut glm::Quat {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/components/node_transform.rs:163:5
[INFO] [stdout]     |
[INFO] [stdout] 163 |     pub fn get_scale_mut(&mut self) -> &mut Vec3 {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/components/mesh.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub enum AlphaMode {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/components/mesh.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     Opaque,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/components/mesh.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 |     Mask,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/components/mesh.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     Blend,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/components/mesh.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub center: glm::Vec3,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/components/mesh.rs:224:5
[INFO] [stdout]     |
[INFO] [stdout] 224 |     pub fn set_material(&mut self, material_properties: MaterialProperties) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a type alias
[INFO] [stdout]    --> src/context/node_manager.rs:132:1
[INFO] [stdout]     |
[INFO] [stdout] 132 | pub type ReadyCallback<T> = Option<Arc<Mutex<dyn FnMut(&mut T) + Send + Sync>>>;
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a type alias
[INFO] [stdout]    --> src/context/node_manager.rs:186:1
[INFO] [stdout]     |
[INFO] [stdout] 186 | pub type BehaviorCallback<T, U> = Option<Arc<Mutex<dyn FnMut(&mut T, &mut U) + Send + Sync>>>;
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/renderer/mod.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub mod depth_cube_map;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/renderer/depth_cube_map.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct DepthCubeMap {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/renderer/depth_cube_map.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn gen_map(width: u32, height: u32, shader: Shader) -> DepthCubeMap {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/renderer/depth_cube_map.rs:90:5
[INFO] [stdout]    |
[INFO] [stdout] 90 |     pub fn bind(&self) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/renderer/depth_cube_map.rs:96:5
[INFO] [stdout]    |
[INFO] [stdout] 96 |     pub fn bind_shadow_map(&mut self, shader: &mut Shader, uniform: &str, slot: u32) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/renderer/depth_cube_map.rs:106:5
[INFO] [stdout]     |
[INFO] [stdout] 106 |     pub fn unbind(&self) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/renderer/depth_cube_map.rs:112:5
[INFO] [stdout]     |
[INFO] [stdout] 112 |     pub fn get_texture(&self) -> u32 {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/renderer/depth_cube_map.rs:116:5
[INFO] [stdout]     |
[INFO] [stdout] 116 |     pub fn render_shadow_map(&mut self, render_function: &mut dyn FnMut(&mut Shader)) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]  --> src/renderer/shader.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub enum Uniforms {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]  --> src/renderer/shader.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     ModelMatrix,
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]  --> src/renderer/shader.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     ViewMatrix,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]  --> src/renderer/shader.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     ProjectionMatrix,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]  --> src/renderer/shader.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     LightPosition,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/renderer/shader.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     LightColor,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/renderer/shader.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     LightIntensity,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/renderer/shader.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     EyePosition,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/renderer/shader.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     MaterialColor,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/renderer/shader.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     MaterialSpecularColor,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/renderer/shader.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     MaterialShininess,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/renderer/shader.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub fn get_uniform_name(&self) -> String {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/utils/mod.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub mod debug;
[INFO] [stdout]   | ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/utils/mod.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub mod color;
[INFO] [stdout]   | ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/utils/debug.rs:6:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Debug {}
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]  --> src/utils/debug.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub fn print(message: &str) {
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/utils/color.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Color {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/utils/color.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     pub r: f32,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/utils/color.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     pub g: f32,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/utils/color.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub b: f32,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/utils/color.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub a: f32,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/utils/color.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn from_8bit_rgba(r: u32, g: u32, b: u32, a: u32) -> Result<Color, String> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/utils/color.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub fn from_8bit_rgb(r: u32, g: u32, b: u32) -> Result<Color, String> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/utils/color.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 |     pub fn from_normalized(r: f32, g: f32, b: f32, a: f32) -> Result<Color, String> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/utils/color.rs:49:5
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub fn from_hex(hex: &str) -> Result<Color, String> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 57s
[INFO] running `Command { std: "docker" "inspect" "6ba348bbc4b11651b16bc305129dd6077d6cba0cff9dee010acc8efef4196fe3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6ba348bbc4b11651b16bc305129dd6077d6cba0cff9dee010acc8efef4196fe3", kill_on_drop: false }`
[INFO] [stdout] 6ba348bbc4b11651b16bc305129dd6077d6cba0cff9dee010acc8efef4196fe3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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 -Zrandomize-layout" "-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:819108c5571ea2e421544af4d832f968d213c87fbe3707a016657f43d2f853bc" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2025-01-18" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3b30c7934f59174671a6b5625145178375e82c223795bf9c9fc2f7535727ab79
[INFO] running `Command { std: "docker" "start" "-a" "3b30c7934f59174671a6b5625145178375e82c223795bf9c9fc2f7535727ab79", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `DirectionalLight`
[INFO] [stdout]   --> src/lib.rs:11:30
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::nodes::{Camera3D, DirectionalLight, Model, PointLight, UI};
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mat4`
[INFO] [stdout]   --> src/nodes/model.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | use glm::{Mat4, Vec3};
[INFO] [stdout]    |           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::default`
[INFO] [stdout]  --> src/nodes/node_builder.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::default;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mat4`
[INFO] [stdout]   --> src/context/node_manager.rs:75:33
[INFO] [stdout]    |
[INFO] [stdout] 75 | use nalgebra_glm::{self as glm, Mat4};
[INFO] [stdout]    |                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `egui_gl_glfw::egui::Context::begin_frame`: Renamed begin_pass
[INFO] [stdout]    --> src/nodes/ui.rs:119:22
[INFO] [stdout]     |
[INFO] [stdout] 119 |             self.ctx.begin_frame(input.input.take());
[INFO] [stdout]     |                      ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `egui_gl_glfw::egui::Context::end_frame`: Renamed end_pass
[INFO] [stdout]    --> src/nodes/ui.rs:152:22
[INFO] [stdout]     |
[INFO] [stdout] 152 |         } = self.ctx.end_frame();
[INFO] [stdout]     |                      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `collect_models` is never used
[INFO] [stdout]    --> src/lib.rs:318:4
[INFO] [stdout]     |
[INFO] [stdout] 318 | fn collect_models<T>(node: &mut dyn Node, models: &mut Vec<T>)
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `collect_lights` is never used
[INFO] [stdout]    --> src/lib.rs:334:4
[INFO] [stdout]     |
[INFO] [stdout] 334 | fn collect_lights<T>(node: &mut dyn Node, lights: &mut Vec<T>)
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `strength` is never read
[INFO] [stdout]   --> src/nodes/point_light.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct PointLight {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 24 |     strength: u32,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PointLight` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Modes` is never used
[INFO] [stdout]  --> src/utils/debug.rs:1:6
[INFO] [stdout]   |
[INFO] [stdout] 1 | enum Modes {
[INFO] [stdout]   |      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/lib.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub mod components;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:2:9
[INFO] [stdout]    |
[INFO] [stdout] 2  | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/lib.rs:20:1
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub mod utils;
[INFO] [stdout]    | ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/lib.rs:94:5
[INFO] [stdout]    |
[INFO] [stdout] 94 |     pub fn set_window_title(&mut self, title: &str) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/nodes/mod.rs:18:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub mod point_light;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/nodes/mod.rs:20:1
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub mod node_builder;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/nodes/model.rs:470:5
[INFO] [stdout]     |
[INFO] [stdout] 470 |     pub fn casts_shadows(&mut self, cast_shadow: bool) -> &mut Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/nodes/model.rs:475:5
[INFO] [stdout]     |
[INFO] [stdout] 475 |     pub fn has_lighting(&mut self, lighting: bool) -> &mut Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/nodes/model.rs:480:5
[INFO] [stdout]     |
[INFO] [stdout] 480 |     pub fn set_material(&mut self, material: MaterialProperties) -> &mut Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/nodes/point_light.rs:15:1
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct PointLight {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/nodes/point_light.rs:86:5
[INFO] [stdout]    |
[INFO] [stdout] 86 | /     pub fn new(
[INFO] [stdout] 87 | |         transform: NodeTransform,
[INFO] [stdout] 88 | |         strength: u32,
[INFO] [stdout] 89 | |         near_plane: f32,
[INFO] [stdout] 90 | |         far_plane: f32,
[INFO] [stdout] 91 | |         shadow_resoultion: u32,
[INFO] [stdout] 92 | |     ) -> PointLight {
[INFO] [stdout]    | |___________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/nodes/point_light.rs:164:5
[INFO] [stdout]     |
[INFO] [stdout] 164 |     pub fn bind_uniforms(&mut self, shader: &mut Shader) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/nodes/point_light.rs:172:5
[INFO] [stdout]     |
[INFO] [stdout] 172 |     pub fn render_shadow_map(&mut self, models: &mut [&mut Model]) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/nodes/ui.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 109 |     pub fn update(&mut self, context: &mut GameContext) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/nodes/ui.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 126 | /     pub fn define_ui<F>(&mut self, ui_window: F) -> &mut UI
[INFO] [stdout] 127 | |     where
[INFO] [stdout] 128 | |         F: FnMut(&egui::Context, &mut GameContext) + 'static,
[INFO] [stdout]     | |_____________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/nodes/ui.rs:135:5
[INFO] [stdout]     |
[INFO] [stdout] 135 |     pub fn render(&mut self, context: &mut GameContext) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/nodes/node_builder.rs:7:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct NodeBuilder<T: Node> {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/nodes/node_builder.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub fn new(node: T) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/nodes/node_builder.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub fn with_transform(&mut self, transform: NodeTransform) -> &mut Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/nodes/node_builder.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub fn add_child<U: Node + 'static>(&mut self, name: &str, node: U) -> &mut Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/nodes/node_builder.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn build(&mut self) -> T {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/components/node_transform.rs:89:5
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub fn get_position_mut(&mut self) -> &mut Vec3 {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/components/node_transform.rs:114:5
[INFO] [stdout]     |
[INFO] [stdout] 114 |     pub fn get_rotation_mut(&mut self) -> &mut glm::Quat {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/components/node_transform.rs:163:5
[INFO] [stdout]     |
[INFO] [stdout] 163 |     pub fn get_scale_mut(&mut self) -> &mut Vec3 {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/components/mesh.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub enum AlphaMode {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/components/mesh.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     Opaque,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/components/mesh.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 |     Mask,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/components/mesh.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     Blend,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/components/mesh.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub center: glm::Vec3,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/components/mesh.rs:224:5
[INFO] [stdout]     |
[INFO] [stdout] 224 |     pub fn set_material(&mut self, material_properties: MaterialProperties) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a type alias
[INFO] [stdout]    --> src/context/node_manager.rs:132:1
[INFO] [stdout]     |
[INFO] [stdout] 132 | pub type ReadyCallback<T> = Option<Arc<Mutex<dyn FnMut(&mut T) + Send + Sync>>>;
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a type alias
[INFO] [stdout]    --> src/context/node_manager.rs:186:1
[INFO] [stdout]     |
[INFO] [stdout] 186 | pub type BehaviorCallback<T, U> = Option<Arc<Mutex<dyn FnMut(&mut T, &mut U) + Send + Sync>>>;
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/renderer/mod.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub mod depth_cube_map;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/renderer/depth_cube_map.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct DepthCubeMap {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/renderer/depth_cube_map.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn gen_map(width: u32, height: u32, shader: Shader) -> DepthCubeMap {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/renderer/depth_cube_map.rs:90:5
[INFO] [stdout]    |
[INFO] [stdout] 90 |     pub fn bind(&self) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/renderer/depth_cube_map.rs:96:5
[INFO] [stdout]    |
[INFO] [stdout] 96 |     pub fn bind_shadow_map(&mut self, shader: &mut Shader, uniform: &str, slot: u32) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/renderer/depth_cube_map.rs:106:5
[INFO] [stdout]     |
[INFO] [stdout] 106 |     pub fn unbind(&self) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/renderer/depth_cube_map.rs:112:5
[INFO] [stdout]     |
[INFO] [stdout] 112 |     pub fn get_texture(&self) -> u32 {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/renderer/depth_cube_map.rs:116:5
[INFO] [stdout]     |
[INFO] [stdout] 116 |     pub fn render_shadow_map(&mut self, render_function: &mut dyn FnMut(&mut Shader)) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]  --> src/renderer/shader.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub enum Uniforms {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]  --> src/renderer/shader.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     ModelMatrix,
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]  --> src/renderer/shader.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     ViewMatrix,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]  --> src/renderer/shader.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     ProjectionMatrix,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]  --> src/renderer/shader.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     LightPosition,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/renderer/shader.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     LightColor,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/renderer/shader.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     LightIntensity,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/renderer/shader.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     EyePosition,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/renderer/shader.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     MaterialColor,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/renderer/shader.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     MaterialSpecularColor,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/renderer/shader.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     MaterialShininess,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/renderer/shader.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub fn get_uniform_name(&self) -> String {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/utils/mod.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub mod debug;
[INFO] [stdout]   | ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/utils/mod.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub mod color;
[INFO] [stdout]   | ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/utils/debug.rs:6:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Debug {}
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]  --> src/utils/debug.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub fn print(message: &str) {
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/utils/color.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Color {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/utils/color.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     pub r: f32,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/utils/color.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     pub g: f32,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/utils/color.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub b: f32,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/utils/color.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub a: f32,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/utils/color.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn from_8bit_rgba(r: u32, g: u32, b: u32, a: u32) -> Result<Color, String> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/utils/color.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub fn from_8bit_rgb(r: u32, g: u32, b: u32) -> Result<Color, String> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/utils/color.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 |     pub fn from_normalized(r: f32, g: f32, b: f32, a: f32) -> Result<Color, String> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/utils/color.rs:49:5
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub fn from_hex(hex: &str) -> Result<Color, String> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling quaturn v0.1.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `default`
[INFO] [stdout]  --> examples/example.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{default, time::Duration};
[INFO] [stdout]   |           ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> examples/example.rs:3:38
[INFO] [stdout]   |
[INFO] [stdout] 3 | use quaturn::context::node_manager::{self};
[INFO] [stdout]   |                                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Behavior` and `Ready`
[INFO] [stdout]   --> examples/example.rs:11:38
[INFO] [stdout]    |
[INFO] [stdout] 11 | use quaturn::context::node_manager::{Behavior, Node, NodeManager, Ready, Transformable};
[INFO] [stdout]    |                                      ^^^^^^^^                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DirectionalLight`
[INFO] [stdout]   --> src/lib.rs:11:30
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::nodes::{Camera3D, DirectionalLight, Model, PointLight, UI};
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mat4`
[INFO] [stdout]   --> src/nodes/model.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | use glm::{Mat4, Vec3};
[INFO] [stdout]    |           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::default`
[INFO] [stdout]  --> src/nodes/node_builder.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::default;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mat4`
[INFO] [stdout]   --> src/context/node_manager.rs:75:33
[INFO] [stdout]    |
[INFO] [stdout] 75 | use nalgebra_glm::{self as glm, Mat4};
[INFO] [stdout]    |                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `egui_gl_glfw::egui::Context::begin_frame`: Renamed begin_pass
[INFO] [stdout]    --> src/nodes/ui.rs:119:22
[INFO] [stdout]     |
[INFO] [stdout] 119 |             self.ctx.begin_frame(input.input.take());
[INFO] [stdout]     |                      ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `egui_gl_glfw::egui::Context::end_frame`: Renamed end_pass
[INFO] [stdout]    --> src/nodes/ui.rs:152:22
[INFO] [stdout]     |
[INFO] [stdout] 152 |         } = self.ctx.end_frame();
[INFO] [stdout]     |                      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `collect_models` is never used
[INFO] [stdout]    --> src/lib.rs:318:4
[INFO] [stdout]     |
[INFO] [stdout] 318 | fn collect_models<T>(node: &mut dyn Node, models: &mut Vec<T>)
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `collect_lights` is never used
[INFO] [stdout]    --> src/lib.rs:334:4
[INFO] [stdout]     |
[INFO] [stdout] 334 | fn collect_lights<T>(node: &mut dyn Node, lights: &mut Vec<T>)
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `strength` is never read
[INFO] [stdout]   --> src/nodes/point_light.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct PointLight {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 24 |     strength: u32,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PointLight` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Modes` is never used
[INFO] [stdout]  --> src/utils/debug.rs:1:6
[INFO] [stdout]   |
[INFO] [stdout] 1 | enum Modes {
[INFO] [stdout]   |      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/lib.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub mod components;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:2:9
[INFO] [stdout]    |
[INFO] [stdout] 2  | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/lib.rs:20:1
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub mod utils;
[INFO] [stdout]    | ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/lib.rs:94:5
[INFO] [stdout]    |
[INFO] [stdout] 94 |     pub fn set_window_title(&mut self, title: &str) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/nodes/mod.rs:18:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub mod point_light;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/nodes/mod.rs:20:1
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub mod node_builder;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/nodes/model.rs:470:5
[INFO] [stdout]     |
[INFO] [stdout] 470 |     pub fn casts_shadows(&mut self, cast_shadow: bool) -> &mut Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/nodes/model.rs:475:5
[INFO] [stdout]     |
[INFO] [stdout] 475 |     pub fn has_lighting(&mut self, lighting: bool) -> &mut Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/nodes/model.rs:480:5
[INFO] [stdout]     |
[INFO] [stdout] 480 |     pub fn set_material(&mut self, material: MaterialProperties) -> &mut Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]   --> src/nodes/point_light.rs:15:1
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct PointLight {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/nodes/point_light.rs:86:5
[INFO] [stdout]    |
[INFO] [stdout] 86 | /     pub fn new(
[INFO] [stdout] 87 | |         transform: NodeTransform,
[INFO] [stdout] 88 | |         strength: u32,
[INFO] [stdout] 89 | |         near_plane: f32,
[INFO] [stdout] 90 | |         far_plane: f32,
[INFO] [stdout] 91 | |         shadow_resoultion: u32,
[INFO] [stdout] 92 | |     ) -> PointLight {
[INFO] [stdout]    | |___________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/nodes/point_light.rs:164:5
[INFO] [stdout]     |
[INFO] [stdout] 164 |     pub fn bind_uniforms(&mut self, shader: &mut Shader) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/nodes/point_light.rs:172:5
[INFO] [stdout]     |
[INFO] [stdout] 172 |     pub fn render_shadow_map(&mut self, models: &mut [&mut Model]) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/nodes/ui.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 109 |     pub fn update(&mut self, context: &mut GameContext) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/nodes/ui.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 126 | /     pub fn define_ui<F>(&mut self, ui_window: F) -> &mut UI
[INFO] [stdout] 127 | |     where
[INFO] [stdout] 128 | |         F: FnMut(&egui::Context, &mut GameContext) + 'static,
[INFO] [stdout]     | |_____________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/nodes/ui.rs:135:5
[INFO] [stdout]     |
[INFO] [stdout] 135 |     pub fn render(&mut self, context: &mut GameContext) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/nodes/node_builder.rs:7:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct NodeBuilder<T: Node> {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/nodes/node_builder.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub fn new(node: T) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/nodes/node_builder.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub fn with_transform(&mut self, transform: NodeTransform) -> &mut Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/nodes/node_builder.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub fn add_child<U: Node + 'static>(&mut self, name: &str, node: U) -> &mut Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/nodes/node_builder.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn build(&mut self) -> T {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/components/node_transform.rs:89:5
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub fn get_position_mut(&mut self) -> &mut Vec3 {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/components/node_transform.rs:114:5
[INFO] [stdout]     |
[INFO] [stdout] 114 |     pub fn get_rotation_mut(&mut self) -> &mut glm::Quat {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/components/node_transform.rs:163:5
[INFO] [stdout]     |
[INFO] [stdout] 163 |     pub fn get_scale_mut(&mut self) -> &mut Vec3 {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]   --> src/components/mesh.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub enum AlphaMode {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/components/mesh.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     Opaque,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/components/mesh.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 |     Mask,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/components/mesh.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     Blend,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]    --> src/components/mesh.rs:158:5
[INFO] [stdout]     |
[INFO] [stdout] 158 |     pub center: glm::Vec3,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/components/mesh.rs:224:5
[INFO] [stdout]     |
[INFO] [stdout] 224 |     pub fn set_material(&mut self, material_properties: MaterialProperties) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a type alias
[INFO] [stdout]    --> src/context/node_manager.rs:132:1
[INFO] [stdout]     |
[INFO] [stdout] 132 | pub type ReadyCallback<T> = Option<Arc<Mutex<dyn FnMut(&mut T) + Send + Sync>>>;
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a type alias
[INFO] [stdout]    --> src/context/node_manager.rs:186:1
[INFO] [stdout]     |
[INFO] [stdout] 186 | pub type BehaviorCallback<T, U> = Option<Arc<Mutex<dyn FnMut(&mut T, &mut U) + Send + Sync>>>;
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/renderer/mod.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub mod depth_cube_map;
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/renderer/depth_cube_map.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct DepthCubeMap {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/renderer/depth_cube_map.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn gen_map(width: u32, height: u32, shader: Shader) -> DepthCubeMap {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/renderer/depth_cube_map.rs:90:5
[INFO] [stdout]    |
[INFO] [stdout] 90 |     pub fn bind(&self) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/renderer/depth_cube_map.rs:96:5
[INFO] [stdout]    |
[INFO] [stdout] 96 |     pub fn bind_shadow_map(&mut self, shader: &mut Shader, uniform: &str, slot: u32) {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/renderer/depth_cube_map.rs:106:5
[INFO] [stdout]     |
[INFO] [stdout] 106 |     pub fn unbind(&self) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/renderer/depth_cube_map.rs:112:5
[INFO] [stdout]     |
[INFO] [stdout] 112 |     pub fn get_texture(&self) -> u32 {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]    --> src/renderer/depth_cube_map.rs:116:5
[INFO] [stdout]     |
[INFO] [stdout] 116 |     pub fn render_shadow_map(&mut self, render_function: &mut dyn FnMut(&mut Shader)) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an enum
[INFO] [stdout]  --> src/renderer/shader.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub enum Uniforms {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]  --> src/renderer/shader.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     ModelMatrix,
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]  --> src/renderer/shader.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     ViewMatrix,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]  --> src/renderer/shader.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     ProjectionMatrix,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]  --> src/renderer/shader.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     LightPosition,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/renderer/shader.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     LightColor,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/renderer/shader.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     LightIntensity,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/renderer/shader.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     EyePosition,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/renderer/shader.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     MaterialColor,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/renderer/shader.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     MaterialSpecularColor,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a variant
[INFO] [stdout]   --> src/renderer/shader.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     MaterialShininess,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/renderer/shader.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub fn get_uniform_name(&self) -> String {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/utils/mod.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub mod debug;
[INFO] [stdout]   | ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]  --> src/utils/mod.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub mod color;
[INFO] [stdout]   | ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/utils/debug.rs:6:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Debug {}
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]  --> src/utils/debug.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub fn print(message: &str) {
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct
[INFO] [stdout]  --> src/utils/color.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Color {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/utils/color.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     pub r: f32,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/utils/color.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     pub g: f32,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/utils/color.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub b: f32,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a struct field
[INFO] [stdout]  --> src/utils/color.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub a: f32,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/utils/color.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn from_8bit_rgba(r: u32, g: u32, b: u32, a: u32) -> Result<Color, String> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/utils/color.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub fn from_8bit_rgb(r: u32, g: u32, b: u32) -> Result<Color, String> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/utils/color.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 |     pub fn from_normalized(r: f32, g: f32, b: f32, a: f32) -> Result<Color, String> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for an associated function
[INFO] [stdout]   --> src/utils/color.rs:49:5
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub fn from_hex(hex: &str) -> Result<Color, String> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2.15s
[INFO] running `Command { std: "docker" "inspect" "3b30c7934f59174671a6b5625145178375e82c223795bf9c9fc2f7535727ab79", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3b30c7934f59174671a6b5625145178375e82c223795bf9c9fc2f7535727ab79", kill_on_drop: false }`
[INFO] [stdout] 3b30c7934f59174671a6b5625145178375e82c223795bf9c9fc2f7535727ab79
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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 -Zrandomize-layout" "-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:819108c5571ea2e421544af4d832f968d213c87fbe3707a016657f43d2f853bc" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2025-01-18" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] e612396a60f7af94420f90b42b25a46f9219a123df7450249d2706210c64bbe2
[INFO] running `Command { std: "docker" "start" "-a" "e612396a60f7af94420f90b42b25a46f9219a123df7450249d2706210c64bbe2", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `DirectionalLight`
[INFO] [stderr]   --> src/lib.rs:11:30
[INFO] [stderr]    |
[INFO] [stderr] 11 | use crate::nodes::{Camera3D, DirectionalLight, Model, PointLight, UI};
[INFO] [stderr]    |                              ^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Mat4`
[INFO] [stderr]   --> src/nodes/model.rs:24:11
[INFO] [stderr]    |
[INFO] [stderr] 24 | use glm::{Mat4, Vec3};
[INFO] [stderr]    |           ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::default`
[INFO] [stderr]  --> src/nodes/node_builder.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::default;
[INFO] [stderr]   |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Mat4`
[INFO] [stderr]   --> src/context/node_manager.rs:75:33
[INFO] [stderr]    |
[INFO] [stderr] 75 | use nalgebra_glm::{self as glm, Mat4};
[INFO] [stderr]    |                                 ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `egui_gl_glfw::egui::Context::begin_frame`: Renamed begin_pass
[INFO] [stderr]    --> src/nodes/ui.rs:119:22
[INFO] [stderr]     |
[INFO] [stderr] 119 |             self.ctx.begin_frame(input.input.take());
[INFO] [stderr]     |                      ^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `egui_gl_glfw::egui::Context::end_frame`: Renamed end_pass
[INFO] [stderr]    --> src/nodes/ui.rs:152:22
[INFO] [stderr]     |
[INFO] [stderr] 152 |         } = self.ctx.end_frame();
[INFO] [stderr]     |                      ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `collect_models` is never used
[INFO] [stderr]    --> src/lib.rs:318:4
[INFO] [stderr]     |
[INFO] [stderr] 318 | fn collect_models<T>(node: &mut dyn Node, models: &mut Vec<T>)
[INFO] [stderr]     |    ^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `collect_lights` is never used
[INFO] [stderr]    --> src/lib.rs:334:4
[INFO] [stderr]     |
[INFO] [stderr] 334 | fn collect_lights<T>(node: &mut dyn Node, lights: &mut Vec<T>)
[INFO] [stderr]     |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `strength` is never read
[INFO] [stderr]   --> src/nodes/point_light.rs:24:5
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub struct PointLight {
[INFO] [stderr]    |            ---------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 24 |     strength: u32,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `PointLight` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: enum `Modes` is never used
[INFO] [stderr]  --> src/utils/debug.rs:1:6
[INFO] [stderr]   |
[INFO] [stderr] 1 | enum Modes {
[INFO] [stderr]   |      ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a module
[INFO] [stderr]   --> src/lib.rs:17:1
[INFO] [stderr]    |
[INFO] [stderr] 17 | pub mod components;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]   --> src/lib.rs:2:9
[INFO] [stderr]    |
[INFO] [stderr] 2  | #![warn(missing_docs)]
[INFO] [stderr]    |         ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a module
[INFO] [stderr]   --> src/lib.rs:20:1
[INFO] [stderr]    |
[INFO] [stderr] 20 | pub mod utils;
[INFO] [stderr]    | ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/lib.rs:94:5
[INFO] [stderr]    |
[INFO] [stderr] 94 |     pub fn set_window_title(&mut self, title: &str) {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a module
[INFO] [stderr]   --> src/nodes/mod.rs:18:1
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub mod point_light;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a module
[INFO] [stderr]   --> src/nodes/mod.rs:20:1
[INFO] [stderr]    |
[INFO] [stderr] 20 | pub mod node_builder;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]    --> src/nodes/model.rs:470:5
[INFO] [stderr]     |
[INFO] [stderr] 470 |     pub fn casts_shadows(&mut self, cast_shadow: bool) -> &mut Self {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]    --> src/nodes/model.rs:475:5
[INFO] [stderr]     |
[INFO] [stderr] 475 |     pub fn has_lighting(&mut self, lighting: bool) -> &mut Self {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]    --> src/nodes/model.rs:480:5
[INFO] [stderr]     |
[INFO] [stderr] 480 |     pub fn set_material(&mut self, material: MaterialProperties) -> &mut Self {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct
[INFO] [stderr]   --> src/nodes/point_light.rs:15:1
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub struct PointLight {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an associated function
[INFO] [stderr]   --> src/nodes/point_light.rs:86:5
[INFO] [stderr]    |
[INFO] [stderr] 86 | /     pub fn new(
[INFO] [stderr] 87 | |         transform: NodeTransform,
[INFO] [stderr] 88 | |         strength: u32,
[INFO] [stderr] 89 | |         near_plane: f32,
[INFO] [stderr] 90 | |         far_plane: f32,
[INFO] [stderr] 91 | |         shadow_resoultion: u32,
[INFO] [stderr] 92 | |     ) -> PointLight {
[INFO] [stderr]    | |___________________^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]    --> src/nodes/point_light.rs:164:5
[INFO] [stderr]     |
[INFO] [stderr] 164 |     pub fn bind_uniforms(&mut self, shader: &mut Shader) {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]    --> src/nodes/point_light.rs:172:5
[INFO] [stderr]     |
[INFO] [stderr] 172 |     pub fn render_shadow_map(&mut self, models: &mut [&mut Model]) {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]    --> src/nodes/ui.rs:109:5
[INFO] [stderr]     |
[INFO] [stderr] 109 |     pub fn update(&mut self, context: &mut GameContext) {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]    --> src/nodes/ui.rs:126:5
[INFO] [stderr]     |
[INFO] [stderr] 126 | /     pub fn define_ui<F>(&mut self, ui_window: F) -> &mut UI
[INFO] [stderr] 127 | |     where
[INFO] [stderr] 128 | |         F: FnMut(&egui::Context, &mut GameContext) + 'static,
[INFO] [stderr]     | |_____________________________________________________________^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]    --> src/nodes/ui.rs:135:5
[INFO] [stderr]     |
[INFO] [stderr] 135 |     pub fn render(&mut self, context: &mut GameContext) {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct
[INFO] [stderr]  --> src/nodes/node_builder.rs:7:1
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub struct NodeBuilder<T: Node> {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an associated function
[INFO] [stderr]   --> src/nodes/node_builder.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr] 14 |     pub fn new(node: T) -> Self {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/nodes/node_builder.rs:22:5
[INFO] [stderr]    |
[INFO] [stderr] 22 |     pub fn with_transform(&mut self, transform: NodeTransform) -> &mut Self {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/nodes/node_builder.rs:27:5
[INFO] [stderr]    |
[INFO] [stderr] 27 |     pub fn add_child<U: Node + 'static>(&mut self, name: &str, node: U) -> &mut Self {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/nodes/node_builder.rs:32:5
[INFO] [stderr]    |
[INFO] [stderr] 32 |     pub fn build(&mut self) -> T {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/components/node_transform.rs:89:5
[INFO] [stderr]    |
[INFO] [stderr] 89 |     pub fn get_position_mut(&mut self) -> &mut Vec3 {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]    --> src/components/node_transform.rs:114:5
[INFO] [stderr]     |
[INFO] [stderr] 114 |     pub fn get_rotation_mut(&mut self) -> &mut glm::Quat {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]    --> src/components/node_transform.rs:163:5
[INFO] [stderr]     |
[INFO] [stderr] 163 |     pub fn get_scale_mut(&mut self) -> &mut Vec3 {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an enum
[INFO] [stderr]   --> src/components/mesh.rs:22:1
[INFO] [stderr]    |
[INFO] [stderr] 22 | pub enum AlphaMode {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/components/mesh.rs:23:5
[INFO] [stderr]    |
[INFO] [stderr] 23 |     Opaque,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/components/mesh.rs:24:5
[INFO] [stderr]    |
[INFO] [stderr] 24 |     Mask,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/components/mesh.rs:25:5
[INFO] [stderr]    |
[INFO] [stderr] 25 |     Blend,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]    --> src/components/mesh.rs:158:5
[INFO] [stderr]     |
[INFO] [stderr] 158 |     pub center: glm::Vec3,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]    --> src/components/mesh.rs:224:5
[INFO] [stderr]     |
[INFO] [stderr] 224 |     pub fn set_material(&mut self, material_properties: MaterialProperties) {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a type alias
[INFO] [stderr]    --> src/context/node_manager.rs:132:1
[INFO] [stderr]     |
[INFO] [stderr] 132 | pub type ReadyCallback<T> = Option<Arc<Mutex<dyn FnMut(&mut T) + Send + Sync>>>;
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a type alias
[INFO] [stderr]    --> src/context/node_manager.rs:186:1
[INFO] [stderr]     |
[INFO] [stderr] 186 | pub type BehaviorCallback<T, U> = Option<Arc<Mutex<dyn FnMut(&mut T, &mut U) + Send + Sync>>>;
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a module
[INFO] [stderr]   --> src/renderer/mod.rs:10:1
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub mod depth_cube_map;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct
[INFO] [stderr]  --> src/renderer/depth_cube_map.rs:4:1
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub struct DepthCubeMap {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an associated function
[INFO] [stderr]   --> src/renderer/depth_cube_map.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 |     pub fn gen_map(width: u32, height: u32, shader: Shader) -> DepthCubeMap {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/renderer/depth_cube_map.rs:90:5
[INFO] [stderr]    |
[INFO] [stderr] 90 |     pub fn bind(&self) {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/renderer/depth_cube_map.rs:96:5
[INFO] [stderr]    |
[INFO] [stderr] 96 |     pub fn bind_shadow_map(&mut self, shader: &mut Shader, uniform: &str, slot: u32) {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]    --> src/renderer/depth_cube_map.rs:106:5
[INFO] [stderr]     |
[INFO] [stderr] 106 |     pub fn unbind(&self) {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]    --> src/renderer/depth_cube_map.rs:112:5
[INFO] [stderr]     |
[INFO] [stderr] 112 |     pub fn get_texture(&self) -> u32 {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]    --> src/renderer/depth_cube_map.rs:116:5
[INFO] [stderr]     |
[INFO] [stderr] 116 |     pub fn render_shadow_map(&mut self, render_function: &mut dyn FnMut(&mut Shader)) {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an enum
[INFO] [stderr]  --> src/renderer/shader.rs:5:1
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub enum Uniforms {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]  --> src/renderer/shader.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 |     ModelMatrix,
[INFO] [stderr]   |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]  --> src/renderer/shader.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 |     ViewMatrix,
[INFO] [stderr]   |     ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]  --> src/renderer/shader.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 |     ProjectionMatrix,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]  --> src/renderer/shader.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 |     LightPosition,
[INFO] [stderr]   |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/renderer/shader.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 |     LightColor,
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/renderer/shader.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 |     LightIntensity,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/renderer/shader.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 |     EyePosition,
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/renderer/shader.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 |     MaterialColor,
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/renderer/shader.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr] 14 |     MaterialSpecularColor,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a variant
[INFO] [stderr]   --> src/renderer/shader.rs:15:5
[INFO] [stderr]    |
[INFO] [stderr] 15 |     MaterialShininess,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a method
[INFO] [stderr]   --> src/renderer/shader.rs:19:5
[INFO] [stderr]    |
[INFO] [stderr] 19 |     pub fn get_uniform_name(&self) -> String {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a module
[INFO] [stderr]  --> src/utils/mod.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub mod debug;
[INFO] [stderr]   | ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a module
[INFO] [stderr]  --> src/utils/mod.rs:2:1
[INFO] [stderr]   |
[INFO] [stderr] 2 | pub mod color;
[INFO] [stderr]   | ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct
[INFO] [stderr]  --> src/utils/debug.rs:6:1
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub struct Debug {}
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an associated function
[INFO] [stderr]  --> src/utils/debug.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 |     pub fn print(message: &str) {
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct
[INFO] [stderr]  --> src/utils/color.rs:4:1
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub struct Color {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]  --> src/utils/color.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 |     pub r: f32,
[INFO] [stderr]   |     ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]  --> src/utils/color.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 |     pub g: f32,
[INFO] [stderr]   |     ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]  --> src/utils/color.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 |     pub b: f32,
[INFO] [stderr]   |     ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a struct field
[INFO] [stderr]  --> src/utils/color.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 |     pub a: f32,
[INFO] [stderr]   |     ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an associated function
[INFO] [stderr]   --> src/utils/color.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 |     pub fn from_8bit_rgba(r: u32, g: u32, b: u32, a: u32) -> Result<Color, String> {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an associated function
[INFO] [stderr]   --> src/utils/color.rs:25:5
[INFO] [stderr]    |
[INFO] [stderr] 25 |     pub fn from_8bit_rgb(r: u32, g: u32, b: u32) -> Result<Color, String> {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an associated function
[INFO] [stderr]   --> src/utils/color.rs:38:5
[INFO] [stderr]    |
[INFO] [stderr] 38 |     pub fn from_normalized(r: f32, g: f32, b: f32, a: f32) -> Result<Color, String> {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for an associated function
[INFO] [stderr]   --> src/utils/color.rs:49:5
[INFO] [stderr]    |
[INFO] [stderr] 49 |     pub fn from_hex(hex: &str) -> Result<Color, String> {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `quaturn` (lib) generated 74 warnings (run `cargo fix --lib -p quaturn` to apply 4 suggestions)
[INFO] [stderr] warning: `quaturn` (lib test) generated 74 warnings (74 duplicates)
[INFO] [stderr] warning: unused import: `default`
[INFO] [stderr]  --> examples/example.rs:1:11
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::{default, time::Duration};
[INFO] [stderr]   |           ^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `self`
[INFO] [stderr]  --> examples/example.rs:3:38
[INFO] [stderr]   |
[INFO] [stderr] 3 | use quaturn::context::node_manager::{self};
[INFO] [stderr]   |                                      ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Behavior` and `Ready`
[INFO] [stderr]   --> examples/example.rs:11:38
[INFO] [stderr]    |
[INFO] [stderr] 11 | use quaturn::context::node_manager::{Behavior, Node, NodeManager, Ready, Transformable};
[INFO] [stderr]    |                                      ^^^^^^^^                     ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `quaturn` (example "example") generated 3 warnings (run `cargo fix --example "example"` to apply 3 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.10s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/quaturn-bf3da654c16f8c89)
[INFO] [stdout] 
[INFO] [stdout] running 12 tests
[INFO] [stdout] test context::node_manager::test::impl_behavior_test ... ok
[INFO] [stdout] test context::node_manager::test::impl_no_behavior_test ... ok
[INFO] [stdout] test utils::color::tests::test_conversion_from_vec4 ... ok
[INFO] [stdout] test utils::color::tests::test_conversion_to_vec4 ... ok
[INFO] [stdout] test utils::color::tests::test_from_8bit_rgba_invalid ... ok
[INFO] [stdout] test utils::color::tests::test_from_8bit_rgba_valid ... ok
[INFO] [stdout] test utils::color::tests::test_from_hex_invalid_characters ... ok
[INFO] [stdout] test utils::color::tests::test_from_hex_invalid_format ... ok
[INFO] [stdout] test utils::color::tests::test_from_hex_valid ... ok
[INFO] [stdout] test utils::color::tests::test_from_hex_valid_no_alpha ... ok
[INFO] [stdout] test utils::color::tests::test_from_normalized_invalid ... ok
[INFO] [stdout] test utils::color::tests::test_from_normalized_valid ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests quaturn
[INFO] [stdout] 
[INFO] [stdout] running 27 tests
[INFO] [stdout] test src/context/fps_manager.rs - context::fps_manager (line 7) ... ignored
[INFO] [stdout] test src/context/input_manager.rs - context::input_manager (line 12) ... ignored
[INFO] [stdout] test src/context/node_manager.rs - context::node_manager::Transformable::apply_transform (line 217) ... FAILED
[INFO] [stdout] test src/context/node_manager.rs - context::node_manager::NodeManager::add (line 492) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 163) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 26) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 61) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 217) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 137) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 104) ... FAILED
[INFO] [stdout] test src/context/node_manager.rs - context::node_manager::Ready (line 86) ... FAILED
[INFO] [stdout] test src/context/node_manager.rs - context::node_manager::Behavior (line 139) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 34) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 121) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 91) ... FAILED
[INFO] [stdout] test src/nodes/empty.rs - nodes::empty (line 4) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 153) ... FAILED
[INFO] [stdout] test src/context/node_manager.rs - context::node_manager (line 12) ... FAILED
[INFO] [stdout] test src/nodes/model.rs - nodes::model (line 6) ... FAILED
[INFO] [stdout] test src/nodes/directional_light.rs - nodes::directional_light (line 7) ... FAILED
[INFO] [stdout] test src/nodes/ui.rs - nodes::ui (line 9) ... FAILED
[INFO] [stdout] test src/nodes/camera.rs - nodes::camera (line 7) ... FAILED
[INFO] [stdout] test src/context/node_manager.rs - context::node_manager::NodeManager::add_shader (line 625) ... FAILED
[INFO] [stdout] test src/renderer/texture.rs - renderer::texture::TextureType (line 11) ... ok
[INFO] [stdout] test src/lib.rs - Engine::begin (line 122) ... FAILED
[INFO] [stdout] test src/lib.rs - Engine::init (line 49) ... FAILED
[INFO] [stdout] test src/lib.rs - Engine::set_clear_color (line 108) ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/context/node_manager.rs - context::node_manager::Transformable::apply_transform (line 217) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: could not find `game_context` in `quaturn`
[INFO] [stdout]  --> src/context/node_manager.rs:219:14
[INFO] [stdout]   |
[INFO] [stdout] 5 | use quaturn::game_context::node_manager::{Node, NodeTransform, NodeManager, Transformable};
[INFO] [stdout]   |              ^^^^^^^^^^^^ could not find `game_context` in `quaturn`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `game_context` in `quaturn`
[INFO] [stdout]  --> src/context/node_manager.rs:220:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | use quaturn::game_context::nodes::empty::Empty;
[INFO] [stdout]   |              ^^^^^^^^^^^^ could not find `game_context` in `quaturn`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/context/node_manager.rs - context::node_manager::NodeManager::add (line 492) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: could not find `game_context` in `quaturn`
[INFO] [stdout]  --> src/context/node_manager.rs:494:14
[INFO] [stdout]   |
[INFO] [stdout] 5 | use quaturn::game_context::nodes::empty::Empty;
[INFO] [stdout]   |              ^^^^^^^^^^^^ could not find `game_context` in `quaturn`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 163) stdout ----
[INFO] [stdout] error[E0412]: cannot find type `NodeTransform` in this scope
[INFO] [stdout]  --> src/lib.rs:165:16
[INFO] [stdout]   |
[INFO] [stdout] 4 |     transform: NodeTransform,
[INFO] [stdout]   |                ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]   |
[INFO] [stdout] 2 + use quaturn::components::NodeTransform;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `NodeManager` in this scope
[INFO] [stdout]  --> src/lib.rs:166:15
[INFO] [stdout]   |
[INFO] [stdout] 5 |     children: NodeManager,
[INFO] [stdout]   |               ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]   |
[INFO] [stdout] 2 + use quaturn::context::node_manager::NodeManager;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `Node` in this scope
[INFO] [stdout]  --> src/lib.rs:170:6
[INFO] [stdout]   |
[INFO] [stdout] 9 | impl Node for CustomNode {
[INFO] [stdout]   |      ^^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this trait
[INFO] [stdout]   |
[INFO] [stdout] 2 + use quaturn::context::node_manager::Node;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `NodeTransform` in this scope
[INFO] [stdout]   --> src/lib.rs:171:41
[INFO] [stdout]    |
[INFO] [stdout] 10 |     fn get_transform(&mut self) -> &mut NodeTransform {
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 2  + use quaturn::components::NodeTransform;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `NodeManager` in this scope
[INFO] [stdout]   --> src/lib.rs:174:40
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn get_children(&mut self) -> &mut NodeManager {
[INFO] [stdout]    |                                        ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 2  + use quaturn::context::node_manager::NodeManager;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `Ready` in this scope
[INFO] [stdout]   --> src/lib.rs:179:48
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn as_ready(&mut self) -> Option<&mut (dyn Ready + 'static)> {
[INFO] [stdout]    |                                                ^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this trait
[INFO] [stdout]    |
[INFO] [stdout] 2  + use quaturn::context::node_manager::Ready;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `Behavior` in this scope
[INFO] [stdout]   --> src/lib.rs:184:51
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn as_behavior(&mut self) -> Option<&mut (dyn Behavior + 'static)> {
[INFO] [stdout]    |                                                   ^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this trait
[INFO] [stdout]    |
[INFO] [stdout] 2  + use quaturn::context::node_manager::Behavior;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `Ready` in this scope
[INFO] [stdout]   --> src/lib.rs:190:6
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl Ready for CustomNode {
[INFO] [stdout]    |      ^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this trait
[INFO] [stdout]    |
[INFO] [stdout] 2  + use quaturn::context::node_manager::Ready;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `Behavior` in this scope
[INFO] [stdout]   --> src/lib.rs:197:6
[INFO] [stdout]    |
[INFO] [stdout] 36 | impl Behavior for CustomNode {
[INFO] [stdout]    |      ^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this trait
[INFO] [stdout]    |
[INFO] [stdout] 2  + use quaturn::context::node_manager::Behavior;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `GameContext` in this scope
[INFO] [stdout]   --> src/lib.rs:198:39
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn behavior(&mut self, _ctx: &mut GameContext) {
[INFO] [stdout]    |                                       ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 2  + use quaturn::context::GameContext;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `NodeTransform`
[INFO] [stdout]   --> src/lib.rs:206:24
[INFO] [stdout]    |
[INFO] [stdout] 45 |             transform: NodeTransform::default(),
[INFO] [stdout]    |                        ^^^^^^^^^^^^^ use of undeclared type `NodeTransform`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 2  + use quaturn::components::NodeTransform;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `NodeManager`
[INFO] [stdout]   --> src/lib.rs:207:23
[INFO] [stdout]    |
[INFO] [stdout] 46 |             children: NodeManager::new(),
[INFO] [stdout]    |                       ^^^^^^^^^^^ use of undeclared type `NodeManager`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 2  + use quaturn::context::node_manager::NodeManager;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 12 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0405, E0412, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0405`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 26) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Engine`
[INFO] [stdout]  --> src/lib.rs:27:18
[INFO] [stdout]   |
[INFO] [stdout] 3 | let mut engine = Engine::init("Title", WINDOW_WIDTH, WINDOW_HEIGHT);
[INFO] [stdout]   |                  ^^^^^^ use of undeclared type `Engine`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]   |
[INFO] [stdout] 2 + use quaturn::Engine;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `WINDOW_WIDTH` in this scope
[INFO] [stdout]  --> src/lib.rs:27:40
[INFO] [stdout]   |
[INFO] [stdout] 3 | let mut engine = Engine::init("Title", WINDOW_WIDTH, WINDOW_HEIGHT);
[INFO] [stdout]   |                                        ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `WINDOW_HEIGHT` in this scope
[INFO] [stdout]  --> src/lib.rs:27:54
[INFO] [stdout]   |
[INFO] [stdout] 3 | let mut engine = Engine::init("Title", WINDOW_WIDTH, WINDOW_HEIGHT);
[INFO] [stdout]   |                                                      ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 61) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `engine` in this scope
[INFO] [stdout]  --> src/lib.rs:62:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | engine
[INFO] [stdout]   | ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Camera3D`
[INFO] [stdout]  --> src/lib.rs:67:13
[INFO] [stdout]   |
[INFO] [stdout] 8 |             Camera3D::new(
[INFO] [stdout]   |             ^^^^^^^^ use of undeclared type `Camera3D`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]   |
[INFO] [stdout] 2 + use quaturn::nodes::Camera3D;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `glm`
[INFO] [stdout]  --> src/lib.rs:68:17
[INFO] [stdout]   |
[INFO] [stdout] 9 |                 glm::vec3(10.0, 10.0, 10.0),                // position
[INFO] [stdout]   |                 ^^^ use of undeclared crate or module `glm`
[INFO] [stdout]   |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]   |
[INFO] [stdout] 9 |                 gl::vec3(10.0, 10.0, 10.0),                // position
[INFO] [stdout]   |                 ~~
[INFO] [stdout] help: consider importing this crate
[INFO] [stdout]   |
[INFO] [stdout] 2 + use quaturn::glm;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `glm`
[INFO] [stdout]   --> src/lib.rs:69:17
[INFO] [stdout]    |
[INFO] [stdout] 10 |                 glm::vec3(0.0, 0.0, 1.0),                   // look direction
[INFO] [stdout]    |                 ^^^ use of undeclared crate or module `glm`
[INFO] [stdout]    |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 10 |                 gl::vec3(0.0, 0.0, 1.0),                   // look direction
[INFO] [stdout]    |                 ~~
[INFO] [stdout] help: consider importing this crate
[INFO] [stdout]    |
[INFO] [stdout] 2  + use quaturn::glm;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `WINDOW_WIDTH` in this scope
[INFO] [stdout]   --> src/lib.rs:71:17
[INFO] [stdout]    |
[INFO] [stdout] 12 |                 WINDOW_WIDTH as f32 / WINDOW_HEIGHT as f32, // aspect ratio
[INFO] [stdout]    |                 ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `WINDOW_HEIGHT` in this scope
[INFO] [stdout]   --> src/lib.rs:71:39
[INFO] [stdout]    |
[INFO] [stdout] 12 |                 WINDOW_WIDTH as f32 / WINDOW_HEIGHT as f32, // aspect ratio
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Camera3D` in this scope
[INFO] [stdout]   --> src/lib.rs:76:37
[INFO] [stdout]    |
[INFO] [stdout] 17 |         .define_ready(|camera: &mut Camera3D| {
[INFO] [stdout]    |                                     ^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 2  + use quaturn::nodes::Camera3D;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Camera3D` in this scope
[INFO] [stdout]   --> src/lib.rs:80:40
[INFO] [stdout]    |
[INFO] [stdout] 21 |         .define_behavior(|camera: &mut Camera3D, context: &mut GameContext| {
[INFO] [stdout]    |                                        ^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 2  + use quaturn::nodes::Camera3D;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `GameContext` in this scope
[INFO] [stdout]   --> src/lib.rs:80:64
[INFO] [stdout]    |
[INFO] [stdout] 21 |         .define_behavior(|camera: &mut Camera3D, context: &mut GameContext| {
[INFO] [stdout]    |                                                                ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 2  + use quaturn::context::GameContext;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 9 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0412, E0425, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0412`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 217) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `shader` in this scope
[INFO] [stdout]  --> src/lib.rs:218:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | shader.set_uniform(name, value)
[INFO] [stdout]   | ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `name` in this scope
[INFO] [stdout]  --> src/lib.rs:218:20
[INFO] [stdout]   |
[INFO] [stdout] 3 | shader.set_uniform(name, value)
[INFO] [stdout]   |                    ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `value` in this scope
[INFO] [stdout]  --> src/lib.rs:218:26
[INFO] [stdout]   |
[INFO] [stdout] 3 | shader.set_uniform(name, value)
[INFO] [stdout]   |                          ^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 137) stdout ----
[INFO] [stdout] error: expected `;`, found `t`
[INFO] [stdout]  --> src/lib.rs:141:42
[INFO] [stdout]   |
[INFO] [stdout] 6 |     t.translate(glm::vec3(1.0, 0.0, 0.0))
[INFO] [stdout]   |                                          ^ help: add `;` here
[INFO] [stdout] ...
[INFO] [stdout] 9 |     t.rotate_euler_xyz(glm::vec3(90.0 * context.frame.time_delta.as_secs_f32(), 0.0, 0.0))
[INFO] [stdout]   |     - unexpected token
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `node` in this scope
[INFO] [stdout]  --> src/lib.rs:138:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | node.apply_transform(&mut |t| {
[INFO] [stdout]   | ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `glm`
[INFO] [stdout]  --> src/lib.rs:144:24
[INFO] [stdout]   |
[INFO] [stdout] 9 |     t.rotate_euler_xyz(glm::vec3(90.0 * context.frame.time_delta.as_secs_f32(), 0.0, 0.0))
[INFO] [stdout]   |                        ^^^ use of undeclared crate or module `glm`
[INFO] [stdout]   |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]   |
[INFO] [stdout] 9 |     t.rotate_euler_xyz(gl::vec3(90.0 * context.frame.time_delta.as_secs_f32(), 0.0, 0.0))
[INFO] [stdout]   |                        ~~
[INFO] [stdout] help: consider importing this crate
[INFO] [stdout]   |
[INFO] [stdout] 2 + use quaturn::glm;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `context` in this scope
[INFO] [stdout]  --> src/lib.rs:144:41
[INFO] [stdout]   |
[INFO] [stdout] 9 |     t.rotate_euler_xyz(glm::vec3(90.0 * context.frame.time_delta.as_secs_f32(), 0.0, 0.0))
[INFO] [stdout]   |                                         ^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 104) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `engine` in this scope
[INFO] [stdout]  --> src/lib.rs:105:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | engine.context.nodes.add(
[INFO] [stdout]   | ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `DirectionalLight`
[INFO] [stdout]  --> src/lib.rs:107:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |         DirectionalLight::new(
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^ use of undeclared type `DirectionalLight`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]   |
[INFO] [stdout] 2 + use quaturn::nodes::DirectionalLight;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `glm`
[INFO] [stdout]  --> src/lib.rs:108:13
[INFO] [stdout]   |
[INFO] [stdout] 6 |             glm::vec3(1.0, 1.0, 1.0),   // light direction
[INFO] [stdout]   |             ^^^ use of undeclared crate or module `glm`
[INFO] [stdout]   |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]   |
[INFO] [stdout] 6 |             gl::vec3(1.0, 1.0, 1.0),   // light direction
[INFO] [stdout]   |             ~~
[INFO] [stdout] help: consider importing this crate
[INFO] [stdout]   |
[INFO] [stdout] 2 + use quaturn::glm;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `glm`
[INFO] [stdout]  --> src/lib.rs:109:13
[INFO] [stdout]   |
[INFO] [stdout] 7 |             glm::vec3(1.0, 1.0, 1.0),   // color
[INFO] [stdout]   |             ^^^ use of undeclared crate or module `glm`
[INFO] [stdout]   |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]   |
[INFO] [stdout] 7 |             gl::vec3(1.0, 1.0, 1.0),   // color
[INFO] [stdout]   |             ~~
[INFO] [stdout] help: consider importing this crate
[INFO] [stdout]   |
[INFO] [stdout] 2 + use quaturn::glm;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/context/node_manager.rs - context::node_manager::Ready (line 86) stdout ----
[INFO] [stdout] error[E0603]: struct `NodeTransform` is private
[INFO] [stdout]   --> src/context/node_manager.rs:88:44
[INFO] [stdout]    |
[INFO] [stdout] 5  | use quaturn::context::node_manager::{Node, NodeTransform, NodeManager, Ready};
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^ private struct
[INFO] [stdout]    |
[INFO] [stdout] note: the struct `NodeTransform` is defined here
[INFO] [stdout]   --> /opt/rustwide/workdir/src/context/node_manager.rs:71:5
[INFO] [stdout]    |
[INFO] [stdout] 71 | use crate::components::NodeTransform;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: import `NodeTransform` directly
[INFO] [stdout]    |
[INFO] [stdout] 5  | use quaturn::context::node_manager::{Node, quaturn::components::node_transform::NodeTransform, NodeManager, Ready};
[INFO] [stdout]    |                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CustomNode: dyn_clone::DynClone` is not satisfied
[INFO] [stdout]    --> src/context/node_manager.rs:97:15
[INFO] [stdout]     |
[INFO] [stdout] 14  | impl Node for CustomNode {
[INFO] [stdout]     |               ^^^^^^^^^^ the trait `Clone` is not implemented for `CustomNode`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `dyn_clone::DynClone`:
[INFO] [stdout]               [T]
[INFO] [stdout]               str
[INFO] [stdout]     = note: required for `CustomNode` to implement `dyn_clone::DynClone`
[INFO] [stdout] note: required by a bound in `Node`
[INFO] [stdout]    --> /opt/rustwide/workdir/src/context/node_manager.rs:347:33
[INFO] [stdout]     |
[INFO] [stdout] 347 | pub trait Node: Any + Casting + DynClone {
[INFO] [stdout]     |                                 ^^^^^^^^ required by this bound in `Node`
[INFO] [stdout]     = note: `Node` is a "sealed trait", because to implement it you also need to implement `dyn_clone::DynClone`, which is not accessible; this is usually done to force you to use one of the provided types that already implement it
[INFO] [stdout]     = help: the following types implement the trait:
[INFO] [stdout]               str
[INFO] [stdout]               [T]
[INFO] [stdout]               T
[INFO] [stdout] help: consider annotating `CustomNode` with `#[derive(Clone)]`
[INFO] [stdout]     |
[INFO] [stdout] 8   + #[derive(Clone)]
[INFO] [stdout] 9   | struct CustomNode {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CustomNode: dyn_clone::DynClone` is not satisfied
[INFO] [stdout]    --> src/context/node_manager.rs:113:16
[INFO] [stdout]     |
[INFO] [stdout] 30  | impl Ready for CustomNode {
[INFO] [stdout]     |                ^^^^^^^^^^ the trait `Clone` is not implemented for `CustomNode`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Node` is not implemented for `CustomNode`
[INFO] [stdout]             but trait `Node` is implemented for it
[INFO] [stdout]     = note: required for `CustomNode` to implement `dyn_clone::DynClone`
[INFO] [stdout]     = note: required for `CustomNode` to implement `Node`
[INFO] [stdout] note: required by a bound in `quaturn::context::node_manager::Ready`
[INFO] [stdout]    --> /opt/rustwide/workdir/src/context/node_manager.rs:127:18
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub trait Ready: Node {
[INFO] [stdout]     |                  ^^^^ required by this bound in `Ready`
[INFO] [stdout] help: consider annotating `CustomNode` with `#[derive(Clone)]`
[INFO] [stdout]     |
[INFO] [stdout] 8   + #[derive(Clone)]
[INFO] [stdout] 9   | struct CustomNode {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0603.
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/context/node_manager.rs - context::node_manager::Behavior (line 139) stdout ----
[INFO] [stdout] error[E0603]: struct `NodeTransform` is private
[INFO] [stdout]   --> src/context/node_manager.rs:141:44
[INFO] [stdout]    |
[INFO] [stdout] 5  | use quaturn::context::node_manager::{Node, NodeTransform, NodeManager, Behavior};
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^ private struct
[INFO] [stdout]    |
[INFO] [stdout] note: the struct `NodeTransform` is defined here
[INFO] [stdout]   --> /opt/rustwide/workdir/src/context/node_manager.rs:71:5
[INFO] [stdout]    |
[INFO] [stdout] 71 | use crate::components::NodeTransform;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: import `NodeTransform` directly
[INFO] [stdout]    |
[INFO] [stdout] 5  | use quaturn::context::node_manager::{Node, quaturn::components::node_transform::NodeTransform, NodeManager, Behavior};
[INFO] [stdout]    |                                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CustomNode: dyn_clone::DynClone` is not satisfied
[INFO] [stdout]    --> src/context/node_manager.rs:151:15
[INFO] [stdout]     |
[INFO] [stdout] 15  | impl Node for CustomNode {
[INFO] [stdout]     |               ^^^^^^^^^^ the trait `Clone` is not implemented for `CustomNode`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the following other types implement trait `dyn_clone::DynClone`:
[INFO] [stdout]               [T]
[INFO] [stdout]               str
[INFO] [stdout]     = note: required for `CustomNode` to implement `dyn_clone::DynClone`
[INFO] [stdout] note: required by a bound in `Node`
[INFO] [stdout]    --> /opt/rustwide/workdir/src/context/node_manager.rs:347:33
[INFO] [stdout]     |
[INFO] [stdout] 347 | pub trait Node: Any + Casting + DynClone {
[INFO] [stdout]     |                                 ^^^^^^^^ required by this bound in `Node`
[INFO] [stdout]     = note: `Node` is a "sealed trait", because to implement it you also need to implement `dyn_clone::DynClone`, which is not accessible; this is usually done to force you to use one of the provided types that already implement it
[INFO] [stdout]     = help: the following types implement the trait:
[INFO] [stdout]               str
[INFO] [stdout]               [T]
[INFO] [stdout]               T
[INFO] [stdout] help: consider annotating `CustomNode` with `#[derive(Clone)]`
[INFO] [stdout]     |
[INFO] [stdout] 9   + #[derive(Clone)]
[INFO] [stdout] 10  | struct CustomNode {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CustomNode: dyn_clone::DynClone` is not satisfied
[INFO] [stdout]    --> src/context/node_manager.rs:167:19
[INFO] [stdout]     |
[INFO] [stdout] 31  | impl Behavior for CustomNode {
[INFO] [stdout]     |                   ^^^^^^^^^^ the trait `Clone` is not implemented for `CustomNode`
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Node` is not implemented for `CustomNode`
[INFO] [stdout]             but trait `Node` is implemented for it
[INFO] [stdout]     = note: required for `CustomNode` to implement `dyn_clone::DynClone`
[INFO] [stdout]     = note: required for `CustomNode` to implement `Node`
[INFO] [stdout] note: required by a bound in `Behavior`
[INFO] [stdout]    --> /opt/rustwide/workdir/src/context/node_manager.rs:181:21
[INFO] [stdout]     |
[INFO] [stdout] 181 | pub trait Behavior: Node {
[INFO] [stdout]     |                     ^^^^ required by this bound in `Behavior`
[INFO] [stdout] help: consider annotating `CustomNode` with `#[derive(Clone)]`
[INFO] [stdout]     |
[INFO] [stdout] 9   + #[derive(Clone)]
[INFO] [stdout] 10  | struct CustomNode {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0603.
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 34) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `engine` in this scope
[INFO] [stdout]  --> src/lib.rs:35:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | engine
[INFO] [stdout]   | ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Model`
[INFO] [stdout]  --> src/lib.rs:38:24
[INFO] [stdout]   |
[INFO] [stdout] 6 |     .add("model_name", Model::new_gltf("res/path/to/model"))
[INFO] [stdout]   |                        ^^^^^ use of undeclared type `Model`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]   |
[INFO] [stdout] 2 + use quaturn::nodes::Model;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Model` in this scope
[INFO] [stdout]  --> src/lib.rs:39:32
[INFO] [stdout]   |
[INFO] [stdout] 7 |     .define_ready(|model: &mut Model| {
[INFO] [stdout]   |                                ^^^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]   |
[INFO] [stdout] 2 + use quaturn::nodes::Model;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Model` in this scope
[INFO] [stdout]   --> src/lib.rs:43:32
[INFO] [stdout]    |
[INFO] [stdout] 11 |     .define_ready(|model: &mut Model, context: &mut GameContext| {
[INFO] [stdout]    |                                ^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 2  + use quaturn::nodes::Model;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `GameContext` in this scope
[INFO] [stdout]   --> src/lib.rs:43:53
[INFO] [stdout]    |
[INFO] [stdout] 11 |     .define_ready(|model: &mut Model, context: &mut GameContext| {
[INFO] [stdout]    |                                                     ^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 2  + use quaturn::context::GameContext;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `input_manager` in this scope
[INFO] [stdout]   --> src/lib.rs:45:12
[INFO] [stdout]    |
[INFO] [stdout] 13 |         if input_manager.keys.contains(&Key::W) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `glm`
[INFO] [stdout]   --> src/lib.rs:47:29
[INFO] [stdout]    |
[INFO] [stdout] 15 |             model.translate(glm::vec3(0.0, 1.0 * fps_manager.time_delta.as_sec_f32(), 0.0));
[INFO] [stdout]    |                             ^^^ use of undeclared crate or module `glm`
[INFO] [stdout]    |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 15 |             model.translate(gl::vec3(0.0, 1.0 * fps_manager.time_delta.as_sec_f32(), 0.0));
[INFO] [stdout]    |                             ~~
[INFO] [stdout] help: consider importing this crate
[INFO] [stdout]    |
[INFO] [stdout] 2  + use quaturn::glm;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `fps_manager` in this scope
[INFO] [stdout]   --> src/lib.rs:47:50
[INFO] [stdout]    |
[INFO] [stdout] 15 |             model.translate(glm::vec3(0.0, 1.0 * fps_manager.time_delta.as_sec_f32(), 0.0));
[INFO] [stdout]    |                                                  ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `glm`
[INFO] [stdout]   --> src/lib.rs:52:28
[INFO] [stdout]    |
[INFO] [stdout] 20 |         t.rotate_euler_xyz(glm::vec3(-90.0, 0.0, 0.0));
[INFO] [stdout]    |                            ^^^ use of undeclared crate or module `glm`
[INFO] [stdout]    |
[INFO] [stdout] help: there is a crate or module with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 20 |         t.rotate_euler_xyz(gl::vec3(-90.0, 0.0, 0.0));
[INFO] [stdout]    |                            ~~
[INFO] [stdout] help: consider importing this crate
[INFO] [stdout]    |
[INFO] [stdout] 2  + use quaturn::glm;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Key`
[INFO] [stdout]   --> src/lib.rs:45:41
[INFO] [stdout]    |
[INFO] [stdout] 13 |         if input_manager.keys.contains(&Key::W) {
[INFO] [stdout]    |                                         ^^^ use of undeclared type `Key`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 10 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0412, E0425, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0412`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 121) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `egui`
[INFO] [stdout]  --> src/lib.rs:127:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |         egui::Window::new("Debug Panel").show(ctx, |ui| {
[INFO] [stdout]   |         ^^^^ use of undeclared crate or module `egui`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `UI`
[INFO] [stdout]  --> src/lib.rs:122:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | let ui = UI::init(&mut engine.window);
[INFO] [stdout]   |          ^^ use of undeclared type `UI`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]   |
[INFO] [stdout] 2 + use quaturn::nodes::UI;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `engine` in this scope
[INFO] [stdout]  --> src/lib.rs:122:24
[INFO] [stdout]   |
[INFO] [stdout] 3 | let ui = UI::init(&mut engine.window);
[INFO] [stdout]   |                        ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `engine` in this scope
[INFO] [stdout]  --> src/lib.rs:123:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | engine
[INFO] [stdout]   | ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 91) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `engine` in this scope
[INFO] [stdout]  --> src/lib.rs:92:18
[INFO] [stdout]   |
[INFO] [stdout] 3 | let mut shader = engine.context.nodes.add_shader(
[INFO] [stdout]   |                  ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Shader`
[INFO] [stdout]  --> src/lib.rs:94:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |         Shader::default(), // add the default shader
[INFO] [stdout]   |         ^^^^^^ use of undeclared type `Shader`
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]   |
[INFO] [stdout] 2 + use quaturn::renderer::shader::Shader;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/nodes/empty.rs - nodes::empty (line 4) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: could not find `game_context` in `quaturn`
[INFO] [stdout]  --> src/nodes/empty.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 5 | use quaturn::game_context::nodes::empty::Empty;
[INFO] [stdout]   |              ^^^^^^^^^^^^ could not find `game_context` in `quaturn`
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `quaturn::game_context`
[INFO] [stdout]  --> src/nodes/empty.rs:7:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | use quaturn::game_context::GameContext;
[INFO] [stdout]   |              ^^^^^^^^^^^^ could not find `game_context` in `quaturn`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 153) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `engine` in this scope
[INFO] [stdout]  --> src/lib.rs:154:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | engine.begin()
[INFO] [stdout]   | ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/context/node_manager.rs - context::node_manager (line 12) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: could not find `game_context` in `quaturn`
[INFO] [stdout]  --> src/context/node_manager.rs:15:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | use quaturn::game_context::node_manager::{Node, NodeTransform, NodeManager, Ready, Behavior};
[INFO] [stdout]   |              ^^^^^^^^^^^^ could not find `game_context` in `quaturn`
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `quaturn::game_context`
[INFO] [stdout]  --> src/context/node_manager.rs:17:14
[INFO] [stdout]   |
[INFO] [stdout] 8 | use quaturn::game_context::GameContext;
[INFO] [stdout]   |              ^^^^^^^^^^^^ could not find `game_context` in `quaturn`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/nodes/model.rs - nodes::model (line 6) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: could not find `game_context` in `quaturn`
[INFO] [stdout]  --> src/nodes/model.rs:8:14
[INFO] [stdout]   |
[INFO] [stdout] 5 | use quaturn::game_context::nodes::model::Model;
[INFO] [stdout]   |              ^^^^^^^^^^^^ could not find `game_context` in `quaturn`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `game_context` in `quaturn`
[INFO] [stdout]  --> src/nodes/model.rs:9:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | use quaturn::game_context::nodes::model::Primitive;
[INFO] [stdout]   |              ^^^^^^^^^^^^ could not find `game_context` in `quaturn`
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `quaturn::game_context`
[INFO] [stdout]  --> src/nodes/model.rs:10:14
[INFO] [stdout]   |
[INFO] [stdout] 7 | use quaturn::game_context::GameContext;
[INFO] [stdout]   |              ^^^^^^^^^^^^ could not find `game_context` in `quaturn`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/nodes/directional_light.rs - nodes::directional_light (line 7) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: could not find `game_context` in `quaturn`
[INFO] [stdout]  --> src/nodes/directional_light.rs:11:14
[INFO] [stdout]   |
[INFO] [stdout] 7 | use quaturn::game_context::nodes::directional_light::DirectionalLight;
[INFO] [stdout]   |              ^^^^^^^^^^^^ could not find `game_context` in `quaturn`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/nodes/ui.rs - nodes::ui (line 9) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: could not find `game_context` in `quaturn`
[INFO] [stdout]  --> src/nodes/ui.rs:11:14
[INFO] [stdout]   |
[INFO] [stdout] 5 | use quaturn::game_context::nodes::ui::UI;
[INFO] [stdout]   |              ^^^^^^^^^^^^ could not find `game_context` in `quaturn`
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `quaturn::game_context`
[INFO] [stdout]  --> src/nodes/ui.rs:12:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | use quaturn::game_context::GameContext;
[INFO] [stdout]   |              ^^^^^^^^^^^^ could not find `game_context` in `quaturn`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/nodes/camera.rs - nodes::camera (line 7) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: could not find `game_context` in `quaturn`
[INFO] [stdout]  --> src/nodes/camera.rs:9:14
[INFO] [stdout]   |
[INFO] [stdout] 5 | use quaturn::game_context::nodes::camera::Camera3D;
[INFO] [stdout]   |              ^^^^^^^^^^^^ could not find `game_context` in `quaturn`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `game_context` in `quaturn`
[INFO] [stdout]  --> src/nodes/camera.rs:11:14
[INFO] [stdout]   |
[INFO] [stdout] 7 | use quaturn::game_context::node_manager::{Node, NodeManager};
[INFO] [stdout]   |              ^^^^^^^^^^^^ could not find `game_context` in `quaturn`
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `quaturn::game_context`
[INFO] [stdout]  --> src/nodes/camera.rs:10:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | use quaturn::game_context::GameContext;
[INFO] [stdout]   |              ^^^^^^^^^^^^ could not find `game_context` in `quaturn`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/context/node_manager.rs - context::node_manager::NodeManager::add_shader (line 625) stdout ----
[INFO] [stdout] Test executable failed (signal: 6 (SIGABRT) (core dumped)).
[INFO] [stdout] 
[INFO] [stdout] stderr:
[INFO] [stdout] 
[INFO] [stdout] thread 'main' panicked at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/lib.rs:637:5:
[INFO] [stdout] GLFW Error: X11: The DISPLAY environment variable is missing
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5dcb818cbd2a - std::backtrace_rs::backtrace::libunwind::trace::hb059275cfc8d6126
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/../../backtrace/src/backtrace/libunwind.rs:116:5
[INFO] [stdout]    1:     0x5dcb818cbd2a - std::backtrace_rs::backtrace::trace_unsynchronized::h2da071e4327ce3ee
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x5dcb818cbd2a - std::sys::backtrace::_print_fmt::h842a1474e6f8d23f
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x5dcb818cbd2a - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h71a62eb3b9696b12
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x5dcb818ea063 - core::fmt::rt::Argument::fmt::hdb6b616786b41dc1
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/fmt/rt.rs:177:76
[INFO] [stdout]    5:     0x5dcb818ea063 - core::fmt::write::h2cc1698af7e2d686
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/fmt/mod.rs:1440:21
[INFO] [stdout]    6:     0x5dcb818c8f33 - std::io::Write::write_fmt::h00c8700df393f328
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/io/mod.rs:1887:15
[INFO] [stdout]    7:     0x5dcb818cbb72 - std::sys::backtrace::BacktraceLock::print::h147fe35b4ea13b08
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    8:     0x5dcb818ccacf - std::panicking::default_hook::{{closure}}::hbd44223dbdc0d208
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:298:22
[INFO] [stdout]    9:     0x5dcb818cc93a - std::panicking::default_hook::h20f81eb0576efcec
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:325:9
[INFO] [stdout]   10:     0x5dcb818cd4b2 - std::panicking::rust_panic_with_hook::h625eea43051b2edc
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:831:13
[INFO] [stdout]   11:     0x5dcb818cd23a - std::panicking::begin_panic_handler::{{closure}}::h4f9159cfbc3f6bd3
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:704:13
[INFO] [stdout]   12:     0x5dcb818cc229 - std::sys::backtrace::__rust_end_short_backtrace::h0390abce48353151
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:168:18
[INFO] [stdout]   13:     0x5dcb818ccecd - rust_begin_unwind
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:695:5
[INFO] [stdout]   14:     0x5dcb818e9140 - core::panicking::panic_fmt::h9e7c637e9e5f29c9
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/panicking.rs:75:14
[INFO] [stdout]   15:     0x5dcb8185df08 - glfw::fail_on_errors::h85560993361691c9
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/lib.rs:637:5
[INFO] [stdout]   16:     0x5dcb8184197a - quaturn::Engine::init::{{closure}}::ha5eb231ef65592f8
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/lib.rs:645:13
[INFO] [stdout]   17:     0x5dcb818672b0 - <alloc::boxed::Box<F,A> as core::ops::function::FnMut<Args>>::call_mut::hb31bb454ee311fc6
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/alloc/src/boxed.rs:2020:9
[INFO] [stdout]   18:     0x5dcb818674ae - glfw::callbacks::error::callback::{{closure}}::h1f05e7d6242fa184
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/callbacks.rs:50:50
[INFO] [stdout]   19:     0x5dcb81868fad - std::thread::local::LocalKey<T>::try_with::h7f6e7be59580d80a
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/thread/local.rs:308:12
[INFO] [stdout]   20:     0x5dcb81868c98 - std::thread::local::LocalKey<T>::with::h5daac6165751b0e9
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/thread/local.rs:272:9
[INFO] [stdout]   21:     0x5dcb81867387 - glfw::callbacks::error::callback::ha96c5b5a570df3c1
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/callbacks.rs:48:13
[INFO] [stdout]   22:     0x5dcb8187aab3 - _glfwInputError
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-sys-5.0.0+3.3.9/glfw/src/init.c:311:9
[INFO] [stdout]   23:     0x5dcb81880538 - _glfwPlatformInit
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-sys-5.0.0+3.3.9/glfw/src/x11_init.c:1116:13
[INFO] [stdout]   24:     0x5dcb8187ab27 - glfwInit
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-sys-5.0.0+3.3.9/glfw/src/init.c:327:10
[INFO] [stdout]   25:     0x5dcb8185df37 - glfw::init_no_callbacks::hbc65f7c0d07a5d52
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/lib.rs:1079:17
[INFO] [stdout]   26:     0x5dcb8184753d - glfw::init::h28d0c569ebbc18c6
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/lib.rs:1072:5
[INFO] [stdout]   27:     0x5dcb81841451 - quaturn::Engine::init::hc08b6297492f993d
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:55:24
[INFO] [stdout]   28:     0x5dcb81840dac - rust_out::main::_doctest_main_src_context_node_manager_rs_625_0::h2a7cf678f5eac72f
[INFO] [stdout]   29:     0x5dcb81840d76 - rust_out::main::he88f0b9b281d54e0
[INFO] [stdout]   30:     0x5dcb81840ae3 - core::ops::function::FnOnce::call_once::hcf3829d8b58d0254
[INFO] [stdout]   31:     0x5dcb81840ac6 - std::sys::backtrace::__rust_begin_short_backtrace::h5e1527399e8d5bd4
[INFO] [stdout]   32:     0x5dcb81840aa9 - std::rt::lang_start::{{closure}}::h2c234101ed7b1b74
[INFO] [stdout]   33:     0x5dcb818c5d30 - core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once::h1b085b6c1d2518b2
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/ops/function.rs:284:13
[INFO] [stdout]   34:     0x5dcb818c5d30 - std::panicking::try::do_call::h382f964a5a23b565
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:587:40
[INFO] [stdout]   35:     0x5dcb818c5d30 - std::panicking::try::h57f991055eb622f9
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:550:19
[INFO] [stdout]   36:     0x5dcb818c5d30 - std::panic::catch_unwind::h4d9a74ef04456343
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panic.rs:358:14
[INFO] [stdout]   37:     0x5dcb818c5d30 - std::rt::lang_start_internal::{{closure}}::h2faa8ae84a93f314
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/rt.rs:163:24
[INFO] [stdout]   38:     0x5dcb818c5d30 - std::panicking::try::do_call::h0f8932bf638a9bf5
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:587:40
[INFO] [stdout]   39:     0x5dcb818c5d30 - std::panicking::try::h683416ea756b175d
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:550:19
[INFO] [stdout]   40:     0x5dcb818c5d30 - std::panic::catch_unwind::h56189fac8994979f
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panic.rs:358:14
[INFO] [stdout]   41:     0x5dcb818c5d30 - std::rt::lang_start_internal::h8bbc1061691274fe
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/rt.rs:159:5
[INFO] [stdout]   42:     0x5dcb81840a91 - std::rt::lang_start::h601b10a269c70ef7
[INFO] [stdout]   43:     0x5dcb81840e55 - main
[INFO] [stdout]   44:     0x7f3c098e5d90 - <unknown>
[INFO] [stdout]   45:     0x7f3c098e5e40 - __libc_start_main
[INFO] [stdout]   46:     0x5dcb818409a5 - _start
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] thread 'main' panicked at library/core/src/panicking.rs:218:5:
[INFO] [stdout] panic in a function that cannot unwind
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5dcb818cbd2a - std::backtrace_rs::backtrace::libunwind::trace::hb059275cfc8d6126
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/../../backtrace/src/backtrace/libunwind.rs:116:5
[INFO] [stdout]    1:     0x5dcb818cbd2a - std::backtrace_rs::backtrace::trace_unsynchronized::h2da071e4327ce3ee
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x5dcb818cbd2a - std::sys::backtrace::_print_fmt::h842a1474e6f8d23f
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x5dcb818cbd2a - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h71a62eb3b9696b12
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x5dcb818ea063 - core::fmt::rt::Argument::fmt::hdb6b616786b41dc1
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/fmt/rt.rs:177:76
[INFO] [stdout]    5:     0x5dcb818ea063 - core::fmt::write::h2cc1698af7e2d686
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/fmt/mod.rs:1440:21
[INFO] [stdout]    6:     0x5dcb818c8f33 - std::io::Write::write_fmt::h00c8700df393f328
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/io/mod.rs:1887:15
[INFO] [stdout]    7:     0x5dcb818cbb72 - std::sys::backtrace::BacktraceLock::print::h147fe35b4ea13b08
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    8:     0x5dcb818ccacf - std::panicking::default_hook::{{closure}}::hbd44223dbdc0d208
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:298:22
[INFO] [stdout]    9:     0x5dcb818cc93a - std::panicking::default_hook::h20f81eb0576efcec
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:325:9
[INFO] [stdout]   10:     0x5dcb818cd4b2 - std::panicking::rust_panic_with_hook::h625eea43051b2edc
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:831:13
[INFO] [stdout]   11:     0x5dcb818cd206 - std::panicking::begin_panic_handler::{{closure}}::h4f9159cfbc3f6bd3
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:697:13
[INFO] [stdout]   12:     0x5dcb818cc229 - std::sys::backtrace::__rust_end_short_backtrace::h0390abce48353151
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:168:18
[INFO] [stdout]   13:     0x5dcb818ccecd - rust_begin_unwind
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:695:5
[INFO] [stdout]   14:     0x5dcb818e917d - core::panicking::panic_nounwind_fmt::runtime::hff07b4bc76d03a4c
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/panicking.rs:117:22
[INFO] [stdout]   15:     0x5dcb818e917d - core::panicking::panic_nounwind_fmt::hbd5e8c40c5ce07f6
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/intrinsics/mod.rs:3861:9
[INFO] [stdout]   16:     0x5dcb818e9212 - core::panicking::panic_nounwind::h87bcbf062a0b0104
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/panicking.rs:218:5
[INFO] [stdout]   17:     0x5dcb818e9375 - core::panicking::panic_cannot_unwind::hdb020f8a902d0074
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/panicking.rs:307:5
[INFO] [stdout]   18:     0x5dcb81867392 - glfw::callbacks::error::callback::ha96c5b5a570df3c1
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/callbacks.rs:47:9
[INFO] [stdout]   19:     0x5dcb8187aab3 - _glfwInputError
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-sys-5.0.0+3.3.9/glfw/src/init.c:311:9
[INFO] [stdout]   20:     0x5dcb81880538 - _glfwPlatformInit
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-sys-5.0.0+3.3.9/glfw/src/x11_init.c:1116:13
[INFO] [stdout]   21:     0x5dcb8187ab27 - glfwInit
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-sys-5.0.0+3.3.9/glfw/src/init.c:327:10
[INFO] [stdout]   22:     0x5dcb8185df37 - glfw::init_no_callbacks::hbc65f7c0d07a5d52
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/lib.rs:1079:17
[INFO] [stdout]   23:     0x5dcb8184753d - glfw::init::h28d0c569ebbc18c6
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/lib.rs:1072:5
[INFO] [stdout]   24:     0x5dcb81841451 - quaturn::Engine::init::hc08b6297492f993d
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:55:24
[INFO] [stdout]   25:     0x5dcb81840dac - rust_out::main::_doctest_main_src_context_node_manager_rs_625_0::h2a7cf678f5eac72f
[INFO] [stdout]   26:     0x5dcb81840d76 - rust_out::main::he88f0b9b281d54e0
[INFO] [stdout]   27:     0x5dcb81840ae3 - core::ops::function::FnOnce::call_once::hcf3829d8b58d0254
[INFO] [stdout]   28:     0x5dcb81840ac6 - std::sys::backtrace::__rust_begin_short_backtrace::h5e1527399e8d5bd4
[INFO] [stdout]   29:     0x5dcb81840aa9 - std::rt::lang_start::{{closure}}::h2c234101ed7b1b74
[INFO] [stdout]   30:     0x5dcb818c5d30 - core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once::h1b085b6c1d2518b2
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/ops/function.rs:284:13
[INFO] [stdout]   31:     0x5dcb818c5d30 - std::panicking::try::do_call::h382f964a5a23b565
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:587:40
[INFO] [stdout]   32:     0x5dcb818c5d30 - std::panicking::try::h57f991055eb622f9
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:550:19
[INFO] [stdout]   33:     0x5dcb818c5d30 - std::panic::catch_unwind::h4d9a74ef04456343
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panic.rs:358:14
[INFO] [stdout]   34:     0x5dcb818c5d30 - std::rt::lang_start_internal::{{closure}}::h2faa8ae84a93f314
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/rt.rs:163:24
[INFO] [stdout]   35:     0x5dcb818c5d30 - std::panicking::try::do_call::h0f8932bf638a9bf5
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:587:40
[INFO] [stdout]   36:     0x5dcb818c5d30 - std::panicking::try::h683416ea756b175d
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:550:19
[INFO] [stdout]   37:     0x5dcb818c5d30 - std::panic::catch_unwind::h56189fac8994979f
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panic.rs:358:14
[INFO] [stdout]   38:     0x5dcb818c5d30 - std::rt::lang_start_internal::h8bbc1061691274fe
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/rt.rs:159:5
[INFO] [stdout]   39:     0x5dcb81840a91 - std::rt::lang_start::h601b10a269c70ef7
[INFO] [stdout]   40:     0x5dcb81840e55 - main
[INFO] [stdout]   41:     0x7f3c098e5d90 - <unknown>
[INFO] [stdout]   42:     0x7f3c098e5e40 - __libc_start_main
[INFO] [stdout]   43:     0x5dcb818409a5 - _start
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] thread caused non-unwinding panic. aborting.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] ---- src/lib.rs - Engine::begin (line 122) stdout ----
[INFO] [stdout] Test executable failed (signal: 6 (SIGABRT) (core dumped)).
[INFO] [stdout] 
[INFO] [stdout] stderr:
[INFO] [stdout] 
[INFO] [stdout] thread 'main' panicked at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/lib.rs:637:5:
[INFO] [stdout] GLFW Error: X11: The DISPLAY environment variable is missing
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x620116263c5a - std::backtrace_rs::backtrace::libunwind::trace::hb059275cfc8d6126
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/../../backtrace/src/backtrace/libunwind.rs:116:5
[INFO] [stdout]    1:     0x620116263c5a - std::backtrace_rs::backtrace::trace_unsynchronized::h2da071e4327ce3ee
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x620116263c5a - std::sys::backtrace::_print_fmt::h842a1474e6f8d23f
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x620116263c5a - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h71a62eb3b9696b12
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x6201162898b3 - core::fmt::rt::Argument::fmt::hdb6b616786b41dc1
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/fmt/rt.rs:177:76
[INFO] [stdout]    5:     0x6201162898b3 - core::fmt::write::h2cc1698af7e2d686
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/fmt/mod.rs:1440:21
[INFO] [stdout]    6:     0x620116260703 - std::io::Write::write_fmt::h00c8700df393f328
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/io/mod.rs:1887:15
[INFO] [stdout]    7:     0x620116263aa2 - std::sys::backtrace::BacktraceLock::print::h147fe35b4ea13b08
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    8:     0x6201162649ff - std::panicking::default_hook::{{closure}}::hbd44223dbdc0d208
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:298:22
[INFO] [stdout]    9:     0x62011626486a - std::panicking::default_hook::h20f81eb0576efcec
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:325:9
[INFO] [stdout]   10:     0x620116265422 - std::panicking::rust_panic_with_hook::h625eea43051b2edc
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:831:13
[INFO] [stdout]   11:     0x6201162651aa - std::panicking::begin_panic_handler::{{closure}}::h4f9159cfbc3f6bd3
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:704:13
[INFO] [stdout]   12:     0x620116264159 - std::sys::backtrace::__rust_end_short_backtrace::h0390abce48353151
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:168:18
[INFO] [stdout]   13:     0x620116264e3d - rust_begin_unwind
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:695:5
[INFO] [stdout]   14:     0x620116287480 - core::panicking::panic_fmt::h9e7c637e9e5f29c9
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/panicking.rs:75:14
[INFO] [stdout]   15:     0x620115ffa4c8 - glfw::fail_on_errors::h85560993361691c9
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/lib.rs:637:5
[INFO] [stdout]   16:     0x620115e28d8a - quaturn::Engine::init::{{closure}}::ha5eb231ef65592f8
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/lib.rs:645:13
[INFO] [stdout]   17:     0x6201160038f0 - <alloc::boxed::Box<F,A> as core::ops::function::FnMut<Args>>::call_mut::hb31bb454ee311fc6
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/alloc/src/boxed.rs:2020:9
[INFO] [stdout]   18:     0x620116003aee - glfw::callbacks::error::callback::{{closure}}::h1f05e7d6242fa184
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/callbacks.rs:50:50
[INFO] [stdout]   19:     0x6201160055ed - std::thread::local::LocalKey<T>::try_with::h7f6e7be59580d80a
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/thread/local.rs:308:12
[INFO] [stdout]   20:     0x6201160052d8 - std::thread::local::LocalKey<T>::with::h5daac6165751b0e9
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/thread/local.rs:272:9
[INFO] [stdout]   21:     0x6201160039c7 - glfw::callbacks::error::callback::ha96c5b5a570df3c1
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/callbacks.rs:48:13
[INFO] [stdout]   22:     0x62011601745f - _glfwInputError
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-sys-5.0.0+3.3.9/glfw/src/init.c:311:9
[INFO] [stdout]   23:     0x62011601d6b0 - _glfwPlatformInit
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-sys-5.0.0+3.3.9/glfw/src/x11_init.c:1116:13
[INFO] [stdout]   24:     0x6201160174d3 - glfwInit
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-sys-5.0.0+3.3.9/glfw/src/init.c:327:10
[INFO] [stdout]   25:     0x620115ffa4f7 - glfw::init_no_callbacks::hbc65f7c0d07a5d52
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/lib.rs:1079:17
[INFO] [stdout]   26:     0x620115e4d4dd - glfw::init::h28d0c569ebbc18c6
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/lib.rs:1072:5
[INFO] [stdout]   27:     0x620115e27681 - quaturn::Engine::init::hc08b6297492f993d
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:55:24
[INFO] [stdout]   28:     0x620115e23af0 - rust_out::main::_doctest_main_src_lib_rs_122_0::h1b02967e20917dbb
[INFO] [stdout]   29:     0x620115e23ab6 - rust_out::main::he88f0b9b281d54e0
[INFO] [stdout]   30:     0x620115e23823 - core::ops::function::FnOnce::call_once::hcf3829d8b58d0254
[INFO] [stdout]   31:     0x620115e23806 - std::sys::backtrace::__rust_begin_short_backtrace::h5e1527399e8d5bd4
[INFO] [stdout]   32:     0x620115e237e9 - std::rt::lang_start::{{closure}}::h2c234101ed7b1b74
[INFO] [stdout]   33:     0x62011625ae30 - core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once::h1b085b6c1d2518b2
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/ops/function.rs:284:13
[INFO] [stdout]   34:     0x62011625ae30 - std::panicking::try::do_call::h382f964a5a23b565
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:587:40
[INFO] [stdout]   35:     0x62011625ae30 - std::panicking::try::h57f991055eb622f9
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:550:19
[INFO] [stdout]   36:     0x62011625ae30 - std::panic::catch_unwind::h4d9a74ef04456343
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panic.rs:358:14
[INFO] [stdout]   37:     0x62011625ae30 - std::rt::lang_start_internal::{{closure}}::h2faa8ae84a93f314
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/rt.rs:163:24
[INFO] [stdout]   38:     0x62011625ae30 - std::panicking::try::do_call::h0f8932bf638a9bf5
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:587:40
[INFO] [stdout]   39:     0x62011625ae30 - std::panicking::try::h683416ea756b175d
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:550:19
[INFO] [stdout]   40:     0x62011625ae30 - std::panic::catch_unwind::h56189fac8994979f
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panic.rs:358:14
[INFO] [stdout]   41:     0x62011625ae30 - std::rt::lang_start_internal::h8bbc1061691274fe
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/rt.rs:159:5
[INFO] [stdout]   42:     0x620115e237d1 - std::rt::lang_start::h601b10a269c70ef7
[INFO] [stdout]   43:     0x620115e23b65 - main
[INFO] [stdout]   44:     0x7d9ed18efd90 - <unknown>
[INFO] [stdout]   45:     0x7d9ed18efe40 - __libc_start_main
[INFO] [stdout]   46:     0x620115e236e5 - _start
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] thread 'main' panicked at library/core/src/panicking.rs:218:5:
[INFO] [stdout] panic in a function that cannot unwind
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x620116263c5a - std::backtrace_rs::backtrace::libunwind::trace::hb059275cfc8d6126
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/../../backtrace/src/backtrace/libunwind.rs:116:5
[INFO] [stdout]    1:     0x620116263c5a - std::backtrace_rs::backtrace::trace_unsynchronized::h2da071e4327ce3ee
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x620116263c5a - std::sys::backtrace::_print_fmt::h842a1474e6f8d23f
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x620116263c5a - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h71a62eb3b9696b12
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x6201162898b3 - core::fmt::rt::Argument::fmt::hdb6b616786b41dc1
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/fmt/rt.rs:177:76
[INFO] [stdout]    5:     0x6201162898b3 - core::fmt::write::h2cc1698af7e2d686
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/fmt/mod.rs:1440:21
[INFO] [stdout]    6:     0x620116260703 - std::io::Write::write_fmt::h00c8700df393f328
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/io/mod.rs:1887:15
[INFO] [stdout]    7:     0x620116263aa2 - std::sys::backtrace::BacktraceLock::print::h147fe35b4ea13b08
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    8:     0x6201162649ff - std::panicking::default_hook::{{closure}}::hbd44223dbdc0d208
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:298:22
[INFO] [stdout]    9:     0x62011626486a - std::panicking::default_hook::h20f81eb0576efcec
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:325:9
[INFO] [stdout]   10:     0x620116265422 - std::panicking::rust_panic_with_hook::h625eea43051b2edc
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:831:13
[INFO] [stdout]   11:     0x620116265176 - std::panicking::begin_panic_handler::{{closure}}::h4f9159cfbc3f6bd3
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:697:13
[INFO] [stdout]   12:     0x620116264159 - std::sys::backtrace::__rust_end_short_backtrace::h0390abce48353151
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:168:18
[INFO] [stdout]   13:     0x620116264e3d - rust_begin_unwind
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:695:5
[INFO] [stdout]   14:     0x6201162874bd - core::panicking::panic_nounwind_fmt::runtime::hff07b4bc76d03a4c
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/panicking.rs:117:22
[INFO] [stdout]   15:     0x6201162874bd - core::panicking::panic_nounwind_fmt::hbd5e8c40c5ce07f6
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/intrinsics/mod.rs:3861:9
[INFO] [stdout]   16:     0x620116287552 - core::panicking::panic_nounwind::h87bcbf062a0b0104
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/panicking.rs:218:5
[INFO] [stdout]   17:     0x6201162876b5 - core::panicking::panic_cannot_unwind::hdb020f8a902d0074
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/panicking.rs:307:5
[INFO] [stdout]   18:     0x6201160039d2 - glfw::callbacks::error::callback::ha96c5b5a570df3c1
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/callbacks.rs:47:9
[INFO] [stdout]   19:     0x62011601745f - _glfwInputError
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-sys-5.0.0+3.3.9/glfw/src/init.c:311:9
[INFO] [stdout]   20:     0x62011601d6b0 - _glfwPlatformInit
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-sys-5.0.0+3.3.9/glfw/src/x11_init.c:1116:13
[INFO] [stdout]   21:     0x6201160174d3 - glfwInit
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-sys-5.0.0+3.3.9/glfw/src/init.c:327:10
[INFO] [stdout]   22:     0x620115ffa4f7 - glfw::init_no_callbacks::hbc65f7c0d07a5d52
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/lib.rs:1079:17
[INFO] [stdout]   23:     0x620115e4d4dd - glfw::init::h28d0c569ebbc18c6
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/lib.rs:1072:5
[INFO] [stdout]   24:     0x620115e27681 - quaturn::Engine::init::hc08b6297492f993d
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:55:24
[INFO] [stdout]   25:     0x620115e23af0 - rust_out::main::_doctest_main_src_lib_rs_122_0::h1b02967e20917dbb
[INFO] [stdout]   26:     0x620115e23ab6 - rust_out::main::he88f0b9b281d54e0
[INFO] [stdout]   27:     0x620115e23823 - core::ops::function::FnOnce::call_once::hcf3829d8b58d0254
[INFO] [stdout]   28:     0x620115e23806 - std::sys::backtrace::__rust_begin_short_backtrace::h5e1527399e8d5bd4
[INFO] [stdout]   29:     0x620115e237e9 - std::rt::lang_start::{{closure}}::h2c234101ed7b1b74
[INFO] [stdout]   30:     0x62011625ae30 - core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once::h1b085b6c1d2518b2
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/ops/function.rs:284:13
[INFO] [stdout]   31:     0x62011625ae30 - std::panicking::try::do_call::h382f964a5a23b565
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:587:40
[INFO] [stdout]   32:     0x62011625ae30 - std::panicking::try::h57f991055eb622f9
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:550:19
[INFO] [stdout]   33:     0x62011625ae30 - std::panic::catch_unwind::h4d9a74ef04456343
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panic.rs:358:14
[INFO] [stdout]   34:     0x62011625ae30 - std::rt::lang_start_internal::{{closure}}::h2faa8ae84a93f314
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/rt.rs:163:24
[INFO] [stdout]   35:     0x62011625ae30 - std::panicking::try::do_call::h0f8932bf638a9bf5
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:587:40
[INFO] [stdout]   36:     0x62011625ae30 - std::panicking::try::h683416ea756b175d
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:550:19
[INFO] [stdout]   37:     0x62011625ae30 - std::panic::catch_unwind::h56189fac8994979f
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panic.rs:358:14
[INFO] [stdout]   38:     0x62011625ae30 - std::rt::lang_start_internal::h8bbc1061691274fe
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/rt.rs:159:5
[INFO] [stdout]   39:     0x620115e237d1 - std::rt::lang_start::h601b10a269c70ef7
[INFO] [stdout]   40:     0x620115e23b65 - main
[INFO] [stdout]   41:     0x7d9ed18efd90 - <unknown>
[INFO] [stdout]   42:     0x7d9ed18efe40 - __libc_start_main
[INFO] [stdout]   43:     0x620115e236e5 - _start
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] thread caused non-unwinding panic. aborting.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] ---- src/lib.rs - Engine::init (line 49) stdout ----
[INFO] [stdout] Test executable failed (signal: 6 (SIGABRT) (core dumped)).
[INFO] [stdout] 
[INFO] [stdout] stderr:
[INFO] [stdout] 
[INFO] [stdout] thread 'main' panicked at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/lib.rs:637:5:
[INFO] [stdout] GLFW Error: X11: The DISPLAY environment variable is missing
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x57a0482e2c5a - std::backtrace_rs::backtrace::libunwind::trace::hb059275cfc8d6126
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/../../backtrace/src/backtrace/libunwind.rs:116:5
[INFO] [stdout]    1:     0x57a0482e2c5a - std::backtrace_rs::backtrace::trace_unsynchronized::h2da071e4327ce3ee
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x57a0482e2c5a - std::sys::backtrace::_print_fmt::h842a1474e6f8d23f
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x57a0482e2c5a - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h71a62eb3b9696b12
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x57a048300f23 - core::fmt::rt::Argument::fmt::hdb6b616786b41dc1
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/fmt/rt.rs:177:76
[INFO] [stdout]    5:     0x57a048300f23 - core::fmt::write::h2cc1698af7e2d686
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/fmt/mod.rs:1440:21
[INFO] [stdout]    6:     0x57a0482dfeb3 - std::io::Write::write_fmt::h00c8700df393f328
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/io/mod.rs:1887:15
[INFO] [stdout]    7:     0x57a0482e2aa2 - std::sys::backtrace::BacktraceLock::print::h147fe35b4ea13b08
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    8:     0x57a0482e39ff - std::panicking::default_hook::{{closure}}::hbd44223dbdc0d208
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:298:22
[INFO] [stdout]    9:     0x57a0482e386a - std::panicking::default_hook::h20f81eb0576efcec
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:325:9
[INFO] [stdout]   10:     0x57a0482e43e2 - std::panicking::rust_panic_with_hook::h625eea43051b2edc
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:831:13
[INFO] [stdout]   11:     0x57a0482e416a - std::panicking::begin_panic_handler::{{closure}}::h4f9159cfbc3f6bd3
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:704:13
[INFO] [stdout]   12:     0x57a0482e3159 - std::sys::backtrace::__rust_end_short_backtrace::h0390abce48353151
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:168:18
[INFO] [stdout]   13:     0x57a0482e3dfd - rust_begin_unwind
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:695:5
[INFO] [stdout]   14:     0x57a048300000 - core::panicking::panic_fmt::h9e7c637e9e5f29c9
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/panicking.rs:75:14
[INFO] [stdout]   15:     0x57a048275ce8 - glfw::fail_on_errors::h85560993361691c9
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/lib.rs:637:5
[INFO] [stdout]   16:     0x57a04826212a - quaturn::Engine::init::{{closure}}::ha5eb231ef65592f8
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/lib.rs:645:13
[INFO] [stdout]   17:     0x57a04827f090 - <alloc::boxed::Box<F,A> as core::ops::function::FnMut<Args>>::call_mut::hb31bb454ee311fc6
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/alloc/src/boxed.rs:2020:9
[INFO] [stdout]   18:     0x57a04827f28e - glfw::callbacks::error::callback::{{closure}}::h1f05e7d6242fa184
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/callbacks.rs:50:50
[INFO] [stdout]   19:     0x57a048280d8d - std::thread::local::LocalKey<T>::try_with::h7f6e7be59580d80a
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/thread/local.rs:308:12
[INFO] [stdout]   20:     0x57a048280a78 - std::thread::local::LocalKey<T>::with::h5daac6165751b0e9
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/thread/local.rs:272:9
[INFO] [stdout]   21:     0x57a04827f167 - glfw::callbacks::error::callback::ha96c5b5a570df3c1
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/callbacks.rs:48:13
[INFO] [stdout]   22:     0x57a048292893 - _glfwInputError
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-sys-5.0.0+3.3.9/glfw/src/init.c:311:9
[INFO] [stdout]   23:     0x57a048298318 - _glfwPlatformInit
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-sys-5.0.0+3.3.9/glfw/src/x11_init.c:1116:13
[INFO] [stdout]   24:     0x57a048292907 - glfwInit
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-sys-5.0.0+3.3.9/glfw/src/init.c:327:10
[INFO] [stdout]   25:     0x57a048275d17 - glfw::init_no_callbacks::hbc65f7c0d07a5d52
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/lib.rs:1079:17
[INFO] [stdout]   26:     0x57a048264a5d - glfw::init::h28d0c569ebbc18c6
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/lib.rs:1072:5
[INFO] [stdout]   27:     0x57a048261c01 - quaturn::Engine::init::hc08b6297492f993d
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:55:24
[INFO] [stdout]   28:     0x57a048261689 - rust_out::main::_doctest_main_src_lib_rs_49_0::h2b44ac536fc2e93e
[INFO] [stdout]   29:     0x57a048261656 - rust_out::main::he88f0b9b281d54e0
[INFO] [stdout]   30:     0x57a0482613c3 - core::ops::function::FnOnce::call_once::hcf3829d8b58d0254
[INFO] [stdout]   31:     0x57a0482613a6 - std::sys::backtrace::__rust_begin_short_backtrace::h5e1527399e8d5bd4
[INFO] [stdout]   32:     0x57a048261389 - std::rt::lang_start::{{closure}}::h2c234101ed7b1b74
[INFO] [stdout]   33:     0x57a0482dd610 - core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once::h1b085b6c1d2518b2
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/ops/function.rs:284:13
[INFO] [stdout]   34:     0x57a0482dd610 - std::panicking::try::do_call::h382f964a5a23b565
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:587:40
[INFO] [stdout]   35:     0x57a0482dd610 - std::panicking::try::h57f991055eb622f9
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:550:19
[INFO] [stdout]   36:     0x57a0482dd610 - std::panic::catch_unwind::h4d9a74ef04456343
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panic.rs:358:14
[INFO] [stdout]   37:     0x57a0482dd610 - std::rt::lang_start_internal::{{closure}}::h2faa8ae84a93f314
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/rt.rs:163:24
[INFO] [stdout]   38:     0x57a0482dd610 - std::panicking::try::do_call::h0f8932bf638a9bf5
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:587:40
[INFO] [stdout]   39:     0x57a0482dd610 - std::panicking::try::h683416ea756b175d
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:550:19
[INFO] [stdout]   40:     0x57a0482dd610 - std::panic::catch_unwind::h56189fac8994979f
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panic.rs:358:14
[INFO] [stdout]   41:     0x57a0482dd610 - std::rt::lang_start_internal::h8bbc1061691274fe
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/rt.rs:159:5
[INFO] [stdout]   42:     0x57a048261371 - std::rt::lang_start::h601b10a269c70ef7
[INFO] [stdout]   43:     0x57a0482616b5 - main
[INFO] [stdout]   44:     0x749f64f07d90 - <unknown>
[INFO] [stdout]   45:     0x749f64f07e40 - __libc_start_main
[INFO] [stdout]   46:     0x57a048261285 - _start
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] thread 'main' panicked at library/core/src/panicking.rs:218:5:
[INFO] [stdout] panic in a function that cannot unwind
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x57a0482e2c5a - std::backtrace_rs::backtrace::libunwind::trace::hb059275cfc8d6126
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/../../backtrace/src/backtrace/libunwind.rs:116:5
[INFO] [stdout]    1:     0x57a0482e2c5a - std::backtrace_rs::backtrace::trace_unsynchronized::h2da071e4327ce3ee
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x57a0482e2c5a - std::sys::backtrace::_print_fmt::h842a1474e6f8d23f
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x57a0482e2c5a - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h71a62eb3b9696b12
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x57a048300f23 - core::fmt::rt::Argument::fmt::hdb6b616786b41dc1
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/fmt/rt.rs:177:76
[INFO] [stdout]    5:     0x57a048300f23 - core::fmt::write::h2cc1698af7e2d686
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/fmt/mod.rs:1440:21
[INFO] [stdout]    6:     0x57a0482dfeb3 - std::io::Write::write_fmt::h00c8700df393f328
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/io/mod.rs:1887:15
[INFO] [stdout]    7:     0x57a0482e2aa2 - std::sys::backtrace::BacktraceLock::print::h147fe35b4ea13b08
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    8:     0x57a0482e39ff - std::panicking::default_hook::{{closure}}::hbd44223dbdc0d208
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:298:22
[INFO] [stdout]    9:     0x57a0482e386a - std::panicking::default_hook::h20f81eb0576efcec
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:325:9
[INFO] [stdout]   10:     0x57a0482e43e2 - std::panicking::rust_panic_with_hook::h625eea43051b2edc
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:831:13
[INFO] [stdout]   11:     0x57a0482e4136 - std::panicking::begin_panic_handler::{{closure}}::h4f9159cfbc3f6bd3
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:697:13
[INFO] [stdout]   12:     0x57a0482e3159 - std::sys::backtrace::__rust_end_short_backtrace::h0390abce48353151
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:168:18
[INFO] [stdout]   13:     0x57a0482e3dfd - rust_begin_unwind
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:695:5
[INFO] [stdout]   14:     0x57a04830003d - core::panicking::panic_nounwind_fmt::runtime::hff07b4bc76d03a4c
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/panicking.rs:117:22
[INFO] [stdout]   15:     0x57a04830003d - core::panicking::panic_nounwind_fmt::hbd5e8c40c5ce07f6
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/intrinsics/mod.rs:3861:9
[INFO] [stdout]   16:     0x57a0483000d2 - core::panicking::panic_nounwind::h87bcbf062a0b0104
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/panicking.rs:218:5
[INFO] [stdout]   17:     0x57a048300235 - core::panicking::panic_cannot_unwind::hdb020f8a902d0074
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/panicking.rs:307:5
[INFO] [stdout]   18:     0x57a04827f172 - glfw::callbacks::error::callback::ha96c5b5a570df3c1
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/callbacks.rs:47:9
[INFO] [stdout]   19:     0x57a048292893 - _glfwInputError
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-sys-5.0.0+3.3.9/glfw/src/init.c:311:9
[INFO] [stdout]   20:     0x57a048298318 - _glfwPlatformInit
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-sys-5.0.0+3.3.9/glfw/src/x11_init.c:1116:13
[INFO] [stdout]   21:     0x57a048292907 - glfwInit
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-sys-5.0.0+3.3.9/glfw/src/init.c:327:10
[INFO] [stdout]   22:     0x57a048275d17 - glfw::init_no_callbacks::hbc65f7c0d07a5d52
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/lib.rs:1079:17
[INFO] [stdout]   23:     0x57a048264a5d - glfw::init::h28d0c569ebbc18c6
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/lib.rs:1072:5
[INFO] [stdout]   24:     0x57a048261c01 - quaturn::Engine::init::hc08b6297492f993d
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:55:24
[INFO] [stdout]   25:     0x57a048261689 - rust_out::main::_doctest_main_src_lib_rs_49_0::h2b44ac536fc2e93e
[INFO] [stdout]   26:     0x57a048261656 - rust_out::main::he88f0b9b281d54e0
[INFO] [stdout]   27:     0x57a0482613c3 - core::ops::function::FnOnce::call_once::hcf3829d8b58d0254
[INFO] [stdout]   28:     0x57a0482613a6 - std::sys::backtrace::__rust_begin_short_backtrace::h5e1527399e8d5bd4
[INFO] [stdout]   29:     0x57a048261389 - std::rt::lang_start::{{closure}}::h2c234101ed7b1b74
[INFO] [stdout]   30:     0x57a0482dd610 - core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once::h1b085b6c1d2518b2
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/ops/function.rs:284:13
[INFO] [stdout]   31:     0x57a0482dd610 - std::panicking::try::do_call::h382f964a5a23b565
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:587:40
[INFO] [stdout]   32:     0x57a0482dd610 - std::panicking::try::h57f991055eb622f9
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:550:19
[INFO] [stdout]   33:     0x57a0482dd610 - std::panic::catch_unwind::h4d9a74ef04456343
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panic.rs:358:14
[INFO] [stdout]   34:     0x57a0482dd610 - std::rt::lang_start_internal::{{closure}}::h2faa8ae84a93f314
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/rt.rs:163:24
[INFO] [stdout]   35:     0x57a0482dd610 - std::panicking::try::do_call::h0f8932bf638a9bf5
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:587:40
[INFO] [stdout]   36:     0x57a0482dd610 - std::panicking::try::h683416ea756b175d
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:550:19
[INFO] [stdout]   37:     0x57a0482dd610 - std::panic::catch_unwind::h56189fac8994979f
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panic.rs:358:14
[INFO] [stdout]   38:     0x57a0482dd610 - std::rt::lang_start_internal::h8bbc1061691274fe
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/rt.rs:159:5
[INFO] [stdout]   39:     0x57a048261371 - std::rt::lang_start::h601b10a269c70ef7
[INFO] [stdout]   40:     0x57a0482616b5 - main
[INFO] [stdout]   41:     0x749f64f07d90 - <unknown>
[INFO] [stdout]   42:     0x749f64f07e40 - __libc_start_main
[INFO] [stdout]   43:     0x57a048261285 - _start
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] thread caused non-unwinding panic. aborting.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] ---- src/lib.rs - Engine::set_clear_color (line 108) stdout ----
[INFO] [stdout] Test executable failed (signal: 6 (SIGABRT) (core dumped)).
[INFO] [stdout] 
[INFO] [stdout] stderr:
[INFO] [stdout] 
[INFO] [stdout] thread 'main' panicked at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/lib.rs:637:5:
[INFO] [stdout] GLFW Error: X11: The DISPLAY environment variable is missing
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x598dd455de1a - std::backtrace_rs::backtrace::libunwind::trace::hb059275cfc8d6126
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/../../backtrace/src/backtrace/libunwind.rs:116:5
[INFO] [stdout]    1:     0x598dd455de1a - std::backtrace_rs::backtrace::trace_unsynchronized::h2da071e4327ce3ee
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x598dd455de1a - std::sys::backtrace::_print_fmt::h842a1474e6f8d23f
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x598dd455de1a - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h71a62eb3b9696b12
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x598dd457c0e3 - core::fmt::rt::Argument::fmt::hdb6b616786b41dc1
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/fmt/rt.rs:177:76
[INFO] [stdout]    5:     0x598dd457c0e3 - core::fmt::write::h2cc1698af7e2d686
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/fmt/mod.rs:1440:21
[INFO] [stdout]    6:     0x598dd455b073 - std::io::Write::write_fmt::h00c8700df393f328
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/io/mod.rs:1887:15
[INFO] [stdout]    7:     0x598dd455dc62 - std::sys::backtrace::BacktraceLock::print::h147fe35b4ea13b08
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    8:     0x598dd455ebbf - std::panicking::default_hook::{{closure}}::hbd44223dbdc0d208
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:298:22
[INFO] [stdout]    9:     0x598dd455ea2a - std::panicking::default_hook::h20f81eb0576efcec
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:325:9
[INFO] [stdout]   10:     0x598dd455f5a2 - std::panicking::rust_panic_with_hook::h625eea43051b2edc
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:831:13
[INFO] [stdout]   11:     0x598dd455f32a - std::panicking::begin_panic_handler::{{closure}}::h4f9159cfbc3f6bd3
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:704:13
[INFO] [stdout]   12:     0x598dd455e319 - std::sys::backtrace::__rust_end_short_backtrace::h0390abce48353151
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:168:18
[INFO] [stdout]   13:     0x598dd455efbd - rust_begin_unwind
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:695:5
[INFO] [stdout]   14:     0x598dd457b1c0 - core::panicking::panic_fmt::h9e7c637e9e5f29c9
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/panicking.rs:75:14
[INFO] [stdout]   15:     0x598dd44f0ea8 - glfw::fail_on_errors::h85560993361691c9
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/lib.rs:637:5
[INFO] [stdout]   16:     0x598dd44dd29a - quaturn::Engine::init::{{closure}}::ha5eb231ef65592f8
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/lib.rs:645:13
[INFO] [stdout]   17:     0x598dd44fa250 - <alloc::boxed::Box<F,A> as core::ops::function::FnMut<Args>>::call_mut::hb31bb454ee311fc6
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/alloc/src/boxed.rs:2020:9
[INFO] [stdout]   18:     0x598dd44fa44e - glfw::callbacks::error::callback::{{closure}}::h1f05e7d6242fa184
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/callbacks.rs:50:50
[INFO] [stdout]   19:     0x598dd44fbf4d - std::thread::local::LocalKey<T>::try_with::h7f6e7be59580d80a
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/thread/local.rs:308:12
[INFO] [stdout]   20:     0x598dd44fbc38 - std::thread::local::LocalKey<T>::with::h5daac6165751b0e9
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/thread/local.rs:272:9
[INFO] [stdout]   21:     0x598dd44fa327 - glfw::callbacks::error::callback::ha96c5b5a570df3c1
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/callbacks.rs:48:13
[INFO] [stdout]   22:     0x598dd450da53 - _glfwInputError
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-sys-5.0.0+3.3.9/glfw/src/init.c:311:9
[INFO] [stdout]   23:     0x598dd45134d8 - _glfwPlatformInit
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-sys-5.0.0+3.3.9/glfw/src/x11_init.c:1116:13
[INFO] [stdout]   24:     0x598dd450dac7 - glfwInit
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-sys-5.0.0+3.3.9/glfw/src/init.c:327:10
[INFO] [stdout]   25:     0x598dd44f0ed7 - glfw::init_no_callbacks::hbc65f7c0d07a5d52
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/lib.rs:1079:17
[INFO] [stdout]   26:     0x598dd44dfbcd - glfw::init::h28d0c569ebbc18c6
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/lib.rs:1072:5
[INFO] [stdout]   27:     0x598dd44dcd21 - quaturn::Engine::init::hc08b6297492f993d
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:55:24
[INFO] [stdout]   28:     0x598dd44dc750 - rust_out::main::_doctest_main_src_lib_rs_108_0::h4b9f9853025621a8
[INFO] [stdout]   29:     0x598dd44dc716 - rust_out::main::he88f0b9b281d54e0
[INFO] [stdout]   30:     0x598dd44dc483 - core::ops::function::FnOnce::call_once::hcf3829d8b58d0254
[INFO] [stdout]   31:     0x598dd44dc466 - std::sys::backtrace::__rust_begin_short_backtrace::h5e1527399e8d5bd4
[INFO] [stdout]   32:     0x598dd44dc449 - std::rt::lang_start::{{closure}}::h2c234101ed7b1b74
[INFO] [stdout]   33:     0x598dd45587d0 - core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once::h1b085b6c1d2518b2
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/ops/function.rs:284:13
[INFO] [stdout]   34:     0x598dd45587d0 - std::panicking::try::do_call::h382f964a5a23b565
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:587:40
[INFO] [stdout]   35:     0x598dd45587d0 - std::panicking::try::h57f991055eb622f9
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:550:19
[INFO] [stdout]   36:     0x598dd45587d0 - std::panic::catch_unwind::h4d9a74ef04456343
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panic.rs:358:14
[INFO] [stdout]   37:     0x598dd45587d0 - std::rt::lang_start_internal::{{closure}}::h2faa8ae84a93f314
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/rt.rs:163:24
[INFO] [stdout]   38:     0x598dd45587d0 - std::panicking::try::do_call::h0f8932bf638a9bf5
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:587:40
[INFO] [stdout]   39:     0x598dd45587d0 - std::panicking::try::h683416ea756b175d
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:550:19
[INFO] [stdout]   40:     0x598dd45587d0 - std::panic::catch_unwind::h56189fac8994979f
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panic.rs:358:14
[INFO] [stdout]   41:     0x598dd45587d0 - std::rt::lang_start_internal::h8bbc1061691274fe
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/rt.rs:159:5
[INFO] [stdout]   42:     0x598dd44dc431 - std::rt::lang_start::h601b10a269c70ef7
[INFO] [stdout]   43:     0x598dd44dc7d5 - main
[INFO] [stdout]   44:     0x7d61b0787d90 - <unknown>
[INFO] [stdout]   45:     0x7d61b0787e40 - __libc_start_main
[INFO] [stdout]   46:     0x598dd44dc345 - _start
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] thread 'main' panicked at library/core/src/panicking.rs:218:5:
[INFO] [stdout] panic in a function that cannot unwind
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x598dd455de1a - std::backtrace_rs::backtrace::libunwind::trace::hb059275cfc8d6126
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/../../backtrace/src/backtrace/libunwind.rs:116:5
[INFO] [stdout]    1:     0x598dd455de1a - std::backtrace_rs::backtrace::trace_unsynchronized::h2da071e4327ce3ee
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x598dd455de1a - std::sys::backtrace::_print_fmt::h842a1474e6f8d23f
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x598dd455de1a - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h71a62eb3b9696b12
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x598dd457c0e3 - core::fmt::rt::Argument::fmt::hdb6b616786b41dc1
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/fmt/rt.rs:177:76
[INFO] [stdout]    5:     0x598dd457c0e3 - core::fmt::write::h2cc1698af7e2d686
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/fmt/mod.rs:1440:21
[INFO] [stdout]    6:     0x598dd455b073 - std::io::Write::write_fmt::h00c8700df393f328
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/io/mod.rs:1887:15
[INFO] [stdout]    7:     0x598dd455dc62 - std::sys::backtrace::BacktraceLock::print::h147fe35b4ea13b08
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    8:     0x598dd455ebbf - std::panicking::default_hook::{{closure}}::hbd44223dbdc0d208
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:298:22
[INFO] [stdout]    9:     0x598dd455ea2a - std::panicking::default_hook::h20f81eb0576efcec
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:325:9
[INFO] [stdout]   10:     0x598dd455f5a2 - std::panicking::rust_panic_with_hook::h625eea43051b2edc
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:831:13
[INFO] [stdout]   11:     0x598dd455f2f6 - std::panicking::begin_panic_handler::{{closure}}::h4f9159cfbc3f6bd3
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:697:13
[INFO] [stdout]   12:     0x598dd455e319 - std::sys::backtrace::__rust_end_short_backtrace::h0390abce48353151
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/sys/backtrace.rs:168:18
[INFO] [stdout]   13:     0x598dd455efbd - rust_begin_unwind
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:695:5
[INFO] [stdout]   14:     0x598dd457b1fd - core::panicking::panic_nounwind_fmt::runtime::hff07b4bc76d03a4c
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/panicking.rs:117:22
[INFO] [stdout]   15:     0x598dd457b1fd - core::panicking::panic_nounwind_fmt::hbd5e8c40c5ce07f6
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/intrinsics/mod.rs:3861:9
[INFO] [stdout]   16:     0x598dd457b292 - core::panicking::panic_nounwind::h87bcbf062a0b0104
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/panicking.rs:218:5
[INFO] [stdout]   17:     0x598dd457b3f5 - core::panicking::panic_cannot_unwind::hdb020f8a902d0074
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/panicking.rs:307:5
[INFO] [stdout]   18:     0x598dd44fa332 - glfw::callbacks::error::callback::ha96c5b5a570df3c1
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/callbacks.rs:47:9
[INFO] [stdout]   19:     0x598dd450da53 - _glfwInputError
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-sys-5.0.0+3.3.9/glfw/src/init.c:311:9
[INFO] [stdout]   20:     0x598dd45134d8 - _glfwPlatformInit
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-sys-5.0.0+3.3.9/glfw/src/x11_init.c:1116:13
[INFO] [stdout]   21:     0x598dd450dac7 - glfwInit
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-sys-5.0.0+3.3.9/glfw/src/init.c:327:10
[INFO] [stdout]   22:     0x598dd44f0ed7 - glfw::init_no_callbacks::hbc65f7c0d07a5d52
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/lib.rs:1079:17
[INFO] [stdout]   23:     0x598dd44dfbcd - glfw::init::h28d0c569ebbc18c6
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/glfw-0.59.0/src/lib.rs:1072:5
[INFO] [stdout]   24:     0x598dd44dcd21 - quaturn::Engine::init::hc08b6297492f993d
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:55:24
[INFO] [stdout]   25:     0x598dd44dc750 - rust_out::main::_doctest_main_src_lib_rs_108_0::h4b9f9853025621a8
[INFO] [stdout]   26:     0x598dd44dc716 - rust_out::main::he88f0b9b281d54e0
[INFO] [stdout]   27:     0x598dd44dc483 - core::ops::function::FnOnce::call_once::hcf3829d8b58d0254
[INFO] [stdout]   28:     0x598dd44dc466 - std::sys::backtrace::__rust_begin_short_backtrace::h5e1527399e8d5bd4
[INFO] [stdout]   29:     0x598dd44dc449 - std::rt::lang_start::{{closure}}::h2c234101ed7b1b74
[INFO] [stdout]   30:     0x598dd45587d0 - core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once::h1b085b6c1d2518b2
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/core/src/ops/function.rs:284:13
[INFO] [stdout]   31:     0x598dd45587d0 - std::panicking::try::do_call::h382f964a5a23b565
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:587:40
[INFO] [stdout]   32:     0x598dd45587d0 - std::panicking::try::h57f991055eb622f9
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:550:19
[INFO] [stdout]   33:     0x598dd45587d0 - std::panic::catch_unwind::h4d9a74ef04456343
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panic.rs:358:14
[INFO] [stdout]   34:     0x598dd45587d0 - std::rt::lang_start_internal::{{closure}}::h2faa8ae84a93f314
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/rt.rs:163:24
[INFO] [stdout]   35:     0x598dd45587d0 - std::panicking::try::do_call::h0f8932bf638a9bf5
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:587:40
[INFO] [stdout]   36:     0x598dd45587d0 - std::panicking::try::h683416ea756b175d
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panicking.rs:550:19
[INFO] [stdout]   37:     0x598dd45587d0 - std::panic::catch_unwind::h56189fac8994979f
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/panic.rs:358:14
[INFO] [stdout]   38:     0x598dd45587d0 - std::rt::lang_start_internal::h8bbc1061691274fe
[INFO] [stdout]                                at /rustc/6067b36314ab5eb2eb47cecc464545ba58e1ad24/library/std/src/rt.rs:159:5
[INFO] [stdout]   39:     0x598dd44dc431 - std::rt::lang_start::h601b10a269c70ef7
[INFO] [stdout]   40:     0x598dd44dc7d5 - main
[INFO] [stdout]   41:     0x7d61b0787d90 - <unknown>
[INFO] [stdout]   42:     0x7d61b0787e40 - __libc_start_main
[INFO] [stdout]   43:     0x598dd44dc345 - _start
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] thread caused non-unwinding panic. aborting.
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/context/node_manager.rs - context::node_manager (line 12)
[INFO] [stdout]     src/context/node_manager.rs - context::node_manager::Behavior (line 139)
[INFO] [stdout]     src/context/node_manager.rs - context::node_manager::NodeManager::add (line 492)
[INFO] [stdout]     src/context/node_manager.rs - context::node_manager::NodeManager::add_shader (line 625)
[INFO] [stdout]     src/context/node_manager.rs - context::node_manager::Ready (line 86)
[INFO] [stdout]     src/context/node_manager.rs - context::node_manager::Transformable::apply_transform (line 217)
[INFO] [stdout]     src/lib.rs - (line 104)
[INFO] [stdout]     src/lib.rs - (line 121)
[INFO] [stdout]     src/lib.rs - (line 137)
[INFO] [stdout]     src/lib.rs - (line 153)
[INFO] [stdout]     src/lib.rs - (line 163)
[INFO] [stdout]     src/lib.rs - (line 217)
[INFO] [stdout]     src/lib.rs - (line 26)
[INFO] [stdout]     src/lib.rs - (line 34)
[INFO] [stdout]     src/lib.rs - (line 61)
[INFO] [stdout]     src/lib.rs - (line 91)
[INFO] [stdout]     src/lib.rs - Engine::begin (line 122)
[INFO] [stdout]     src/lib.rs - Engine::init (line 49)
[INFO] [stdout]     src/lib.rs - Engine::set_clear_color (line 108)
[INFO] [stdout]     src/nodes/camera.rs - nodes::camera (line 7)
[INFO] [stdout]     src/nodes/directional_light.rs - nodes::directional_light (line 7)
[INFO] [stdout]     src/nodes/empty.rs - nodes::empty (line 4)
[INFO] [stdout]     src/nodes/model.rs - nodes::model (line 6)
[INFO] [stdout]     src/nodes/ui.rs - nodes::ui (line 9)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 1 passed; 24 failed; 2 ignored; 0 measured; 0 filtered out; finished in 2.29s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "e612396a60f7af94420f90b42b25a46f9219a123df7450249d2706210c64bbe2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e612396a60f7af94420f90b42b25a46f9219a123df7450249d2706210c64bbe2", kill_on_drop: false }`
[INFO] [stdout] e612396a60f7af94420f90b42b25a46f9219a123df7450249d2706210c64bbe2
