[INFO] cloning repository https://github.com/brunoSnoww/ray-tracing-rust-test [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/brunoSnoww/ray-tracing-rust-test" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FbrunoSnoww%2Fray-tracing-rust-test", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FbrunoSnoww%2Fray-tracing-rust-test'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 6d170569aabc1a8c808bd4a871d1691d3e136119 [INFO] checking brunoSnoww/ray-tracing-rust-test/6d170569aabc1a8c808bd4a871d1691d3e136119 against master#f609b7e0586f81fefb3523e3e17adf779ac416be for pr-129466-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FbrunoSnoww%2Fray-tracing-rust-test" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] [stderr] Updating files: 66% (2761/4151) Updating files: 67% (2782/4151) Updating files: 68% (2823/4151) Updating files: 69% (2865/4151) Updating files: 70% (2906/4151) Updating files: 71% (2948/4151) Updating files: 71% (2982/4151) Updating files: 72% (2989/4151) Updating files: 73% (3031/4151) Updating files: 74% (3072/4151) Updating files: 75% (3114/4151) Updating files: 76% (3155/4151) Updating files: 77% (3197/4151) Updating files: 78% (3238/4151) Updating files: 79% (3280/4151) Updating files: 80% (3321/4151) Updating files: 81% (3363/4151) Updating files: 82% (3404/4151) Updating files: 83% (3446/4151) Updating files: 84% (3487/4151) Updating files: 85% (3529/4151) Updating files: 86% (3570/4151) Updating files: 87% (3612/4151) Updating files: 88% (3653/4151) Updating files: 89% (3695/4151) Updating files: 90% (3736/4151) Updating files: 91% (3778/4151) Updating files: 92% (3819/4151) Updating files: 93% (3861/4151) Updating files: 94% (3902/4151) Updating files: 95% (3944/4151) Updating files: 96% (3985/4151) Updating files: 97% (4027/4151) Updating files: 98% (4068/4151) Updating files: 99% (4110/4151) Updating files: 100% (4151/4151) Updating files: 100% (4151/4151), done. [INFO] validating manifest of git repo https://github.com/brunoSnoww/ray-tracing-rust-test on toolchain f609b7e0586f81fefb3523e3e17adf779ac416be [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/brunoSnoww/ray-tracing-rust-test [INFO] finished tweaking git repo https://github.com/brunoSnoww/ray-tracing-rust-test [INFO] tweaked toml for git repo https://github.com/brunoSnoww/ray-tracing-rust-test written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/brunoSnoww/ray-tracing-rust-test 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" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:6252d7ea7fb8caaf7af6d800c5fb250a9cd862b9a7f9508afb3c54fa7fe1102e" "/opt/rustwide/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 00dce4a007ff3e0cc1387ccf99b5b19e77ddc27ca339e989a1c1b464be3ca36b [INFO] running `Command { std: "docker" "start" "-a" "00dce4a007ff3e0cc1387ccf99b5b19e77ddc27ca339e989a1c1b464be3ca36b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "00dce4a007ff3e0cc1387ccf99b5b19e77ddc27ca339e989a1c1b464be3ca36b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "00dce4a007ff3e0cc1387ccf99b5b19e77ddc27ca339e989a1c1b464be3ca36b", kill_on_drop: false }` [INFO] [stdout] 00dce4a007ff3e0cc1387ccf99b5b19e77ddc27ca339e989a1c1b464be3ca36b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:6252d7ea7fb8caaf7af6d800c5fb250a9cd862b9a7f9508afb3c54fa7fe1102e" "/opt/rustwide/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 7bb218898986f97d345b52ec7ee8afcfcf9e92683879d9d0def7cd6cf3788e36 [INFO] running `Command { std: "docker" "start" "-a" "7bb218898986f97d345b52ec7ee8afcfcf9e92683879d9d0def7cd6cf3788e36", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.150 [INFO] [stderr] Compiling strsim v0.10.0 [INFO] [stderr] Compiling ident_case v1.0.1 [INFO] [stderr] Compiling memoffset v0.9.0 [INFO] [stderr] Compiling crossbeam-epoch v0.9.15 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling siphasher v0.3.11 [INFO] [stderr] Compiling syn v2.0.39 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling phf_shared v0.11.2 [INFO] [stderr] Compiling rayon-core v1.12.0 [INFO] [stderr] Compiling libm v0.2.8 [INFO] [stderr] Compiling palette v0.7.3 [INFO] [stderr] Checking approx v0.5.1 [INFO] [stderr] Checking either v1.9.0 [INFO] [stderr] Checking fast-srgb8 v1.0.0 [INFO] [stderr] Checking crossbeam-deque v0.8.3 [INFO] [stderr] Compiling phf_generator v0.11.2 [INFO] [stderr] Checking glam v0.24.2 [INFO] [stderr] Checking rayon v1.8.0 [INFO] [stderr] Checking getrandom v0.2.11 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Compiling darling_core v0.20.3 [INFO] [stderr] Compiling serde_derive v1.0.193 [INFO] [stderr] Compiling phf_macros v0.11.2 [INFO] [stderr] Compiling palette_derive v0.7.3 [INFO] [stderr] Checking phf v0.11.2 [INFO] [stderr] Compiling darling_macro v0.20.3 [INFO] [stderr] Compiling darling v0.20.3 [INFO] [stderr] Compiling serde_with_macros v3.4.0 [INFO] [stderr] Checking serde v1.0.193 [INFO] [stderr] Checking serde_with v3.4.0 [INFO] [stderr] Checking serde_json v1.0.108 [INFO] [stderr] Checking raytracing-rust-experiment v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: type `hit_record` should have an upper camel case name [INFO] [stdout] --> src/hittable.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct hit_record<'material> { [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to upper camel case: `HitRecord` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `hit_record` should have an upper camel case name [INFO] [stdout] --> src/hittable.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct hit_record<'material> { [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to upper camel case: `HitRecord` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/material.rs:5:16 [INFO] [stdout] | [INFO] [stdout] 5 | hittable::{self, hit_record}, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/material.rs:5:16 [INFO] [stdout] | [INFO] [stdout] 5 | hittable::{self, hit_record}, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::ray::Ray` [INFO] [stdout] --> src/utils.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::ray::Ray; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::ray::Ray` [INFO] [stdout] --> src/utils.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::ray::Ray; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/material.rs:43:13 [INFO] [stdout] | [INFO] [stdout] 43 | let mut scatter_direction = hit_record.normal + random_in_unit_sphere(); [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: variable does not need to be mutable [INFO] [stdout] --> src/material.rs:43:13 [INFO] [stdout] | [INFO] [stdout] 43 | let mut scatter_direction = hit_record.normal + random_in_unit_sphere(); [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: value assigned to `p` is never read [INFO] [stdout] --> src/utils.rs:8:13 [INFO] [stdout] | [INFO] [stdout] 8 | let mut p = Vec3::new(0.0, 0.0, 0.0); [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: value assigned to `p` is never read [INFO] [stdout] --> src/utils.rs:8:13 [INFO] [stdout] | [INFO] [stdout] 8 | let mut p = Vec3::new(0.0, 0.0, 0.0); [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: struct `Camera` is never constructed [INFO] [stdout] --> src/camera.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Camera { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Camera` is never constructed [INFO] [stdout] --> src/camera.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Camera { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `get_ray` are never used [INFO] [stdout] --> src/camera.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl Camera { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] 15 | pub fn new(lookFrom: Vec3, lookAt: Vec3, vup: Vec3, vfov: f32, aspect: f32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn get_ray(&self, u: f32, v: f32) -> Ray { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `get_ray` are never used [INFO] [stdout] --> src/camera.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl Camera { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] 15 | pub fn new(lookFrom: Vec3, lookAt: Vec3, vup: Vec3, vfov: f32, aspect: f32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn get_ray(&self, u: f32, v: f32) -> Ray { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `t` and `material` are never read [INFO] [stdout] --> src/hittable.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct hit_record<'material> { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 7 | pub t: f32, [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 10 | pub material: &'material Material, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `hit_record` 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 `hit` is never used [INFO] [stdout] --> src/hittable.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Hittable { [INFO] [stdout] | -------- method in this trait [INFO] [stdout] 14 | fn hit(&self, ray: &Ray, t_min: f32, t_max: f32) -> Option; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `hit_world` is never used [INFO] [stdout] --> src/hittable.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn hit_world<'material>( [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Lambertian`, `Metal`, and `Dielectric` are never constructed [INFO] [stdout] --> src/material.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 19 | pub enum Material { [INFO] [stdout] | -------- variants in this enum [INFO] [stdout] 20 | Lambertian(Lambertian), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 21 | Metal(Metal), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 22 | Dielectric(Dielectric), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Material` 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: associated function `new` is never used [INFO] [stdout] --> src/material.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 35 | impl Lambertian { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] 36 | pub fn new(albedo: Vec3) -> Lambertian { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `t` and `material` are never read [INFO] [stdout] --> src/hittable.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct hit_record<'material> { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 7 | pub t: f32, [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 10 | pub material: &'material Material, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `hit_record` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/material.rs:58:12 [INFO] [stdout] | [INFO] [stdout] 57 | impl Metal { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] 58 | pub fn new(albedo: Vec3, f: f32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/sphere.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl Sphere { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 12 | pub fn new(center: Vec3, r: f32, material: Material) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `lookFrom` should have a snake case name [INFO] [stdout] --> src/camera.rs:15:16 [INFO] [stdout] | [INFO] [stdout] 15 | pub fn new(lookFrom: Vec3, lookAt: Vec3, vup: Vec3, vfov: f32, aspect: f32) -> Self { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `look_from` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `lookAt` should have a snake case name [INFO] [stdout] --> src/camera.rs:15:32 [INFO] [stdout] | [INFO] [stdout] 15 | pub fn new(lookFrom: Vec3, lookAt: Vec3, vup: Vec3, vfov: f32, aspect: f32) -> Self { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `look_at` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `THETA` should have a snake case name [INFO] [stdout] --> src/camera.rs:16:13 [INFO] [stdout] | [INFO] [stdout] 16 | let THETA = vfov * PI / 180.0; [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `theta` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `refractionIdx` should have a snake case name [INFO] [stdout] --> src/material.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | pub refractionIdx: f32, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `refraction_idx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `hit` is never used [INFO] [stdout] --> src/hittable.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub trait Hittable { [INFO] [stdout] | -------- method in this trait [INFO] [stdout] 14 | fn hit(&self, ray: &Ray, t_min: f32, t_max: f32) -> Option; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `hit_world` is never used [INFO] [stdout] --> src/hittable.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn hit_world<'material>( [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Lambertian`, `Metal`, and `Dielectric` are never constructed [INFO] [stdout] --> src/material.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 19 | pub enum Material { [INFO] [stdout] | -------- variants in this enum [INFO] [stdout] 20 | Lambertian(Lambertian), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 21 | Metal(Metal), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 22 | Dielectric(Dielectric), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Material` 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: associated function `new` is never used [INFO] [stdout] --> src/material.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 35 | impl Lambertian { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] 36 | pub fn new(albedo: Vec3) -> Lambertian { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/material.rs:58:12 [INFO] [stdout] | [INFO] [stdout] 57 | impl Metal { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] 58 | pub fn new(albedo: Vec3, f: f32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/sphere.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl Sphere { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 12 | pub fn new(center: Vec3, r: f32, material: Material) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `lookFrom` should have a snake case name [INFO] [stdout] --> src/camera.rs:15:16 [INFO] [stdout] | [INFO] [stdout] 15 | pub fn new(lookFrom: Vec3, lookAt: Vec3, vup: Vec3, vfov: f32, aspect: f32) -> Self { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `look_from` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `lookAt` should have a snake case name [INFO] [stdout] --> src/camera.rs:15:32 [INFO] [stdout] | [INFO] [stdout] 15 | pub fn new(lookFrom: Vec3, lookAt: Vec3, vup: Vec3, vfov: f32, aspect: f32) -> Self { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `look_at` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `THETA` should have a snake case name [INFO] [stdout] --> src/camera.rs:16:13 [INFO] [stdout] | [INFO] [stdout] 16 | let THETA = vfov * PI / 180.0; [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `theta` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `refractionIdx` should have a snake case name [INFO] [stdout] --> src/material.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | pub refractionIdx: f32, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `refraction_idx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 18 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 18 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `hit_record` should have an upper camel case name [INFO] [stdout] --> src/hittable.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct hit_record<'material> { [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to upper camel case: `HitRecord` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/material.rs:5:16 [INFO] [stdout] | [INFO] [stdout] 5 | hittable::{self, hit_record}, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::ray::Ray` [INFO] [stdout] --> src/utils.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::ray::Ray; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `hit_record` should have an upper camel case name [INFO] [stdout] --> src/hittable.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct hit_record<'material> { [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to upper camel case: `HitRecord` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/material.rs:5:16 [INFO] [stdout] | [INFO] [stdout] 5 | hittable::{self, hit_record}, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::ray::Ray` [INFO] [stdout] --> src/utils.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::ray::Ray; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/material.rs:43:13 [INFO] [stdout] | [INFO] [stdout] 43 | let mut scatter_direction = hit_record.normal + random_in_unit_sphere(); [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: variable does not need to be mutable [INFO] [stdout] --> src/material.rs:43:13 [INFO] [stdout] | [INFO] [stdout] 43 | let mut scatter_direction = hit_record.normal + random_in_unit_sphere(); [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: value assigned to `p` is never read [INFO] [stdout] --> src/utils.rs:8:13 [INFO] [stdout] | [INFO] [stdout] 8 | let mut p = Vec3::new(0.0, 0.0, 0.0); [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: value assigned to `p` is never read [INFO] [stdout] --> src/utils.rs:8:13 [INFO] [stdout] | [INFO] [stdout] 8 | let mut p = Vec3::new(0.0, 0.0, 0.0); [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: associated function `new` is never used [INFO] [stdout] --> src/material.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 35 | impl Lambertian { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] 36 | pub fn new(albedo: Vec3) -> Lambertian { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/material.rs:58:12 [INFO] [stdout] | [INFO] [stdout] 57 | impl Metal { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] 58 | pub fn new(albedo: Vec3, f: f32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/material.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 35 | impl Lambertian { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] 36 | pub fn new(albedo: Vec3) -> Lambertian { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/sphere.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl Sphere { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 12 | pub fn new(center: Vec3, r: f32, material: Material) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/material.rs:58:12 [INFO] [stdout] | [INFO] [stdout] 57 | impl Metal { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] 58 | pub fn new(albedo: Vec3, f: f32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/sphere.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl Sphere { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 12 | pub fn new(center: Vec3, r: f32, material: Material) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:122:9 [INFO] [stdout] | [INFO] [stdout] 122 | file_lock.write(format!("P3{}{} {}{}255{}", '\n', nx, ny, '\n', '\n').as_bytes()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 122 | let _ = file_lock.write(format!("P3{}{} {}{}255{}", '\n', nx, ny, '\n', '\n').as_bytes()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:122:9 [INFO] [stdout] | [INFO] [stdout] 122 | file_lock.write(format!("P3{}{} {}{}255{}", '\n', nx, ny, '\n', '\n').as_bytes()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 122 | let _ = file_lock.write(format!("P3{}{} {}{}255{}", '\n', nx, ny, '\n', '\n').as_bytes()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `lookFrom` should have a snake case name [INFO] [stdout] --> src/camera.rs:15:16 [INFO] [stdout] | [INFO] [stdout] 15 | pub fn new(lookFrom: Vec3, lookAt: Vec3, vup: Vec3, vfov: f32, aspect: f32) -> Self { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `look_from` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `lookFrom` should have a snake case name [INFO] [stdout] --> src/camera.rs:15:16 [INFO] [stdout] | [INFO] [stdout] 15 | pub fn new(lookFrom: Vec3, lookAt: Vec3, vup: Vec3, vfov: f32, aspect: f32) -> Self { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `look_from` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `lookAt` should have a snake case name [INFO] [stdout] --> src/camera.rs:15:32 [INFO] [stdout] | [INFO] [stdout] 15 | pub fn new(lookFrom: Vec3, lookAt: Vec3, vup: Vec3, vfov: f32, aspect: f32) -> Self { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `look_at` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `lookAt` should have a snake case name [INFO] [stdout] --> src/camera.rs:15:32 [INFO] [stdout] | [INFO] [stdout] 15 | pub fn new(lookFrom: Vec3, lookAt: Vec3, vup: Vec3, vfov: f32, aspect: f32) -> Self { [INFO] [stdout] | ^^^^^^ help: convert the identifier to snake case: `look_at` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `THETA` should have a snake case name [INFO] [stdout] --> src/camera.rs:16:13 [INFO] [stdout] | [INFO] [stdout] 16 | let THETA = vfov * PI / 180.0; [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `theta` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `THETA` should have a snake case name [INFO] [stdout] --> src/camera.rs:16:13 [INFO] [stdout] | [INFO] [stdout] 16 | let THETA = vfov * PI / 180.0; [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `theta` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `refractionIdx` should have a snake case name [INFO] [stdout] --> src/material.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | pub refractionIdx: f32, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `refraction_idx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `refractionIdx` should have a snake case name [INFO] [stdout] --> src/material.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | pub refractionIdx: f32, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `refraction_idx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 13 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 13 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.72s [INFO] running `Command { std: "docker" "inspect" "7bb218898986f97d345b52ec7ee8afcfcf9e92683879d9d0def7cd6cf3788e36", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7bb218898986f97d345b52ec7ee8afcfcf9e92683879d9d0def7cd6cf3788e36", kill_on_drop: false }` [INFO] [stdout] 7bb218898986f97d345b52ec7ee8afcfcf9e92683879d9d0def7cd6cf3788e36