[INFO] cloning repository https://github.com/DanielHalachev/rust-tracer
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/DanielHalachev/rust-tracer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDanielHalachev%2Frust-tracer", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDanielHalachev%2Frust-tracer'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 8caa8d79e4c317d7b0969af3417e6a710e435156
[INFO] building DanielHalachev/rust-tracer against master#ad85bc524b1ad696e42061ad8338d382dffbdbe5 for pr-146237-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDanielHalachev%2Frust-tracer" "/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/DanielHalachev/rust-tracer
[INFO] finished tweaking git repo https://github.com/DanielHalachev/rust-tracer
[INFO] tweaked toml for git repo https://github.com/DanielHalachev/rust-tracer written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/DanielHalachev/rust-tracer 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/DanielHalachev/rust-tracer 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]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded zune-jpeg v0.4.13
[INFO] [stderr]   Downloaded built v0.7.4
[INFO] [stderr]   Downloaded ravif v0.11.10
[INFO] [stderr]   Downloaded bytemuck v1.17.1
[INFO] [stderr]   Downloaded image-webp v0.1.3
[INFO] [stderr]   Downloaded serde_derive v1.0.209
[INFO] [stderr]   Downloaded serde v1.0.209
[INFO] [stderr]   Downloaded cc v1.1.15
[INFO] [stderr]   Downloaded indexmap v2.4.0
[INFO] [stderr]   Downloaded stb_image v0.3.0
[INFO] [stderr]   Downloaded bitstream-io v2.5.3
[INFO] [stderr]   Downloaded syn v2.0.76
[INFO] [stderr]   Downloaded rgb v0.8.48
[INFO] [stderr]   Downloaded image v0.25.2
[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] a558b7f202782f2ef8fca36bfccdf60157c30c8bd6b36ec3201fbdae23120c43
[INFO] running `Command { std: "docker" "start" "-a" "a558b7f202782f2ef8fca36bfccdf60157c30c8bd6b36ec3201fbdae23120c43", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a558b7f202782f2ef8fca36bfccdf60157c30c8bd6b36ec3201fbdae23120c43", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a558b7f202782f2ef8fca36bfccdf60157c30c8bd6b36ec3201fbdae23120c43", kill_on_drop: false }`
[INFO] [stdout] a558b7f202782f2ef8fca36bfccdf60157c30c8bd6b36ec3201fbdae23120c43
[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] cfea9e368e1f22c0a599fab8352e4f1407d2a5e91f2a16257dca7985a9ea4d8d
[INFO] running `Command { std: "docker" "start" "-a" "cfea9e368e1f22c0a599fab8352e4f1407d2a5e91f2a16257dca7985a9ea4d8d", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.86
[INFO] [stderr]    Compiling crossbeam-utils v0.8.20
[INFO] [stderr]    Compiling libc v0.2.158
[INFO] [stderr]    Compiling thiserror v1.0.63
[INFO] [stderr]    Compiling either v1.13.0
[INFO] [stderr]    Compiling built v0.7.4
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling adler2 v2.0.0
[INFO] [stderr]    Compiling aligned-vec v0.5.0
[INFO] [stderr]    Compiling miniz_oxide v0.8.0
[INFO] [stderr]    Compiling v_frame v0.3.8
[INFO] [stderr]    Compiling rav1e v0.7.1
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling crc32fast v1.4.2
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling bytemuck v1.17.1
[INFO] [stderr]    Compiling log v0.4.22
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]    Compiling crossbeam-deque v0.8.5
[INFO] [stderr]    Compiling cc v1.1.15
[INFO] [stderr]    Compiling miniz_oxide v0.7.4
[INFO] [stderr]    Compiling syn v2.0.76
[INFO] [stderr]    Compiling rayon-core v1.12.1
[INFO] [stderr]    Compiling flate2 v1.0.33
[INFO] [stderr]    Compiling simd_helpers v0.1.0
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling itertools v0.12.1
[INFO] [stderr]    Compiling maybe-rayon v0.1.1
[INFO] [stderr]    Compiling imgref v1.10.1
[INFO] [stderr]    Compiling num-rational v0.4.2
[INFO] [stderr]    Compiling bitstream-io v2.5.3
[INFO] [stderr]    Compiling weezl v0.1.8
[INFO] [stderr]    Compiling stb_image v0.3.0
[INFO] [stderr]    Compiling loop9 v0.1.5
[INFO] [stderr]    Compiling flume v0.11.0
[INFO] [stderr]    Compiling rgb v0.8.48
[INFO] [stderr]    Compiling avif-serialize v0.8.1
[INFO] [stderr]    Compiling fdeflate v0.3.4
[INFO] [stderr]    Compiling half v2.4.1
[INFO] [stderr]    Compiling smallvec v1.13.2
[INFO] [stderr]    Compiling jpeg-decoder v0.3.1
[INFO] [stderr]    Compiling av1-grain v0.2.3
[INFO] [stderr]    Compiling exr v1.72.0
[INFO] [stderr]    Compiling image-webp v0.1.3
[INFO] [stderr]    Compiling png v0.17.13
[INFO] [stderr]    Compiling gif v0.13.1
[INFO] [stderr]    Compiling tiff v0.9.1
[INFO] [stderr]    Compiling zune-jpeg v0.4.13
[INFO] [stderr]    Compiling rayon v1.10.0
[INFO] [stderr]    Compiling qoi v0.4.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.63
[INFO] [stderr]    Compiling profiling-procmacros v1.0.15
[INFO] [stderr]    Compiling arg_enum_proc_macro v0.3.4
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]    Compiling profiling v1.0.15
[INFO] [stderr]    Compiling ravif v0.11.10
[INFO] [stderr]    Compiling image v0.25.2
[INFO] [stderr]    Compiling rust-tracer v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/utils/texture.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::str::FromStr;
[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: `stb_image::stb_image::stbi_load`
[INFO] [stdout]  --> src/utils/texture.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use stb_image::stb_image::stbi_load;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PPMColor`
[INFO] [stdout]  --> src/utils/texture.rs:8:35
[INFO] [stdout]   |
[INFO] [stdout] 8 | use super::color::{Albedo, Color, PPMColor};
[INFO] [stdout]   |                                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `distance`, `hit_point`, `hit_normal`, and `uv` are never read
[INFO] [stdout]  --> src/tracer/ray.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct Intersection {
[INFO] [stdout]   |            ------------ fields in this struct
[INFO] [stdout] 6 |     distance: f32,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 7 |     hit_point: Point,
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 8 |     hit_normal: Vector,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 9 |     uv: Coordinates,
[INFO] [stdout]   |     ^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `ShadowRay`, `RelfectionRay`, and `RefractionRay` are never constructed
[INFO] [stdout]   --> src/tracer/ray.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | enum RayType {
[INFO] [stdout]    |      ------- variants in this enum
[INFO] [stdout] 14 |     CameraRay,
[INFO] [stdout] 15 |     ShadowRay,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 16 |     RelfectionRay,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 17 |     RefractionRay,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `calculate_triangle_normal` is never used
[INFO] [stdout]   --> src/tracer/triangle.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl<'a> Triangle<'a> {
[INFO] [stdout]    | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 28 |     fn calculate_triangle_normal(&self) -> Vector {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Texture` is never used
[INFO] [stdout]   --> src/utils/texture.rs:10:7
[INFO] [stdout]    |
[INFO] [stdout] 10 | trait Texture {
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `albedo` are never read
[INFO] [stdout]   --> src/utils/texture.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct AlbedoTexture {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 15 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 16 |     albedo: Albedo,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `inner_color`, `edge_color`, and `width` are never read
[INFO] [stdout]   --> src/utils/texture.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct EdgeTexture {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 26 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 27 |     inner_color: Color,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 28 |     edge_color: Color,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 29 |     width: f32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `first_color`, `second_color`, and `square_size` are never read
[INFO] [stdout]   --> src/utils/texture.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct CheckerTexture {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 45 |     first_color: Color,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 46 |     second_color: Color,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 47 |     square_size: f32,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `width`, `height`, and `buffer` are never read
[INFO] [stdout]   --> src/utils/texture.rs:66:5
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub struct BitmapTexture {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 66 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 67 |     width: u32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 68 |     height: u32,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 69 |     buffer: Vec<Color>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/utils/texture.rs:73:8
[INFO] [stdout]    |
[INFO] [stdout] 72 | impl BitmapTexture {
[INFO] [stdout]    | ------------------ associated function in this implementation
[INFO] [stdout] 73 |     fn new(name: &str, path: &str) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `clone` that must be used
[INFO] [stdout]   --> src/utils/texture.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |             self.edge_color.clone();
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: cloning is often expensive and is not expected to have side effects
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 38 |             let _ = self.edge_color.clone();
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 11s
[INFO] running `Command { std: "docker" "inspect" "cfea9e368e1f22c0a599fab8352e4f1407d2a5e91f2a16257dca7985a9ea4d8d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cfea9e368e1f22c0a599fab8352e4f1407d2a5e91f2a16257dca7985a9ea4d8d", kill_on_drop: false }`
[INFO] [stdout] cfea9e368e1f22c0a599fab8352e4f1407d2a5e91f2a16257dca7985a9ea4d8d
[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] 42a3791acd77ca90d03fb95b1071f724a55d1ba48d920b37664fd2da0468b737
[INFO] running `Command { std: "docker" "start" "-a" "42a3791acd77ca90d03fb95b1071f724a55d1ba48d920b37664fd2da0468b737", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/utils/texture.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::str::FromStr;
[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: `stb_image::stb_image::stbi_load`
[INFO] [stdout]  --> src/utils/texture.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use stb_image::stb_image::stbi_load;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PPMColor`
[INFO] [stdout]  --> src/utils/texture.rs:8:35
[INFO] [stdout]   |
[INFO] [stdout] 8 | use super::color::{Albedo, Color, PPMColor};
[INFO] [stdout]   |                                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `distance`, `hit_point`, `hit_normal`, and `uv` are never read
[INFO] [stdout]  --> src/tracer/ray.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct Intersection {
[INFO] [stdout]   |            ------------ fields in this struct
[INFO] [stdout] 6 |     distance: f32,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 7 |     hit_point: Point,
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 8 |     hit_normal: Vector,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 9 |     uv: Coordinates,
[INFO] [stdout]   |     ^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `ShadowRay`, `RelfectionRay`, and `RefractionRay` are never constructed
[INFO] [stdout]   --> src/tracer/ray.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | enum RayType {
[INFO] [stdout]    |      ------- variants in this enum
[INFO] [stdout] 14 |     CameraRay,
[INFO] [stdout] 15 |     ShadowRay,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 16 |     RelfectionRay,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 17 |     RefractionRay,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `calculate_triangle_normal` is never used
[INFO] [stdout]   --> src/tracer/triangle.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl<'a> Triangle<'a> {
[INFO] [stdout]    | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 28 |     fn calculate_triangle_normal(&self) -> Vector {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Texture` is never used
[INFO] [stdout]   --> src/utils/texture.rs:10:7
[INFO] [stdout]    |
[INFO] [stdout] 10 | trait Texture {
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rust-tracer v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: fields `name` and `albedo` are never read
[INFO] [stdout]   --> src/utils/texture.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct AlbedoTexture {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 15 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 16 |     albedo: Albedo,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `inner_color`, `edge_color`, and `width` are never read
[INFO] [stdout]   --> src/utils/texture.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct EdgeTexture {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 26 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 27 |     inner_color: Color,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 28 |     edge_color: Color,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 29 |     width: f32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `first_color`, `second_color`, and `square_size` are never read
[INFO] [stdout]   --> src/utils/texture.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct CheckerTexture {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 45 |     first_color: Color,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 46 |     second_color: Color,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 47 |     square_size: f32,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `width`, `height`, and `buffer` are never read
[INFO] [stdout]   --> src/utils/texture.rs:66:5
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub struct BitmapTexture {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 66 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 67 |     width: u32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 68 |     height: u32,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 69 |     buffer: Vec<Color>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/utils/texture.rs:73:8
[INFO] [stdout]    |
[INFO] [stdout] 72 | impl BitmapTexture {
[INFO] [stdout]    | ------------------ associated function in this implementation
[INFO] [stdout] 73 |     fn new(name: &str, path: &str) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `clone` that must be used
[INFO] [stdout]   --> src/utils/texture.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |             self.edge_color.clone();
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: cloning is often expensive and is not expected to have side effects
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 38 |             let _ = self.edge_color.clone();
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/utils/texture.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::str::FromStr;
[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: `stb_image::stb_image::stbi_load`
[INFO] [stdout]  --> src/utils/texture.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use stb_image::stb_image::stbi_load;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PPMColor`
[INFO] [stdout]  --> src/utils/texture.rs:8:35
[INFO] [stdout]   |
[INFO] [stdout] 8 | use super::color::{Albedo, Color, PPMColor};
[INFO] [stdout]   |                                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `distance`, `hit_point`, `hit_normal`, and `uv` are never read
[INFO] [stdout]  --> src/tracer/ray.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct Intersection {
[INFO] [stdout]   |            ------------ fields in this struct
[INFO] [stdout] 6 |     distance: f32,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 7 |     hit_point: Point,
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 8 |     hit_normal: Vector,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 9 |     uv: Coordinates,
[INFO] [stdout]   |     ^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `ShadowRay`, `RelfectionRay`, and `RefractionRay` are never constructed
[INFO] [stdout]   --> src/tracer/ray.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | enum RayType {
[INFO] [stdout]    |      ------- variants in this enum
[INFO] [stdout] 14 |     CameraRay,
[INFO] [stdout] 15 |     ShadowRay,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 16 |     RelfectionRay,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 17 |     RefractionRay,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `calculate_triangle_normal` is never used
[INFO] [stdout]   --> src/tracer/triangle.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl<'a> Triangle<'a> {
[INFO] [stdout]    | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 28 |     fn calculate_triangle_normal(&self) -> Vector {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Texture` is never used
[INFO] [stdout]   --> src/utils/texture.rs:10:7
[INFO] [stdout]    |
[INFO] [stdout] 10 | trait Texture {
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `albedo` are never read
[INFO] [stdout]   --> src/utils/texture.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct AlbedoTexture {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 15 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 16 |     albedo: Albedo,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `inner_color`, `edge_color`, and `width` are never read
[INFO] [stdout]   --> src/utils/texture.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct EdgeTexture {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 26 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 27 |     inner_color: Color,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 28 |     edge_color: Color,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 29 |     width: f32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `first_color`, `second_color`, and `square_size` are never read
[INFO] [stdout]   --> src/utils/texture.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct CheckerTexture {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 45 |     first_color: Color,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 46 |     second_color: Color,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 47 |     square_size: f32,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `width`, `height`, and `buffer` are never read
[INFO] [stdout]   --> src/utils/texture.rs:66:5
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub struct BitmapTexture {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 66 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 67 |     width: u32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 68 |     height: u32,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 69 |     buffer: Vec<Color>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/utils/texture.rs:73:8
[INFO] [stdout]    |
[INFO] [stdout] 72 | impl BitmapTexture {
[INFO] [stdout]    | ------------------ associated function in this implementation
[INFO] [stdout] 73 |     fn new(name: &str, path: &str) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `clone` that must be used
[INFO] [stdout]   --> src/utils/texture.rs:38:13
[INFO] [stdout]    |
[INFO] [stdout] 38 |             self.edge_color.clone();
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: cloning is often expensive and is not expected to have side effects
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 38 |             let _ = self.edge_color.clone();
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.08s
[INFO] running `Command { std: "docker" "inspect" "42a3791acd77ca90d03fb95b1071f724a55d1ba48d920b37664fd2da0468b737", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "42a3791acd77ca90d03fb95b1071f724a55d1ba48d920b37664fd2da0468b737", kill_on_drop: false }`
[INFO] [stdout] 42a3791acd77ca90d03fb95b1071f724a55d1ba48d920b37664fd2da0468b737
