[INFO] cloning repository https://github.com/archambaultkm/RustWorld
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/archambaultkm/RustWorld" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Farchambaultkm%2FRustWorld", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Farchambaultkm%2FRustWorld'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] f982fcf7c4320ca4c4ac3ce84e8f7277b8e771c8
[INFO] building archambaultkm/RustWorld against master#ad85bc524b1ad696e42061ad8338d382dffbdbe5 for pr-146237-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Farchambaultkm%2FRustWorld" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/archambaultkm/RustWorld
[INFO] finished tweaking git repo https://github.com/archambaultkm/RustWorld
[INFO] tweaked toml for git repo https://github.com/archambaultkm/RustWorld written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/archambaultkm/RustWorld on toolchain ad85bc524b1ad696e42061ad8338d382dffbdbe5
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/archambaultkm/RustWorld 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" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded serde_derive v1.0.189
[INFO] [stderr]   Downloaded thiserror-impl v1.0.49
[INFO] [stderr]   Downloaded num-rational v0.1.42
[INFO] [stderr]   Downloaded cgmath v0.18.0
[INFO] [stderr]   Downloaded thiserror v1.0.49
[INFO] [stderr]   Downloaded png v0.12.0
[INFO] [stderr]   Downloaded serde v1.0.189
[INFO] [stderr]   Downloaded image v0.19.0
[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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 531380b88aa74ac74aefed8a1efca32417ee6c666bddf5588fe2b67311b89f3c
[INFO] running `Command { std: "docker" "start" "-a" "531380b88aa74ac74aefed8a1efca32417ee6c666bddf5588fe2b67311b89f3c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "531380b88aa74ac74aefed8a1efca32417ee6c666bddf5588fe2b67311b89f3c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "531380b88aa74ac74aefed8a1efca32417ee6c666bddf5588fe2b67311b89f3c", kill_on_drop: false }`
[INFO] [stdout] 531380b88aa74ac74aefed8a1efca32417ee6c666bddf5588fe2b67311b89f3c
[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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a6f7208ea3df23e4b29a2c6718a990d5607e688b6cc92988235127198d092b80
[INFO] running `Command { std: "docker" "start" "-a" "a6f7208ea3df23e4b29a2c6718a990d5607e688b6cc92988235127198d092b80", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.149
[INFO] [stderr]    Compiling xml-rs v0.8.19
[INFO] [stderr]    Compiling proc-macro2 v1.0.69
[INFO] [stderr]    Compiling pkg-config v0.3.27
[INFO] [stderr]    Compiling libloading v0.8.1
[INFO] [stderr]    Compiling num-traits v0.2.17
[INFO] [stderr]    Compiling once_cell v1.18.0
[INFO] [stderr]    Compiling smallvec v1.11.1
[INFO] [stderr]    Compiling memoffset v0.9.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.16
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.15
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]    Compiling memchr v2.6.4
[INFO] [stderr]    Compiling ab_glyph_rasterizer v0.1.8
[INFO] [stderr]    Compiling rayon-core v1.12.0
[INFO] [stderr]    Compiling libloading v0.6.7
[INFO] [stderr]    Compiling rusttype v0.9.3
[INFO] [stderr]    Compiling num-iter v0.1.43
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stderr]    Compiling dlib v0.4.2
[INFO] [stderr]    Compiling serde v1.0.189
[INFO] [stderr]    Compiling dlib v0.5.2
[INFO] [stderr]    Compiling either v1.9.0
[INFO] [stderr]    Compiling deflate v0.7.20
[INFO] [stderr]    Compiling percent-encoding v2.3.0
[INFO] [stderr]    Compiling cgmath v0.18.0
[INFO] [stderr]    Compiling serde_json v1.0.107
[INFO] [stderr]    Compiling ryu v1.0.15
[INFO] [stderr]    Compiling itoa v1.0.9
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling wayland-sys v0.28.6
[INFO] [stderr]    Compiling x11-dl v2.21.0
[INFO] [stderr]    Compiling gl_generator v0.14.0
[INFO] [stderr]    Compiling andrew v0.3.1
[INFO] [stderr]    Compiling crossbeam-deque v0.8.3
[INFO] [stderr]    Compiling quote v1.0.33
[INFO] [stderr]    Compiling wayland-scanner v0.28.6
[INFO] [stderr]    Compiling syn v2.0.38
[INFO] [stderr]    Compiling approx v0.4.0
[INFO] [stderr]    Compiling glutin_glx_sys v0.1.8
[INFO] [stderr]    Compiling glutin_egl_sys v0.1.6
[INFO] [stderr]    Compiling gl v0.14.0
[INFO] [stderr]    Compiling rayon v1.8.0
[INFO] [stderr]    Compiling num-rational v0.1.42
[INFO] [stderr]    Compiling png v0.12.0
[INFO] [stderr]    Compiling nix v0.20.0
[INFO] [stderr]    Compiling getrandom v0.1.16
[INFO] [stderr]    Compiling net2 v0.2.39
[INFO] [stderr]    Compiling nix v0.18.0
[INFO] [stderr]    Compiling iovec v0.1.4
[INFO] [stderr]    Compiling parking_lot_core v0.8.6
[INFO] [stderr]    Compiling wayland-client v0.28.6
[INFO] [stderr]    Compiling wayland-protocols v0.28.6
[INFO] [stderr]    Compiling memmap2 v0.1.0
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling parking_lot v0.11.2
[INFO] [stderr]    Compiling mio v0.6.23
[INFO] [stderr]    Compiling raw-window-handle v0.3.4
[INFO] [stderr]    Compiling xcursor v0.3.4
[INFO] [stderr]    Compiling shared_library v0.1.9
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling rand_xorshift v0.2.0
[INFO] [stderr]    Compiling osmesa-sys v0.1.2
[INFO] [stderr]    Compiling num-derive v0.2.5
[INFO] [stderr]    Compiling mio-extras v2.0.6
[INFO] [stderr]    Compiling serde_derive v1.0.189
[INFO] [stderr]    Compiling jpeg-decoder v0.1.22
[INFO] [stderr]    Compiling noise v0.8.2
[INFO] [stderr]    Compiling image v0.19.0
[INFO] [stderr]    Compiling wayland-commons v0.28.6
[INFO] [stderr]    Compiling calloop v0.6.5
[INFO] [stderr]    Compiling wayland-cursor v0.28.6
[INFO] [stderr]    Compiling wayland-egl v0.28.6
[INFO] [stderr]    Compiling smithay-client-toolkit v0.12.3
[INFO] [stderr]    Compiling winit v0.24.0
[INFO] [stderr]    Compiling glutin v0.26.0
[INFO] [stderr]    Compiling RustWorld v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: type `Camera_Movement` should have an upper camel case name
[INFO] [stdout]   --> src/core/camera.rs:12:10
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub enum Camera_Movement {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CameraMovement`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CHUNK_SIZE` and `MAX_CHUNK_HEIGHT`
[INFO] [stdout]  --> src/core/game.rs:6:25
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::game_specs::{CHUNK_SIZE, MAX_CHUNK_HEIGHT};
[INFO] [stdout]   |                         ^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `glutin::dpi::LogicalSize`
[INFO] [stdout]  --> src/core/game_window.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use glutin::dpi::LogicalSize;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `NoiseFn` and `OpenSimplex`
[INFO] [stdout]  --> src/creation/chunk.rs:2:13
[INFO] [stdout]   |
[INFO] [stdout] 2 | use noise::{NoiseFn, OpenSimplex};
[INFO] [stdout]   |             ^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MIN_CHUNK_HEIGHT`
[INFO] [stdout]  --> src/creation/chunk.rs:5:55
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::game_specs::{CHUNK_SIZE, MAX_CHUNK_HEIGHT, MIN_CHUNK_HEIGHT};
[INFO] [stdout]   |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `vec3`
[INFO] [stdout]  --> src/creation/cube.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use cgmath::{vec3, Vector3};
[INFO] [stdout]   |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Vector4`
[INFO] [stdout]  --> src/rendering/shader.rs:4:38
[INFO] [stdout]   |
[INFO] [stdout] 4 | use cgmath::{Array, Matrix, Matrix4, Vector4};
[INFO] [stdout]   |                                      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ptr`
[INFO] [stdout]  --> src/rendering/mesh.rs:2:16
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::{mem, ptr};
[INFO] [stdout]   |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::creation::world::World`
[INFO] [stdout]  --> src/rendering/mesh.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::creation::world::World;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `cgmath::Matrix4::<S>::look_at`: Use Matrix4::look_at_rh
[INFO] [stdout]   --> src/core/camera.rs:67:18
[INFO] [stdout]    |
[INFO] [stdout] 67 |         Matrix4::look_at(self.position, self.position + self.front, self.up)
[INFO] [stdout]    |                  ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Array`
[INFO] [stdout]  --> src/rendering/shader.rs:4:14
[INFO] [stdout]   |
[INFO] [stdout] 4 | use cgmath::{Array, Matrix, Matrix4, Vector4};
[INFO] [stdout]   |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value captured by `delta_time` is never read
[INFO] [stdout]   --> src/core/game.rs:51:13
[INFO] [stdout]    |
[INFO] [stdout] 51 |             delta_time = current_frame_time.duration_since(last_frame_time);
[INFO] [stdout]    |             ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: did you mean to capture by reference instead?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/core/game.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |         let mut world = World::new();
[INFO] [stdout]    |             ----^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/core/game.rs:86:9
[INFO] [stdout]    |
[INFO] [stdout] 86 |     let mut model: Matrix4<f32> = Matrix4::from_translation(*position); //TODO
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/core/game_window.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 |         let mut first_mouse = true;
[INFO] [stdout]    |             ----^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/core/game_window.rs:44:13
[INFO] [stdout]    |
[INFO] [stdout] 44 |         let mut last_x: f32 = WINDOW_WIDTH as f32 / 2.0;
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/core/game_window.rs:45:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |         let mut last_y: f32 = WINDOW_HEIGHT as f32 / 2.0;
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cube`
[INFO] [stdout]   --> src/creation/chunk.rs:83:17
[INFO] [stdout]    |
[INFO] [stdout] 83 |         let mut cube = self.cubes.iter().find(|cube| position == cube.position);
[INFO] [stdout]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_cube`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/creation/chunk.rs:83:13
[INFO] [stdout]    |
[INFO] [stdout] 83 |         let mut cube = self.cubes.iter().find(|cube| position == cube.position);
[INFO] [stdout]    |             ----^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/creation/cube.rs:99:13
[INFO] [stdout]    |
[INFO] [stdout] 99 |         let mut cube = Cube {
[INFO] [stdout]    |             ----^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `neighbor_chunk_z`
[INFO] [stdout]   --> src/creation/world.rs:45:17
[INFO] [stdout]    |
[INFO] [stdout] 45 |             let neighbor_chunk_z = self.get_chunk_at(position + Vector3::new(0.0, 0.0, CHUNK_SIZE as f32));
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_neighbor_chunk_z`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vbo`
[INFO] [stdout]   --> src/rendering/renderer.rs:43:17
[INFO] [stdout]    |
[INFO] [stdout] 43 |             let vbo = define_buffer(gl::ARRAY_BUFFER, &Cube::VERTICES, gl::STATIC_DRAW);
[INFO] [stdout]    |                 ^^^
[INFO] [stdout]    |
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]    |
[INFO] [stdout] 43 |             let _vbo = define_buffer(gl::ARRAY_BUFFER, &Cube::VERTICES, gl::STATIC_DRAW);
[INFO] [stdout]    |                 +
[INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `WINDOW_HEIGHT`
[INFO] [stdout]    |
[INFO] [stdout] 43 -             let vbo = define_buffer(gl::ARRAY_BUFFER, &Cube::VERTICES, gl::STATIC_DRAW);
[INFO] [stdout] 43 +             let game_specs::WINDOW_HEIGHT = define_buffer(gl::ARRAY_BUFFER, &Cube::VERTICES, gl::STATIC_DRAW);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]   --> src/rendering/renderer.rs:31:37
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub fn init_renderer(&mut self, world : World) {
[INFO] [stdout]    |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/rendering/texture.rs:29:24
[INFO] [stdout]    |
[INFO] [stdout] 29 | unsafe fn load_texture(mut img: DynamicImage, format : GLenum) -> GLuint {
[INFO] [stdout]    |                        ----^^^
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CHUNK_RADIUS` is never used
[INFO] [stdout]   --> src/game_specs.rs:11:11
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub const CHUNK_RADIUS : usize = 2;
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MIN_CHUNK_HEIGHT` is never used
[INFO] [stdout]   --> src/game_specs.rs:13:11
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub const MIN_CHUNK_HEIGHT : usize = 1;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Point` is never constructed
[INFO] [stdout]  --> src/core/lib.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub enum PolygonMode {
[INFO] [stdout]   |          ----------- variant in this enum
[INFO] [stdout] 7 |     /// Just show the points.
[INFO] [stdout] 8 |     Point = gl::POINT as isize,
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `PolygonMode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `event_loop` and `last_frame_time` are never read
[INFO] [stdout]   --> src/core/game_window.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct GameWindow {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 13 |     event_loop : EventLoop<()>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     last_frame_time: std::time::Instant,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BlockFaceConfig` is never constructed
[INFO] [stdout]   --> src/creation/block_config.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct BlockFaceConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BlockConfig` is never constructed
[INFO] [stdout]   --> src/creation/block_config.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct BlockConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BlockTypeConfig` is never constructed
[INFO] [stdout]   --> src/creation/block_config.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct BlockTypeConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_block_config` is never used
[INFO] [stdout]   --> src/creation/block_config.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub fn load_block_config() -> Result<BlockTypeConfig, Box<dyn Error>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_texture_coordinates` is never used
[INFO] [stdout]   --> src/creation/block_config.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl BlockTypeConfig {
[INFO] [stdout]    | -------------------- method in this implementation
[INFO] [stdout] 36 |     pub fn get_texture_coordinates(&self, block_type: &str, face: &str) -> (f32, f32, f32, f32) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `has_cube` and `set` are never used
[INFO] [stdout]   --> src/creation/chunk.rs:67:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl Chunk {
[INFO] [stdout]    | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 67 |     pub fn has_cube(&self, cube_position : Vector3<f32>) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub fn set(&self, position : Vector3<f32>, _type : CubeType) {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `random` is never used
[INFO] [stdout]   --> src/creation/cube.rs:15:19
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl CubeType {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 15 |     pub(crate) fn random() -> CubeType {
[INFO] [stdout]    |                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `vertices` and `indices` are never read
[INFO] [stdout]   --> src/creation/cube.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct Cube {
[INFO] [stdout]    |            ---- fields in this struct
[INFO] [stdout] 32 |     pub _type : CubeType,
[INFO] [stdout] 33 |     pub vertices : [f32; 180],
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 34 |     pub indices: [u32; 36], // 6 faces * 2 triangles * 3 vertices
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Cube` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_type` is never used
[INFO] [stdout]    --> src/creation/cube.rs:141:12
[INFO] [stdout]     |
[INFO] [stdout]  38 | impl Cube {
[INFO] [stdout]     | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 141 |     pub fn set_type(&mut self, type_ : CubeType) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `world_seed` is never read
[INFO] [stdout]  --> src/creation/world.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct World {
[INFO] [stdout]   |            ----- field in this struct
[INFO] [stdout] 7 |     pub chunks : Vec<Chunk>,
[INFO] [stdout] 8 |     pub world_seed : u32
[INFO] [stdout]   |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_chunk_at`, `generate_chunk`, and `chunk_exists` are never used
[INFO] [stdout]   --> src/creation/world.rs:36:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl World {
[INFO] [stdout]    | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 36 |     fn get_chunk_at(&self, position: Vector3<f32>) -> Option<&Chunk> {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn generate_chunk(&mut self, position: Vector3<f32>) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     fn chunk_exists(&self, position: Vector3<f32>) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_bool` and `set_float` are never used
[INFO] [stdout]   --> src/rendering/shader.rs:28:19
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Shader {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub unsafe fn set_bool(&self, name: &CStr, value: bool) {
[INFO] [stdout]    |                   ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub unsafe fn set_float(&self, name: &CStr, value: f32) {
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Vertex` is never constructed
[INFO] [stdout]   --> src/rendering/mesh.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct Vertex {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Mesh` is never constructed
[INFO] [stdout]   --> src/rendering/mesh.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct Mesh {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `setup_mesh` are never used
[INFO] [stdout]   --> src/rendering/mesh.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | impl Mesh {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 40 |     pub fn new(vertices : Vec<Vertex>, indices : Vec<u32>, texture : Texture, shader : Shader) -> Mesh {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     unsafe fn setup_mesh(&mut self, shader : Shader) {
[INFO] [stdout]    |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `VAO` should have a snake case name
[INFO] [stdout]   --> src/rendering/mesh.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub VAO : u32,
[INFO] [stdout]    |         ^^^ help: convert the identifier to snake case: `vao`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `VBO` should have a snake case name
[INFO] [stdout]   --> src/rendering/mesh.rs:35:16
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub(crate) VBO : u32,
[INFO] [stdout]    |                ^^^ help: convert the identifier to snake case: `vbo`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `EBO` should have a snake case name
[INFO] [stdout]   --> src/rendering/mesh.rs:36:16
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub(crate) EBO : u32
[INFO] [stdout]    |                ^^^ help: convert the identifier to snake case: `ebo`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 12s
[INFO] running `Command { std: "docker" "inspect" "a6f7208ea3df23e4b29a2c6718a990d5607e688b6cc92988235127198d092b80", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a6f7208ea3df23e4b29a2c6718a990d5607e688b6cc92988235127198d092b80", kill_on_drop: false }`
[INFO] [stdout] a6f7208ea3df23e4b29a2c6718a990d5607e688b6cc92988235127198d092b80
[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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0f22a06485190fc12968e88e1c7c4ef5e488b783da32355b97c2e8777efec1fd
[INFO] running `Command { std: "docker" "start" "-a" "0f22a06485190fc12968e88e1c7c4ef5e488b783da32355b97c2e8777efec1fd", kill_on_drop: false }`
[INFO] [stderr]    Compiling RustWorld v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: type `Camera_Movement` should have an upper camel case name
[INFO] [stdout]   --> src/core/camera.rs:12:10
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub enum Camera_Movement {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `CameraMovement`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CHUNK_SIZE` and `MAX_CHUNK_HEIGHT`
[INFO] [stdout]  --> src/core/game.rs:6:25
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::game_specs::{CHUNK_SIZE, MAX_CHUNK_HEIGHT};
[INFO] [stdout]   |                         ^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `glutin::dpi::LogicalSize`
[INFO] [stdout]  --> src/core/game_window.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use glutin::dpi::LogicalSize;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `NoiseFn` and `OpenSimplex`
[INFO] [stdout]  --> src/creation/chunk.rs:2:13
[INFO] [stdout]   |
[INFO] [stdout] 2 | use noise::{NoiseFn, OpenSimplex};
[INFO] [stdout]   |             ^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MIN_CHUNK_HEIGHT`
[INFO] [stdout]  --> src/creation/chunk.rs:5:55
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::game_specs::{CHUNK_SIZE, MAX_CHUNK_HEIGHT, MIN_CHUNK_HEIGHT};
[INFO] [stdout]   |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `vec3`
[INFO] [stdout]  --> src/creation/cube.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use cgmath::{vec3, Vector3};
[INFO] [stdout]   |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Vector4`
[INFO] [stdout]  --> src/rendering/shader.rs:4:38
[INFO] [stdout]   |
[INFO] [stdout] 4 | use cgmath::{Array, Matrix, Matrix4, Vector4};
[INFO] [stdout]   |                                      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ptr`
[INFO] [stdout]  --> src/rendering/mesh.rs:2:16
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::{mem, ptr};
[INFO] [stdout]   |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::creation::world::World`
[INFO] [stdout]  --> src/rendering/mesh.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::creation::world::World;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `cgmath::Matrix4::<S>::look_at`: Use Matrix4::look_at_rh
[INFO] [stdout]   --> src/core/camera.rs:67:18
[INFO] [stdout]    |
[INFO] [stdout] 67 |         Matrix4::look_at(self.position, self.position + self.front, self.up)
[INFO] [stdout]    |                  ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Array`
[INFO] [stdout]  --> src/rendering/shader.rs:4:14
[INFO] [stdout]   |
[INFO] [stdout] 4 | use cgmath::{Array, Matrix, Matrix4, Vector4};
[INFO] [stdout]   |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value captured by `delta_time` is never read
[INFO] [stdout]   --> src/core/game.rs:51:13
[INFO] [stdout]    |
[INFO] [stdout] 51 |             delta_time = current_frame_time.duration_since(last_frame_time);
[INFO] [stdout]    |             ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: did you mean to capture by reference instead?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/core/game.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |         let mut world = World::new();
[INFO] [stdout]    |             ----^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/core/game.rs:86:9
[INFO] [stdout]    |
[INFO] [stdout] 86 |     let mut model: Matrix4<f32> = Matrix4::from_translation(*position); //TODO
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/core/game_window.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 |         let mut first_mouse = true;
[INFO] [stdout]    |             ----^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/core/game_window.rs:44:13
[INFO] [stdout]    |
[INFO] [stdout] 44 |         let mut last_x: f32 = WINDOW_WIDTH as f32 / 2.0;
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/core/game_window.rs:45:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |         let mut last_y: f32 = WINDOW_HEIGHT as f32 / 2.0;
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cube`
[INFO] [stdout]   --> src/creation/chunk.rs:83:17
[INFO] [stdout]    |
[INFO] [stdout] 83 |         let mut cube = self.cubes.iter().find(|cube| position == cube.position);
[INFO] [stdout]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_cube`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/creation/chunk.rs:83:13
[INFO] [stdout]    |
[INFO] [stdout] 83 |         let mut cube = self.cubes.iter().find(|cube| position == cube.position);
[INFO] [stdout]    |             ----^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/creation/cube.rs:99:13
[INFO] [stdout]    |
[INFO] [stdout] 99 |         let mut cube = Cube {
[INFO] [stdout]    |             ----^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `neighbor_chunk_z`
[INFO] [stdout]   --> src/creation/world.rs:45:17
[INFO] [stdout]    |
[INFO] [stdout] 45 |             let neighbor_chunk_z = self.get_chunk_at(position + Vector3::new(0.0, 0.0, CHUNK_SIZE as f32));
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_neighbor_chunk_z`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vbo`
[INFO] [stdout]   --> src/rendering/renderer.rs:43:17
[INFO] [stdout]    |
[INFO] [stdout] 43 |             let vbo = define_buffer(gl::ARRAY_BUFFER, &Cube::VERTICES, gl::STATIC_DRAW);
[INFO] [stdout]    |                 ^^^
[INFO] [stdout]    |
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]    |
[INFO] [stdout] 43 |             let _vbo = define_buffer(gl::ARRAY_BUFFER, &Cube::VERTICES, gl::STATIC_DRAW);
[INFO] [stdout]    |                 +
[INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `WINDOW_HEIGHT`
[INFO] [stdout]    |
[INFO] [stdout] 43 -             let vbo = define_buffer(gl::ARRAY_BUFFER, &Cube::VERTICES, gl::STATIC_DRAW);
[INFO] [stdout] 43 +             let game_specs::WINDOW_HEIGHT = define_buffer(gl::ARRAY_BUFFER, &Cube::VERTICES, gl::STATIC_DRAW);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]   --> src/rendering/renderer.rs:31:37
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub fn init_renderer(&mut self, world : World) {
[INFO] [stdout]    |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/rendering/texture.rs:29:24
[INFO] [stdout]    |
[INFO] [stdout] 29 | unsafe fn load_texture(mut img: DynamicImage, format : GLenum) -> GLuint {
[INFO] [stdout]    |                        ----^^^
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CHUNK_RADIUS` is never used
[INFO] [stdout]   --> src/game_specs.rs:11:11
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub const CHUNK_RADIUS : usize = 2;
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MIN_CHUNK_HEIGHT` is never used
[INFO] [stdout]   --> src/game_specs.rs:13:11
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub const MIN_CHUNK_HEIGHT : usize = 1;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Point` is never constructed
[INFO] [stdout]  --> src/core/lib.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub enum PolygonMode {
[INFO] [stdout]   |          ----------- variant in this enum
[INFO] [stdout] 7 |     /// Just show the points.
[INFO] [stdout] 8 |     Point = gl::POINT as isize,
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `PolygonMode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `event_loop` and `last_frame_time` are never read
[INFO] [stdout]   --> src/core/game_window.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct GameWindow {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 13 |     event_loop : EventLoop<()>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     last_frame_time: std::time::Instant,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BlockFaceConfig` is never constructed
[INFO] [stdout]   --> src/creation/block_config.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct BlockFaceConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BlockConfig` is never constructed
[INFO] [stdout]   --> src/creation/block_config.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct BlockConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BlockTypeConfig` is never constructed
[INFO] [stdout]   --> src/creation/block_config.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct BlockTypeConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_block_config` is never used
[INFO] [stdout]   --> src/creation/block_config.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub fn load_block_config() -> Result<BlockTypeConfig, Box<dyn Error>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_texture_coordinates` is never used
[INFO] [stdout]   --> src/creation/block_config.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl BlockTypeConfig {
[INFO] [stdout]    | -------------------- method in this implementation
[INFO] [stdout] 36 |     pub fn get_texture_coordinates(&self, block_type: &str, face: &str) -> (f32, f32, f32, f32) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `has_cube` and `set` are never used
[INFO] [stdout]   --> src/creation/chunk.rs:67:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl Chunk {
[INFO] [stdout]    | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 67 |     pub fn has_cube(&self, cube_position : Vector3<f32>) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub fn set(&self, position : Vector3<f32>, _type : CubeType) {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `random` is never used
[INFO] [stdout]   --> src/creation/cube.rs:15:19
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl CubeType {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 15 |     pub(crate) fn random() -> CubeType {
[INFO] [stdout]    |                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `vertices` and `indices` are never read
[INFO] [stdout]   --> src/creation/cube.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct Cube {
[INFO] [stdout]    |            ---- fields in this struct
[INFO] [stdout] 32 |     pub _type : CubeType,
[INFO] [stdout] 33 |     pub vertices : [f32; 180],
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 34 |     pub indices: [u32; 36], // 6 faces * 2 triangles * 3 vertices
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Cube` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_type` is never used
[INFO] [stdout]    --> src/creation/cube.rs:141:12
[INFO] [stdout]     |
[INFO] [stdout]  38 | impl Cube {
[INFO] [stdout]     | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 141 |     pub fn set_type(&mut self, type_ : CubeType) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `world_seed` is never read
[INFO] [stdout]  --> src/creation/world.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct World {
[INFO] [stdout]   |            ----- field in this struct
[INFO] [stdout] 7 |     pub chunks : Vec<Chunk>,
[INFO] [stdout] 8 |     pub world_seed : u32
[INFO] [stdout]   |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_chunk_at`, `generate_chunk`, and `chunk_exists` are never used
[INFO] [stdout]   --> src/creation/world.rs:36:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl World {
[INFO] [stdout]    | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 36 |     fn get_chunk_at(&self, position: Vector3<f32>) -> Option<&Chunk> {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn generate_chunk(&mut self, position: Vector3<f32>) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     fn chunk_exists(&self, position: Vector3<f32>) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_bool` and `set_float` are never used
[INFO] [stdout]   --> src/rendering/shader.rs:28:19
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Shader {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub unsafe fn set_bool(&self, name: &CStr, value: bool) {
[INFO] [stdout]    |                   ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub unsafe fn set_float(&self, name: &CStr, value: f32) {
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Vertex` is never constructed
[INFO] [stdout]   --> src/rendering/mesh.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct Vertex {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Mesh` is never constructed
[INFO] [stdout]   --> src/rendering/mesh.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct Mesh {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `setup_mesh` are never used
[INFO] [stdout]   --> src/rendering/mesh.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | impl Mesh {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 40 |     pub fn new(vertices : Vec<Vertex>, indices : Vec<u32>, texture : Texture, shader : Shader) -> Mesh {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     unsafe fn setup_mesh(&mut self, shader : Shader) {
[INFO] [stdout]    |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `VAO` should have a snake case name
[INFO] [stdout]   --> src/rendering/mesh.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub VAO : u32,
[INFO] [stdout]    |         ^^^ help: convert the identifier to snake case: `vao`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `VBO` should have a snake case name
[INFO] [stdout]   --> src/rendering/mesh.rs:35:16
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub(crate) VBO : u32,
[INFO] [stdout]    |                ^^^ help: convert the identifier to snake case: `vbo`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `EBO` should have a snake case name
[INFO] [stdout]   --> src/rendering/mesh.rs:36:16
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub(crate) EBO : u32
[INFO] [stdout]    |                ^^^ help: convert the identifier to snake case: `ebo`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.25s
[INFO] running `Command { std: "docker" "inspect" "0f22a06485190fc12968e88e1c7c4ef5e488b783da32355b97c2e8777efec1fd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0f22a06485190fc12968e88e1c7c4ef5e488b783da32355b97c2e8777efec1fd", kill_on_drop: false }`
[INFO] [stdout] 0f22a06485190fc12968e88e1c7c4ef5e488b783da32355b97c2e8777efec1fd
