[INFO] cloning repository https://github.com/skodt/rusterizer
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/skodt/rusterizer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fskodt%2Frusterizer", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fskodt%2Frusterizer'...
[INFO] [stderr] /workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fskodt%2Frusterizer: No space left on device
[WARN] Retrying crate fetch in 3 seconds (attempt 1)
[INFO] cloning repository https://github.com/skodt/rusterizer
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/skodt/rusterizer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fskodt%2Frusterizer", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fskodt%2Frusterizer'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 373ef6595531368f1b8392bc35013aef985ffbaa
[INFO] checking skodt/rusterizer against master#350d0ef0ec0493e6d21cfb265cb8211a0e74d766 for pr-145342
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fskodt%2Frusterizer" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/skodt/rusterizer
[INFO] finished tweaking git repo https://github.com/skodt/rusterizer
[INFO] tweaked toml for git repo https://github.com/skodt/rusterizer written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/skodt/rusterizer on toolchain 350d0ef0ec0493e6d21cfb265cb8211a0e74d766
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/skodt/rusterizer 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" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 3011e6fef3aeada921887a9c1ddc4e3e8a53c8201c7a27278df377f37e9130e5
[INFO] running `Command { std: "docker" "start" "-a" "3011e6fef3aeada921887a9c1ddc4e3e8a53c8201c7a27278df377f37e9130e5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3011e6fef3aeada921887a9c1ddc4e3e8a53c8201c7a27278df377f37e9130e5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3011e6fef3aeada921887a9c1ddc4e3e8a53c8201c7a27278df377f37e9130e5", kill_on_drop: false }`
[INFO] [stdout] 3011e6fef3aeada921887a9c1ddc4e3e8a53c8201c7a27278df377f37e9130e5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6c4a6d3c41b870afbb0cd668a24468412a3e4699ff035bfc6dd0b8f25fb6c205
[INFO] running `Command { std: "docker" "start" "-a" "6c4a6d3c41b870afbb0cd668a24468412a3e4699ff035bfc6dd0b8f25fb6c205", kill_on_drop: false }`
[INFO] [stderr]    Compiling sfml-build v0.2.0
[INFO] [stderr]    Compiling bitflags v1.1.0
[INFO] [stderr]    Compiling csfml-system-sys v0.4.0
[INFO] [stderr]    Compiling csfml-window-sys v0.4.0
[INFO] [stderr]    Compiling csfml-graphics-sys v0.4.0
[INFO] [stderr]    Compiling csfml-audio-sys v0.4.0
[INFO] [stderr]     Checking sfml v0.14.0
[INFO] [stderr]     Checking rusterizer v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `sfml::graphics::Color`
[INFO] [stdout]  --> src/io/off.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use sfml::graphics::Color;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::camera::Camera`
[INFO] [stdout]  --> src/mesh.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::camera::Camera;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::f64`
[INFO] [stdout]  --> src/mesh.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::f64;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `face`
[INFO] [stdout]   --> src/mesh.rs:30:14
[INFO] [stdout]    |
[INFO] [stdout] 30 | macro_rules! face {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Vector2f`
[INFO] [stdout]  --> src/renderer.rs:2:20
[INFO] [stdout]   |
[INFO] [stdout] 2 | use sfml::system::{Vector2f};
[INFO] [stdout]   |                    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::f32::consts::PI`
[INFO] [stdout]  --> src/renderer.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::f32::consts::PI;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]   --> src/vector.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 |         (self.x * self.x + self.y * self.y + self.z * self.z)
[INFO] [stdout]    |         ^                                                   ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 50 -         (self.x * self.x + self.y * self.y + self.z * self.z)
[INFO] [stdout] 50 +         self.x * self.x + self.y * self.y + self.z * self.z
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sfml::graphics::Color`
[INFO] [stdout]  --> src/light.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use sfml::graphics::Color;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RenderTarget`
[INFO] [stdout]   --> src/main.rs:16:36
[INFO] [stdout]    |
[INFO] [stdout] 16 | use sfml::graphics::{RenderWindow, RenderTarget};
[INFO] [stdout]    |                                    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sfml::graphics::Color`
[INFO] [stdout]  --> src/io/off.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use sfml::graphics::Color;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::camera::Camera`
[INFO] [stdout]  --> src/mesh.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::camera::Camera;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::f64`
[INFO] [stdout]  --> src/mesh.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::f64;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `face`
[INFO] [stdout]   --> src/mesh.rs:30:14
[INFO] [stdout]    |
[INFO] [stdout] 30 | macro_rules! face {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Vector2f`
[INFO] [stdout]  --> src/renderer.rs:2:20
[INFO] [stdout]   |
[INFO] [stdout] 2 | use sfml::system::{Vector2f};
[INFO] [stdout]   |                    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::f32::consts::PI`
[INFO] [stdout]  --> src/renderer.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::f32::consts::PI;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]   --> src/vector.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 |         (self.x * self.x + self.y * self.y + self.z * self.z)
[INFO] [stdout]    |         ^                                                   ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 50 -         (self.x * self.x + self.y * self.y + self.z * self.z)
[INFO] [stdout] 50 +         self.x * self.x + self.y * self.y + self.z * self.z
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sfml::graphics::Color`
[INFO] [stdout]  --> src/light.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use sfml::graphics::Color;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RenderTarget`
[INFO] [stdout]   --> src/main.rs:16:36
[INFO] [stdout]    |
[INFO] [stdout] 16 | use sfml::graphics::{RenderWindow, RenderTarget};
[INFO] [stdout]    |                                    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nr_edges`
[INFO] [stdout]   --> src/io/off.rs:37:33
[INFO] [stdout]    |
[INFO] [stdout] 37 |     let (nr_vertices, nr_faces, nr_edges) = (sizes[0], sizes[1], sizes[2]);
[INFO] [stdout]    |                                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_nr_edges`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nr_edges`
[INFO] [stdout]   --> src/io/off.rs:37:33
[INFO] [stdout]    |
[INFO] [stdout] 37 |     let (nr_vertices, nr_faces, nr_edges) = (sizes[0], sizes[1], sizes[2]);
[INFO] [stdout]    |                                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_nr_edges`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/renderer.rs:147:13
[INFO] [stdout]     |
[INFO] [stdout] 147 |         let mut shading = -light.dir.dot(&normal_col);
[INFO] [stdout]     |             ----^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w`
[INFO] [stdout]   --> src/camera.rs:44:16
[INFO] [stdout]    |
[INFO] [stdout] 44 |         let (v,w) = &self.get_mat() * Vector3::new(0.,0.,1.);
[INFO] [stdout]    |                ^ help: if this is intentional, prefix it with an underscore: `_w`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `mesh_file` is never read
[INFO] [stdout]   --> src/main.rs:31:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |     let mut mesh_file = "";
[INFO] [stdout]    |             ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mouse_left`
[INFO] [stdout]   --> src/main.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 73 |     let mut mouse_left = false;
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mouse_left`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 56 |     let mut camera = Camera::new();
[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/main.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 |     let mut mouse_left = false;
[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/renderer.rs:147:13
[INFO] [stdout]     |
[INFO] [stdout] 147 |         let mut shading = -light.dir.dot(&normal_col);
[INFO] [stdout]     |             ----^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `color` is never read
[INFO] [stdout]   --> src/mesh.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Vertex {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] 10 |     pub pt: Vector3,
[INFO] [stdout] 11 |     pub color: Option<Color>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `color` is never read
[INFO] [stdout]   --> src/mesh.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct Face {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub color: Option<Color>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `pt` and `rot_z` are never used
[INFO] [stdout]   --> src/mesh.rs:47:8
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl Mesh {
[INFO] [stdout]    | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 47 |     fn pt(&self, index: usize) -> Vector3 {
[INFO] [stdout]    |        ^^
[INFO] [stdout] ...
[INFO] [stdout] 59 |     pub fn rot_z(&mut self, theta: f32) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_normal` is never used
[INFO] [stdout]   --> src/renderer.rs:60:8
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub fn render_normal(window: &mut RenderWindow, zbuf: &mut Vec<f32>, mesh: &Mesh, cam: &Camera) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_wireframe` is never used
[INFO] [stdout]    --> src/renderer.rs:168:8
[INFO] [stdout]     |
[INFO] [stdout] 168 | pub fn render_wireframe(window: &mut RenderWindow, mesh: &Mesh, cam: &Camera) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w`
[INFO] [stdout]   --> src/camera.rs:44:16
[INFO] [stdout]    |
[INFO] [stdout] 44 |         let (v,w) = &self.get_mat() * Vector3::new(0.,0.,1.);
[INFO] [stdout]    |                ^ help: if this is intentional, prefix it with an underscore: `_w`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `mesh_file` is never read
[INFO] [stdout]   --> src/main.rs:31:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |     let mut mesh_file = "";
[INFO] [stdout]    |             ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mouse_left`
[INFO] [stdout]   --> src/main.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 73 |     let mut mouse_left = false;
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mouse_left`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 56 |     let mut camera = Camera::new();
[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/main.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 |     let mut mouse_left = false;
[INFO] [stdout]    |         ----^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `color` is never read
[INFO] [stdout]   --> src/mesh.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Vertex {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] 10 |     pub pt: Vector3,
[INFO] [stdout] 11 |     pub color: Option<Color>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `color` is never read
[INFO] [stdout]   --> src/mesh.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct Face {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub color: Option<Color>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `pt` and `rot_z` are never used
[INFO] [stdout]   --> src/mesh.rs:47:8
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl Mesh {
[INFO] [stdout]    | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 47 |     fn pt(&self, index: usize) -> Vector3 {
[INFO] [stdout]    |        ^^
[INFO] [stdout] ...
[INFO] [stdout] 59 |     pub fn rot_z(&mut self, theta: f32) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_normal` is never used
[INFO] [stdout]   --> src/renderer.rs:60:8
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub fn render_normal(window: &mut RenderWindow, zbuf: &mut Vec<f32>, mesh: &Mesh, cam: &Camera) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_wireframe` is never used
[INFO] [stdout]    --> src/renderer.rs:168:8
[INFO] [stdout]     |
[INFO] [stdout] 168 | pub fn render_wireframe(window: &mut RenderWindow, mesh: &Mesh, cam: &Camera) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.14s
[INFO] running `Command { std: "docker" "inspect" "6c4a6d3c41b870afbb0cd668a24468412a3e4699ff035bfc6dd0b8f25fb6c205", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6c4a6d3c41b870afbb0cd668a24468412a3e4699ff035bfc6dd0b8f25fb6c205", kill_on_drop: false }`
[INFO] [stdout] 6c4a6d3c41b870afbb0cd668a24468412a3e4699ff035bfc6dd0b8f25fb6c205
