[INFO] fetching crate cuboid 0.1.0...
[INFO] testing cuboid-0.1.0 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7
[INFO] extracting crate cuboid 0.1.0 into /workspace/builds/worker-5-tc1/source
[INFO] started tweaking crates.io crate cuboid 0.1.0
[INFO] finished tweaking crates.io crate cuboid 0.1.0
[INFO] tweaked toml for crates.io crate cuboid 0.1.0 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate cuboid 0.1.0 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate cuboid 0.1.0 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" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded log v0.4.14
[INFO] [stderr]   Downloaded gl v0.14.0
[INFO] [stderr]   Downloaded cmake v0.1.48
[INFO] [stderr]   Downloaded raw-window-handle v0.4.2
[INFO] [stderr]   Downloaded cty v0.2.2
[INFO] [stderr]   Downloaded xml-rs v0.8.4
[INFO] [stderr]   Downloaded glfw v0.43.0
[INFO] [stderr]   Downloaded glfw-sys v3.3.5
[INFO] [stderr]   Downloaded libc v0.2.118
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] b8a726f3f319247719302000da89a9953d1be35dc3c944b6035175ce4054ba87
[INFO] running `Command { std: "docker" "start" "-a" "b8a726f3f319247719302000da89a9953d1be35dc3c944b6035175ce4054ba87", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b8a726f3f319247719302000da89a9953d1be35dc3c944b6035175ce4054ba87", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b8a726f3f319247719302000da89a9953d1be35dc3c944b6035175ce4054ba87", kill_on_drop: false }`
[INFO] [stdout] b8a726f3f319247719302000da89a9953d1be35dc3c944b6035175ce4054ba87
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 181a3937205839534fa3e92b47f81b899d33bc31b338a1ece4e63304e495f562
[INFO] running `Command { std: "docker" "start" "-a" "181a3937205839534fa3e92b47f81b899d33bc31b338a1ece4e63304e495f562", kill_on_drop: false }`
[INFO] [stderr]    Compiling log v0.4.14
[INFO] [stderr]    Compiling khronos_api v3.1.0
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling xml-rs v0.8.4
[INFO] [stderr]    Compiling cty v0.2.2
[INFO] [stderr]    Compiling cmake v0.1.48
[INFO] [stderr]    Compiling raw-window-handle v0.4.2
[INFO] [stderr]    Compiling glfw-sys v3.3.5
[INFO] [stderr]    Compiling gl_generator v0.14.0
[INFO] [stderr]    Compiling gl v0.14.0
[INFO] [stderr]    Compiling glfw v0.43.0
[INFO] [stderr]    Compiling cuboid v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]   --> src/io/cam_controller.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 |         key: glfw::Key,
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scancode`
[INFO] [stdout]   --> src/io/cam_controller.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |         scancode: glfw::Scancode,
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_scancode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `action`
[INFO] [stdout]   --> src/io/cam_controller.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |         action: glfw::Action,
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `modifiers`
[INFO] [stdout]   --> src/io/cam_controller.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |         modifiers: glfw::Modifiers,
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_modifiers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mouse_button`
[INFO] [stdout]   --> src/io/cam_controller.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |         mouse_button: glfw::MouseButton,
[INFO] [stdout]    |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mouse_button`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `action`
[INFO] [stdout]   --> src/io/cam_controller.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |         action: glfw::Action,
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `modifiers`
[INFO] [stdout]   --> src/io/cam_controller.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |         modifiers: glfw::Modifiers,
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_modifiers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/io/cam_controller.rs:43:43
[INFO] [stdout]    |
[INFO] [stdout] 43 |     fn handle_cursor_pos_event(&mut self, x: f64, y: f64) {}
[INFO] [stdout]    |                                           ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]   --> src/io/cam_controller.rs:43:51
[INFO] [stdout]    |
[INFO] [stdout] 43 |     fn handle_cursor_pos_event(&mut self, x: f64, y: f64) {}
[INFO] [stdout]    |                                                   ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `enter`
[INFO] [stdout]   --> src/io/cam_controller.rs:44:45
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn handle_cursor_enter_event(&mut self, enter: bool) {}
[INFO] [stdout]    |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_enter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]  --> src/components/material.rs:8:24
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub fn new(shader: &core::shader::Shader) -> Material {
[INFO] [stdout]   |                        ^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]   |                        |
[INFO] [stdout]   |                        the lifetime is elided here
[INFO] [stdout]   |
[INFO] [stdout]   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]   = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub fn new(shader: &core::shader::Shader) -> Material<'_> {
[INFO] [stdout]   |                                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: a dangling pointer will be produced because the temporary `String` will be dropped
[INFO] [stdout]  --> src/utils/str.rs:2:30
[INFO] [stdout]   |
[INFO] [stdout] 2 |     return append_null(name).as_ptr() as *const i8;
[INFO] [stdout]   |            ----------------- ^^^^^^ this pointer will immediately be invalid
[INFO] [stdout]   |            |
[INFO] [stdout]   |            this `String` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]   |
[INFO] [stdout]   = note: pointers do not have a lifetime; when calling `as_ptr` the `String` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]   = help: you must make sure that the variable you bind the `String` to lives at least as long as the pointer returned by the call to `as_ptr`
[INFO] [stdout]   = help: in particular, if this pointer is returned from the current function, binding the `String` inside the function will not suffice
[INFO] [stdout]   = help: for more information, see <https://doc.rust-lang.org/reference/destructors.html>
[INFO] [stdout]   = note: `#[warn(dangling_pointers_from_temporaries)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.36s
[INFO] running `Command { std: "docker" "inspect" "181a3937205839534fa3e92b47f81b899d33bc31b338a1ece4e63304e495f562", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "181a3937205839534fa3e92b47f81b899d33bc31b338a1ece4e63304e495f562", kill_on_drop: false }`
[INFO] [stdout] 181a3937205839534fa3e92b47f81b899d33bc31b338a1ece4e63304e495f562
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a00de3f1e9dedb5366ddd96847badb23a75a831d50ffc47c55b6ec491a615277
[INFO] running `Command { std: "docker" "start" "-a" "a00de3f1e9dedb5366ddd96847badb23a75a831d50ffc47c55b6ec491a615277", kill_on_drop: false }`
[INFO] [stderr]    Compiling cuboid v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]   --> src/io/cam_controller.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 |         key: glfw::Key,
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scancode`
[INFO] [stdout]   --> src/io/cam_controller.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |         scancode: glfw::Scancode,
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_scancode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `action`
[INFO] [stdout]   --> src/io/cam_controller.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |         action: glfw::Action,
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `modifiers`
[INFO] [stdout]   --> src/io/cam_controller.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |         modifiers: glfw::Modifiers,
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_modifiers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mouse_button`
[INFO] [stdout]   --> src/io/cam_controller.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |         mouse_button: glfw::MouseButton,
[INFO] [stdout]    |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mouse_button`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `action`
[INFO] [stdout]   --> src/io/cam_controller.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |         action: glfw::Action,
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `modifiers`
[INFO] [stdout]   --> src/io/cam_controller.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |         modifiers: glfw::Modifiers,
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_modifiers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/io/cam_controller.rs:43:43
[INFO] [stdout]    |
[INFO] [stdout] 43 |     fn handle_cursor_pos_event(&mut self, x: f64, y: f64) {}
[INFO] [stdout]    |                                           ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]   --> src/io/cam_controller.rs:43:51
[INFO] [stdout]    |
[INFO] [stdout] 43 |     fn handle_cursor_pos_event(&mut self, x: f64, y: f64) {}
[INFO] [stdout]    |                                                   ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `enter`
[INFO] [stdout]   --> src/io/cam_controller.rs:44:45
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn handle_cursor_enter_event(&mut self, enter: bool) {}
[INFO] [stdout]    |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_enter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]  --> src/components/material.rs:8:24
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub fn new(shader: &core::shader::Shader) -> Material {
[INFO] [stdout]   |                        ^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]   |                        |
[INFO] [stdout]   |                        the lifetime is elided here
[INFO] [stdout]   |
[INFO] [stdout]   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]   = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub fn new(shader: &core::shader::Shader) -> Material<'_> {
[INFO] [stdout]   |                                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: a dangling pointer will be produced because the temporary `String` will be dropped
[INFO] [stdout]  --> src/utils/str.rs:2:30
[INFO] [stdout]   |
[INFO] [stdout] 2 |     return append_null(name).as_ptr() as *const i8;
[INFO] [stdout]   |            ----------------- ^^^^^^ this pointer will immediately be invalid
[INFO] [stdout]   |            |
[INFO] [stdout]   |            this `String` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]   |
[INFO] [stdout]   = note: pointers do not have a lifetime; when calling `as_ptr` the `String` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]   = help: you must make sure that the variable you bind the `String` to lives at least as long as the pointer returned by the call to `as_ptr`
[INFO] [stdout]   = help: in particular, if this pointer is returned from the current function, binding the `String` inside the function will not suffice
[INFO] [stdout]   = help: for more information, see <https://doc.rust-lang.org/reference/destructors.html>
[INFO] [stdout]   = note: `#[warn(dangling_pointers_from_temporaries)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `shiny`
[INFO] [stdout]   --> examples/basic_example/main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use shiny::components::{
[INFO] [stdout]    |     ^^^^^ use of unresolved module or unlinked crate `shiny`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `shiny`, use `cargo add shiny` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `shiny`
[INFO] [stdout]   --> examples/basic_example/main.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use shiny::core::shader::Shader;
[INFO] [stdout]    |     ^^^^^ use of unresolved module or unlinked crate `shiny`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `shiny`, use `cargo add shiny` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `shiny`
[INFO] [stdout]   --> examples/basic_example/main.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use shiny::io::cam_controller::CameraController;
[INFO] [stdout]    |     ^^^^^ use of unresolved module or unlinked crate `shiny`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `shiny`, use `cargo add shiny` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `shiny`
[INFO] [stdout]   --> examples/basic_example/main.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use shiny::utils::{conversions, init, math::linalg, types};
[INFO] [stdout]    |     ^^^^^ use of unresolved module or unlinked crate `shiny`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `shiny`, use `cargo add shiny` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action` and `Key`
[INFO] [stdout]  --> examples/basic_example/main.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | use glfw::{Action, Context, Key};
[INFO] [stdout]   |            ^^^^^^           ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `cuboid` (example "basic_example") due to 4 previous errors; 1 warning emitted
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]   --> src/io/cam_controller.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 |         key: glfw::Key,
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scancode`
[INFO] [stdout]   --> src/io/cam_controller.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |         scancode: glfw::Scancode,
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_scancode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `action`
[INFO] [stdout]   --> src/io/cam_controller.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |         action: glfw::Action,
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `modifiers`
[INFO] [stdout]   --> src/io/cam_controller.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |         modifiers: glfw::Modifiers,
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_modifiers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mouse_button`
[INFO] [stdout]   --> src/io/cam_controller.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |         mouse_button: glfw::MouseButton,
[INFO] [stdout]    |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mouse_button`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `action`
[INFO] [stdout]   --> src/io/cam_controller.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |         action: glfw::Action,
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `modifiers`
[INFO] [stdout]   --> src/io/cam_controller.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |         modifiers: glfw::Modifiers,
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_modifiers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/io/cam_controller.rs:43:43
[INFO] [stdout]    |
[INFO] [stdout] 43 |     fn handle_cursor_pos_event(&mut self, x: f64, y: f64) {}
[INFO] [stdout]    |                                           ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]   --> src/io/cam_controller.rs:43:51
[INFO] [stdout]    |
[INFO] [stdout] 43 |     fn handle_cursor_pos_event(&mut self, x: f64, y: f64) {}
[INFO] [stdout]    |                                                   ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `enter`
[INFO] [stdout]   --> src/io/cam_controller.rs:44:45
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn handle_cursor_enter_event(&mut self, enter: bool) {}
[INFO] [stdout]    |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_enter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]  --> src/components/material.rs:8:24
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub fn new(shader: &core::shader::Shader) -> Material {
[INFO] [stdout]   |                        ^^^^^^^^^^^^^^^^^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]   |                        |
[INFO] [stdout]   |                        the lifetime is elided here
[INFO] [stdout]   |
[INFO] [stdout]   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]   = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub fn new(shader: &core::shader::Shader) -> Material<'_> {
[INFO] [stdout]   |                                                          ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: a dangling pointer will be produced because the temporary `String` will be dropped
[INFO] [stdout]  --> src/utils/str.rs:2:30
[INFO] [stdout]   |
[INFO] [stdout] 2 |     return append_null(name).as_ptr() as *const i8;
[INFO] [stdout]   |            ----------------- ^^^^^^ this pointer will immediately be invalid
[INFO] [stdout]   |            |
[INFO] [stdout]   |            this `String` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout]   |
[INFO] [stdout]   = note: pointers do not have a lifetime; when calling `as_ptr` the `String` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]   = help: you must make sure that the variable you bind the `String` to lives at least as long as the pointer returned by the call to `as_ptr`
[INFO] [stdout]   = help: in particular, if this pointer is returned from the current function, binding the `String` inside the function will not suffice
[INFO] [stdout]   = help: for more information, see <https://doc.rust-lang.org/reference/destructors.html>
[INFO] [stdout]   = note: `#[warn(dangling_pointers_from_temporaries)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "a00de3f1e9dedb5366ddd96847badb23a75a831d50ffc47c55b6ec491a615277", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a00de3f1e9dedb5366ddd96847badb23a75a831d50ffc47c55b6ec491a615277", kill_on_drop: false }`
[INFO] [stdout] a00de3f1e9dedb5366ddd96847badb23a75a831d50ffc47c55b6ec491a615277
