[INFO] updating cached repository bumzack/raytracer-challenge [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/bumzack/raytracer-challenge [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/bumzack/raytracer-challenge" "work/ex/pr-63376/sources/master#60960a260f7b5c695fd0717311d72ce62dd4eb43/gh/bumzack/raytracer-challenge"` [INFO] [stderr] Cloning into 'work/ex/pr-63376/sources/master#60960a260f7b5c695fd0717311d72ce62dd4eb43/gh/bumzack/raytracer-challenge'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/bumzack/raytracer-challenge" "work/ex/pr-63376/sources/try#266783e4e09e4e9d5307c1c8e695659c58bbcac7/gh/bumzack/raytracer-challenge"` [INFO] [stderr] Cloning into 'work/ex/pr-63376/sources/try#266783e4e09e4e9d5307c1c8e695659c58bbcac7/gh/bumzack/raytracer-challenge'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 63db9e141605b714ae5f8bfa0c1f46227dcdc14d [INFO] sha for GitHub repo bumzack/raytracer-challenge: 63db9e141605b714ae5f8bfa0c1f46227dcdc14d [INFO] validating manifest of bumzack/raytracer-challenge on toolchain master#60960a260f7b5c695fd0717311d72ce62dd4eb43 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+60960a260f7b5c695fd0717311d72ce62dd4eb43-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of bumzack/raytracer-challenge on toolchain try#266783e4e09e4e9d5307c1c8e695659c58bbcac7 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+266783e4e09e4e9d5307c1c8e695659c58bbcac7-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing bumzack/raytracer-challenge [INFO] finished frobbing bumzack/raytracer-challenge [INFO] frobbed toml for bumzack/raytracer-challenge written to work/ex/pr-63376/sources/master#60960a260f7b5c695fd0717311d72ce62dd4eb43/gh/bumzack/raytracer-challenge/Cargo.toml [INFO] started frobbing bumzack/raytracer-challenge [INFO] finished frobbing bumzack/raytracer-challenge [INFO] frobbed toml for bumzack/raytracer-challenge written to work/ex/pr-63376/sources/try#266783e4e09e4e9d5307c1c8e695659c58bbcac7/gh/bumzack/raytracer-challenge/Cargo.toml [INFO] crate bumzack/raytracer-challenge already has a lockfile, it will not be regenerated [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+60960a260f7b5c695fd0717311d72ce62dd4eb43-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+266783e4e09e4e9d5307c1c8e695659c58bbcac7-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] checking bumzack/raytracer-challenge against master#60960a260f7b5c695fd0717311d72ce62dd4eb43 for pr-63376 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-63376/worker-2/master#60960a260f7b5c695fd0717311d72ce62dd4eb43:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/pr-63376/sources/master#60960a260f7b5c695fd0717311d72ce62dd4eb43/gh/bumzack/raytracer-challenge:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+60960a260f7b5c695fd0717311d72ce62dd4eb43-alt" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 2d18a0d18d6f628ab76125925edc0ba21738a84183517760e72cdd794856b3e7 [INFO] running `"docker" "start" "-a" "2d18a0d18d6f628ab76125925edc0ba21738a84183517760e72cdd794856b3e7"` [INFO] [stderr] Checking raytracer-challenge v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: unused import: `assert_tuple` [INFO] [stderr] --> src/main.rs:10:41 [INFO] [stderr] | [INFO] [stderr] 10 | use crate::math::common::{assert_color, assert_tuple}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `assert_color`, `assert_float` [INFO] [stderr] --> src/basics/color.rs:3:27 [INFO] [stderr] | [INFO] [stderr] 3 | use crate::math::common::{assert_color, assert_float}; [INFO] [stderr] | ^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::math::common::assert_float` [INFO] [stderr] --> src/basics/ray.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use crate::math::common::assert_float; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::math::common::assert_tuple` [INFO] [stderr] --> src/basics/ray.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use crate::math::common::assert_tuple; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::math::common::assert_tuple` [INFO] [stderr] --> src/basics/intersection.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use crate::math::common::assert_tuple; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::math::tuple4d::Tuple4D` [INFO] [stderr] --> src/basics/intersection.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use crate::math::tuple4d::Tuple4D; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `PI`, `SQRT_2` [INFO] [stderr] --> src/basics/camera.rs:1:24 [INFO] [stderr] | [INFO] [stderr] 1 | use std::f32::consts::{PI, SQRT_2}; [INFO] [stderr] | ^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Arc`, `Mutex` [INFO] [stderr] --> src/basics/camera.rs:2:17 [INFO] [stderr] | [INFO] [stderr] 2 | use std::sync::{Arc, Mutex}; [INFO] [stderr] | ^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::thread` [INFO] [stderr] --> src/basics/camera.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use std::thread; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::time::Instant` [INFO] [stderr] --> src/basics/camera.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::time::Instant; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Color` [INFO] [stderr] --> src/basics/camera.rs:8:28 [INFO] [stderr] | [INFO] [stderr] 8 | use crate::basics::color::{Color, ColorOps}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `assert_color`, `assert_float`, `assert_matrix`, `assert_tuple` [INFO] [stderr] --> src/basics/camera.rs:11:27 [INFO] [stderr] | [INFO] [stderr] 11 | use crate::math::common::{assert_color, assert_float, assert_matrix, assert_tuple}; [INFO] [stderr] | ^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::world::world::default_world` [INFO] [stderr] --> src/basics/camera.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | use crate::world::world::default_world; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::f32::consts::SQRT_2` [INFO] [stderr] --> src/material/material.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::f32::consts::SQRT_2; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `WHITE` [INFO] [stderr] --> src/material/material.rs:3:35 [INFO] [stderr] | [INFO] [stderr] 3 | use crate::basics::color::{BLACK, WHITE}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::light::pointlight::PointLight` [INFO] [stderr] --> src/material/material.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use crate::light::pointlight::PointLight; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `assert_color`, `assert_float` [INFO] [stderr] --> src/material/material.rs:8:27 [INFO] [stderr] | [INFO] [stderr] 8 | use crate::math::common::{assert_color, assert_float}; [INFO] [stderr] | ^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::f32::consts::SQRT_2` [INFO] [stderr] --> src/math/tuple4d.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::f32::consts::SQRT_2; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `assert_float`, `assert_tuple` [INFO] [stderr] --> src/math/tuple4d.rs:4:27 [INFO] [stderr] | [INFO] [stderr] 4 | use crate::math::common::{assert_float, assert_tuple}; [INFO] [stderr] | ^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `PI`, `SQRT_2` [INFO] [stderr] --> src/math/matrix.rs:1:24 [INFO] [stderr] | [INFO] [stderr] 1 | use std::f32::consts::{PI, SQRT_2}; [INFO] [stderr] | ^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `assert_float`, `assert_matrix`, `assert_tuple` [INFO] [stderr] --> src/math/matrix.rs:4:27 [INFO] [stderr] | [INFO] [stderr] 4 | use crate::math::common::{assert_float, assert_matrix, assert_tuple, assert_two_float}; [INFO] [stderr] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `FRAC_1_SQRT_2`, `PI`, `SQRT_2` [INFO] [stderr] --> src/shape/sphere.rs:1:24 [INFO] [stderr] | [INFO] [stderr] 1 | use std::f32::consts::{FRAC_1_SQRT_2, PI, SQRT_2}; [INFO] [stderr] | ^^^^^^^^^^^^^ ^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Intersection` [INFO] [stderr] --> src/shape/sphere.rs:3:35 [INFO] [stderr] | [INFO] [stderr] 3 | use crate::basics::intersection::{Intersection, IntersectionListOps}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `assert_float`, `assert_matrix`, `assert_tuple` [INFO] [stderr] --> src/shape/sphere.rs:9:27 [INFO] [stderr] | [INFO] [stderr] 9 | use crate::math::common::{assert_float, assert_matrix, assert_tuple}; [INFO] [stderr] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::shape::shape::Shape` [INFO] [stderr] --> src/shape/sphere.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use crate::shape::shape::Shape; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::Error` [INFO] [stderr] --> src/world/world.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::io::Error; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Canvas` [INFO] [stderr] --> src/world/world.rs:3:29 [INFO] [stderr] | [INFO] [stderr] 3 | use crate::basics::canvas::{Canvas, CanvasOps}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::math::common::assert_color` [INFO] [stderr] --> src/world/world.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use crate::math::common::assert_color; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `assert_tuple` [INFO] [stderr] --> src/main.rs:10:41 [INFO] [stderr] | [INFO] [stderr] 10 | use crate::math::common::{assert_color, assert_tuple}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Arc`, `Mutex` [INFO] [stderr] --> src/basics/camera.rs:2:17 [INFO] [stderr] | [INFO] [stderr] 2 | use std::sync::{Arc, Mutex}; [INFO] [stderr] | ^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::thread` [INFO] [stderr] --> src/basics/camera.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use std::thread; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::time::Instant` [INFO] [stderr] --> src/basics/camera.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::time::Instant; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::Error` [INFO] [stderr] --> src/world/world.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::io::Error; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Canvas` [INFO] [stderr] --> src/world/world.rs:3:29 [INFO] [stderr] | [INFO] [stderr] 3 | use crate::basics::canvas::{Canvas, CanvasOps}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::math::matrix::MatrixOps` [INFO] [stderr] --> src/basics/ray.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use crate::math::matrix::MatrixOps; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::math::tuple4d::Tuple` [INFO] [stderr] --> src/basics/intersection.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use crate::math::tuple4d::Tuple; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ColorOps` [INFO] [stderr] --> src/basics/camera.rs:8:35 [INFO] [stderr] | [INFO] [stderr] 8 | use crate::basics::color::{Color, ColorOps}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `IntersectionListOps` [INFO] [stderr] --> src/shape/sphere.rs:3:49 [INFO] [stderr] | [INFO] [stderr] 3 | use crate::basics::intersection::{Intersection, IntersectionListOps}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::basics::intersection::IntersectionOps` [INFO] [stderr] --> src/shape/sphere.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use crate::basics::intersection::IntersectionOps; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::basics::ray::RayOps` [INFO] [stderr] --> src/shape/sphere.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use crate::basics::ray::RayOps; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `CanvasOps` [INFO] [stderr] --> src/world/world.rs:3:37 [INFO] [stderr] | [INFO] [stderr] 3 | use crate::basics::canvas::{Canvas, CanvasOps}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::basics::ray::RayOps` [INFO] [stderr] --> src/world/world.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use crate::basics::ray::RayOps; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `i` is assigned to, but never used [INFO] [stderr] --> src/basics/canvas.rs:62:21 [INFO] [stderr] | [INFO] [stderr] 62 | let mut i = 0; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] = note: consider using `_i` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `s` [INFO] [stderr] --> src/shape/sphere.rs:47:18 [INFO] [stderr] | [INFO] [stderr] 47 | fn intersect(s: &Sphere, r: &Ray) -> Option> { [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_s` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:28:9 [INFO] [stderr] | [INFO] [stderr] 28 | let mut w = default_world(); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `WHITE` [INFO] [stderr] --> src/basics/color.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | pub const WHITE: Color = Color { r: 1.0, g: 1.0, b: 1.0 }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: field is never used: `t` [INFO] [stderr] --> src/basics/precomputed_component.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | t: f32, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `inside` [INFO] [stderr] --> src/basics/precomputed_component.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | inside: bool, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_t` [INFO] [stderr] --> src/basics/precomputed_component.rs:25:5 [INFO] [stderr] | [INFO] [stderr] 25 | pub fn get_t(&self) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_inside` [INFO] [stderr] --> src/basics/precomputed_component.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 41 | pub fn get_inside(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `setup` [INFO] [stderr] --> src/material/material.rs:92:1 [INFO] [stderr] | [INFO] [stderr] 92 | fn setup() -> (Material, Tuple4D) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `assert_matrix` [INFO] [stderr] --> src/math/common.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | pub fn assert_matrix(actual: &Matrix, expected: &Matrix) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `assert_tuple` [INFO] [stderr] --> src/math/common.rs:27:1 [INFO] [stderr] | [INFO] [stderr] 27 | pub fn assert_tuple(actual: &Tuple4D, expected: &Tuple4D) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `assert_color` [INFO] [stderr] --> src/math/common.rs:34:1 [INFO] [stderr] | [INFO] [stderr] 34 | pub fn assert_color(actual: &Color, expected: &Color) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `assert_float` [INFO] [stderr] --> src/math/common.rs:50:1 [INFO] [stderr] | [INFO] [stderr] 50 | pub fn assert_float(actual: f32, expected: f32) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_material_mut` [INFO] [stderr] --> src/shape/shape.rs:25:5 [INFO] [stderr] | [INFO] [stderr] 25 | pub fn get_material_mut(&mut self) -> &mut Material { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_transformation` [INFO] [stderr] --> src/shape/shape.rs:32:5 [INFO] [stderr] | [INFO] [stderr] 32 | pub fn get_transformation(&self) -> &Matrix { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_inverse_transformation` [INFO] [stderr] --> src/shape/shape.rs:39:5 [INFO] [stderr] | [INFO] [stderr] 39 | pub fn get_inverse_transformation(&self) -> &Matrix { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `default_world` [INFO] [stderr] --> src/world/world.rs:86:1 [INFO] [stderr] | [INFO] [stderr] 86 | pub fn default_world() -> World { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `main2` [INFO] [stderr] --> src/main.rs:27:1 [INFO] [stderr] | [INFO] [stderr] 27 | fn main2() { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/main.rs:126:5 [INFO] [stderr] | [INFO] [stderr] 126 | canvas.write_ppm("wusch.ppm"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: variable `EPSILON` should have a snake case name [INFO] [stderr] --> src/math/common.rs:41:9 [INFO] [stderr] | [INFO] [stderr] 41 | let EPSILON = 0.00001; [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `epsilon` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `CanvasOps` [INFO] [stderr] --> src/world/world.rs:3:37 [INFO] [stderr] | [INFO] [stderr] 3 | use crate::basics::canvas::{Canvas, CanvasOps}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable `i` is assigned to, but never used [INFO] [stderr] --> src/basics/canvas.rs:62:21 [INFO] [stderr] | [INFO] [stderr] 62 | let mut i = 0; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] = note: consider using `_i` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i_list` [INFO] [stderr] --> src/basics/intersection.rs:162:9 [INFO] [stderr] | [INFO] [stderr] 162 | let i_list = IntersectionList::new(); [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_i_list` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/basics/intersection.rs:230:9 [INFO] [stderr] | [INFO] [stderr] 230 | let i = il.hit(); [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `s` [INFO] [stderr] --> src/shape/sphere.rs:47:18 [INFO] [stderr] | [INFO] [stderr] 47 | fn intersect(s: &Sphere, r: &Ray) -> Option> { [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_s` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `c_expected` is never read [INFO] [stderr] --> src/world/world.rs:216:13 [INFO] [stderr] | [INFO] [stderr] 216 | let mut c_expected = Color::new(0.0, 0.0, 0.0); [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:28:9 [INFO] [stderr] | [INFO] [stderr] 28 | let mut w = default_world(); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/world/world.rs:180:9 [INFO] [stderr] | [INFO] [stderr] 180 | let mut w = default_world(); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/world/world.rs:218:9 [INFO] [stderr] | [INFO] [stderr] 218 | let mut shapes = w.get_shapes_mut(); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: field is never used: `t` [INFO] [stderr] --> src/basics/precomputed_component.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | t: f32, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_t` [INFO] [stderr] --> src/basics/precomputed_component.rs:25:5 [INFO] [stderr] | [INFO] [stderr] 25 | pub fn get_t(&self) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_transformation` [INFO] [stderr] --> src/shape/shape.rs:32:5 [INFO] [stderr] | [INFO] [stderr] 32 | pub fn get_transformation(&self) -> &Matrix { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_inverse_transformation` [INFO] [stderr] --> src/shape/shape.rs:39:5 [INFO] [stderr] | [INFO] [stderr] 39 | pub fn get_inverse_transformation(&self) -> &Matrix { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `main2` [INFO] [stderr] --> src/main.rs:27:1 [INFO] [stderr] | [INFO] [stderr] 27 | fn main2() { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/main.rs:126:5 [INFO] [stderr] | [INFO] [stderr] 126 | canvas.write_ppm("wusch.ppm"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/basics/canvas.rs:153:5 [INFO] [stderr] | [INFO] [stderr] 153 | c.write_ppm("test_output.ppm"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: variable `EPSILON` should have a snake case name [INFO] [stderr] --> src/math/common.rs:41:9 [INFO] [stderr] | [INFO] [stderr] 41 | let EPSILON = 0.00001; [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `epsilon` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1.83s [INFO] running `"docker" "inspect" "2d18a0d18d6f628ab76125925edc0ba21738a84183517760e72cdd794856b3e7"` [INFO] running `"docker" "rm" "-f" "2d18a0d18d6f628ab76125925edc0ba21738a84183517760e72cdd794856b3e7"` [INFO] [stdout] 2d18a0d18d6f628ab76125925edc0ba21738a84183517760e72cdd794856b3e7