[INFO] cloning repository https://github.com/leoherbsthofer/rust_raytracer [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/leoherbsthofer/rust_raytracer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fleoherbsthofer%2Frust_raytracer", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fleoherbsthofer%2Frust_raytracer'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 13d7f8bace0d1ac69a10ce4c262be75cd581efa6 [INFO] testing leoherbsthofer/rust_raytracer against 1.60.0 for beta-1.61-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fleoherbsthofer%2Frust_raytracer" "/workspace/builds/worker-2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2/source'... [INFO] [stderr] done. [INFO] [stderr] Updating files: 37% (26/70) Updating files: 38% (27/70) Updating files: 40% (28/70) Updating files: 41% (29/70) Updating files: 42% (30/70) Updating files: 44% (31/70) Updating files: 45% (32/70) Updating files: 47% (33/70) Updating files: 48% (34/70) Updating files: 50% (35/70) Updating files: 51% (36/70) Updating files: 52% (37/70) Updating files: 54% (38/70) Updating files: 55% (39/70) Updating files: 57% (40/70) Updating files: 58% (41/70) Updating files: 60% (42/70) Updating files: 61% (43/70) Updating files: 62% (44/70) Updating files: 64% (45/70) Updating files: 65% (46/70) Updating files: 67% (47/70) Updating files: 68% (48/70) Updating files: 70% (49/70) Updating files: 71% (50/70) Updating files: 72% (51/70) Updating files: 74% (52/70) Updating files: 75% (53/70) Updating files: 77% (54/70) Updating files: 78% (55/70) Updating files: 80% (56/70) Updating files: 81% (57/70) Updating files: 82% (58/70) Updating files: 84% (59/70) Updating files: 85% (60/70) Updating files: 87% (61/70) Updating files: 88% (62/70) Updating files: 90% (63/70) Updating files: 91% (64/70) Updating files: 92% (65/70) Updating files: 94% (66/70) Updating files: 95% (67/70) Updating files: 97% (68/70) Updating files: 98% (69/70) Updating files: 100% (70/70) Updating files: 100% (70/70), done. [INFO] validating manifest of git repo https://github.com/leoherbsthofer/rust_raytracer on toolchain 1.60.0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/leoherbsthofer/rust_raytracer [INFO] finished tweaking git repo https://github.com/leoherbsthofer/rust_raytracer [INFO] tweaked toml for git repo https://github.com/leoherbsthofer/rust_raytracer written to /workspace/builds/worker-2/source/Cargo.toml [INFO] crate git repo https://github.com/leoherbsthofer/rust_raytracer already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded dyn-clone v1.0.1 [INFO] [stderr] Downloaded sdl2-sys v0.34.0 [INFO] [stderr] Downloaded sdl2 v0.34.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/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:eaef2f80f755933c374d2ae5edccceec0c1312ceb8a4e0b6404e8ab76561e1e5" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 6038a94328d2250ab8738811f52baeb1dcef8b957d0c3695dea69c21a8ff03bb [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "6038a94328d2250ab8738811f52baeb1dcef8b957d0c3695dea69c21a8ff03bb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "6038a94328d2250ab8738811f52baeb1dcef8b957d0c3695dea69c21a8ff03bb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6038a94328d2250ab8738811f52baeb1dcef8b957d0c3695dea69c21a8ff03bb", kill_on_drop: false }` [INFO] [stdout] 6038a94328d2250ab8738811f52baeb1dcef8b957d0c3695dea69c21a8ff03bb [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/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=warn" "-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:eaef2f80f755933c374d2ae5edccceec0c1312ceb8a4e0b6404e8ab76561e1e5" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 0fb0ac75deadd36777554db48f9992d4d7c91570e0e82bef2110e2a9f1cfadaa [INFO] running `Command { std: "docker" "start" "-a" "0fb0ac75deadd36777554db48f9992d4d7c91570e0e82bef2110e2a9f1cfadaa", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.69 [INFO] [stderr] Compiling adler32 v1.0.4 [INFO] [stderr] Compiling getrandom v0.1.14 [INFO] [stderr] Compiling cgmath v0.17.0 [INFO] [stderr] Compiling sdl2 v0.34.1 [INFO] [stderr] Compiling bytemuck v1.2.0 [INFO] [stderr] Compiling raytracer v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Compiling dyn-clone v1.0.1 [INFO] [stderr] Compiling num-integer v0.1.42 [INFO] [stderr] Compiling num-iter v0.1.40 [INFO] [stderr] Compiling num-rational v0.2.4 [INFO] [stderr] Compiling sdl2-sys v0.34.0 [INFO] [stderr] Compiling approx v0.3.2 [INFO] [stderr] Compiling deflate v0.8.4 [INFO] [stderr] Compiling inflate v0.4.5 [INFO] [stderr] Compiling miniz_oxide v0.3.6 [INFO] [stderr] Compiling tiff v0.4.0 [INFO] [stderr] Compiling png v0.16.3 [INFO] [stderr] Compiling num_cpus v1.13.0 [INFO] [stderr] Compiling rand_os v0.1.3 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling colored v1.9.3 [INFO] [stderr] Compiling rayon-core v1.7.0 [INFO] [stderr] Compiling threadpool v1.8.0 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Compiling rand_core v0.5.1 [INFO] [stderr] Compiling rand_chacha v0.2.2 [INFO] [stderr] Compiling rayon v1.3.0 [INFO] [stderr] Compiling rand v0.7.3 [INFO] [stderr] Compiling jpeg-decoder v0.1.19 [INFO] [stderr] Compiling image v0.23.4 [INFO] [stdout] warning: unused import: `dyn_clone::DynClone` [INFO] [stdout] --> src/hitable.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use dyn_clone::DynClone; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Texture` [INFO] [stdout] --> src/sphere.rs:7:22 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::texture::{Texture, UVCoords}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `image::error::LimitErrorKind::DimensionError` [INFO] [stdout] --> src/dielectric.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use image::error::LimitErrorKind::DimensionError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::image_output::ImageOutput` [INFO] [stdout] --> src/render_engine_multithread.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::image_output::ImageOutput; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread` [INFO] [stdout] --> src/render_engine_multithread.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::mpsc::Sender` [INFO] [stdout] --> src/render_engine_multithread.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use std::sync::mpsc::Sender; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sdl2::EventPump` [INFO] [stdout] --> src/sdl_preview/sdl_output.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use sdl2::EventPump; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Texture`, `WindowCanvas` [INFO] [stdout] --> src/sdl_preview/sdl_output.rs:4:20 [INFO] [stdout] | [INFO] [stdout] 4 | use sdl2::render::{WindowCanvas, Texture}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Point` [INFO] [stdout] --> src/sdl_preview/sdl_output.rs:5:18 [INFO] [stdout] | [INFO] [stdout] 5 | use sdl2::rect::{Point, Rect}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::thread_rng` [INFO] [stdout] --> src/sdl_preview/sdl_output.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use rand::thread_rng; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/sdl_preview/sdl_output.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `max`, `min` [INFO] [stdout] --> src/AABB.rs:3:16 [INFO] [stdout] | [INFO] [stdout] 3 | use std::cmp::{min, max}; [INFO] [stdout] | ^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::image_output::ImageOutput` [INFO] [stdout] --> src/main.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | use crate::image_output::ImageOutput; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sdl2::log::Category::Render` [INFO] [stdout] --> src/main.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 46 | use sdl2::log::Category::Render; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::bvh_node::BVHNode` [INFO] [stdout] --> src/main.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 48 | use crate::bvh_node::BVHNode; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/main.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | let n = 500; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `info` [INFO] [stdout] --> src/image_output.rs:17:37 [INFO] [stdout] | [INFO] [stdout] 17 | fn save (&mut self, path: &str, info: RenderInformation) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_info` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/image_output.rs:28:27 [INFO] [stdout] | [INFO] [stdout] 28 | fn set_row(&mut self, y: usize, c: Vec) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `c` [INFO] [stdout] --> src/image_output.rs:28:37 [INFO] [stdout] | [INFO] [stdout] 28 | fn set_row(&mut self, y: usize, c: Vec) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `time0` [INFO] [stdout] --> src/sphere.rs:66:28 [INFO] [stdout] | [INFO] [stdout] 66 | fn bounding_box(&self, time0: f64, time1: f64, output_box: &mut AABB) -> bool { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_time0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `time1` [INFO] [stdout] --> src/sphere.rs:66:40 [INFO] [stdout] | [INFO] [stdout] 66 | fn bounding_box(&self, time0: f64, time1: f64, output_box: &mut AABB) -> bool { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_time1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `outward_normal` is never read [INFO] [stdout] --> src/dielectric.rs:42:17 [INFO] [stdout] | [INFO] [stdout] 42 | let mut outward_normal = Vector3::new(0.0, 0.0, 0.0); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> src/render_engine_multithread.rs:76:25 [INFO] [stdout] | [INFO] [stdout] 76 | for s in 0..ns { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `emissive` [INFO] [stdout] --> src/render_engine_multithread.rs:114:21 [INFO] [stdout] | [INFO] [stdout] 114 | let mut emissive = false; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_emissive` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `emission` [INFO] [stdout] --> src/render_engine_multithread.rs:115:21 [INFO] [stdout] | [INFO] [stdout] 115 | let mut emission = Vector3::new(0.0, 0.0, 0.0); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_emission` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `time0` [INFO] [stdout] --> src/bvh_node.rs:85:28 [INFO] [stdout] | [INFO] [stdout] 85 | fn bounding_box(&self, time0: f64, time1: f64, output_box: &mut AABB) -> bool { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_time0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `time1` [INFO] [stdout] --> src/bvh_node.rs:85:40 [INFO] [stdout] | [INFO] [stdout] 85 | fn bounding_box(&self, time0: f64, time1: f64, output_box: &mut AABB) -> bool { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_time1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `u` [INFO] [stdout] --> src/solid_color_texture.rs:9:21 [INFO] [stdout] | [INFO] [stdout] 9 | fn value(&self, u: f64, v: f64, p: Vector3) -> Vector3 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_u` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v` [INFO] [stdout] --> src/solid_color_texture.rs:9:29 [INFO] [stdout] | [INFO] [stdout] 9 | fn value(&self, u: f64, v: f64, p: Vector3) -> Vector3 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `p` [INFO] [stdout] --> src/solid_color_texture.rs:9:37 [INFO] [stdout] | [INFO] [stdout] 9 | fn value(&self, u: f64, v: f64, p: Vector3) -> Vector3 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_p` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `path` [INFO] [stdout] --> src/sdl_preview/sdl_output.rs:25:24 [INFO] [stdout] | [INFO] [stdout] 25 | fn save(&mut self, path: &str, info: RenderInformation) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `info` [INFO] [stdout] --> src/sdl_preview/sdl_output.rs:25:36 [INFO] [stdout] | [INFO] [stdout] 25 | fn save(&mut self, path: &str, info: RenderInformation) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_info` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pitch` [INFO] [stdout] --> src/sdl_preview/sdl_output.rs:139:61 [INFO] [stdout] | [INFO] [stdout] 139 | texture.with_lock(None, |buffer: &mut [u8], pitch: usize| { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_pitch` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/sdl_preview/sdl_output.rs:165:13 [INFO] [stdout] | [INFO] [stdout] 165 | for y in 0..height { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/image_output.rs:65:13 [INFO] [stdout] | [INFO] [stdout] 65 | for mut i in self.pixels.iter_mut() { //remap pixel between 0 and 1 [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/dielectric.rs:47:13 [INFO] [stdout] | [INFO] [stdout] 47 | let mut reflect_prob: f64; [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/dielectric.rs:48:13 [INFO] [stdout] | [INFO] [stdout] 48 | let mut cosine: f64; [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/render_engine_multithread.rs:114:17 [INFO] [stdout] | [INFO] [stdout] 114 | let mut emissive = 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/render_engine_multithread.rs:115:17 [INFO] [stdout] | [INFO] [stdout] 115 | let mut emission = Vector3::new(0.0, 0.0, 0.0); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `random_scene` [INFO] [stdout] --> src/main.rs:51:4 [INFO] [stdout] | [INFO] [stdout] 51 | fn random_scene(scene: &mut Vec>) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/image_output.rs:38:12 [INFO] [stdout] | [INFO] [stdout] 38 | pub fn new (width: u32, height: u32) -> ImageOutput { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `remap_pixel_range` [INFO] [stdout] --> src/image_output.rs:46:12 [INFO] [stdout] | [INFO] [stdout] 46 | pub fn remap_pixel_range(&mut self, max_brightness: f64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `to_sdl_color` [INFO] [stdout] --> src/color.rs:79:12 [INFO] [stdout] | [INFO] [stdout] 79 | pub fn to_sdl_color(&self) -> sdl2::pixels::Color { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `duplicate` [INFO] [stdout] --> src/scene.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn duplicate(&self) -> Scene { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/moving_sphere.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn new(center0: Vector3, center1: Vector3, t0: f64, t1: f64, radius: f64, material: Box) -> MovingSphere { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `box_compare` [INFO] [stdout] --> src/bvh_node.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 16 | fn box_compare(a: &Arc, b: &Arc, axis: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `box_x_compare` [INFO] [stdout] --> src/bvh_node.rs:25:8 [INFO] [stdout] | [INFO] [stdout] 25 | fn box_x_compare(a: &Arc, b: &Arc) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `box_y_compare` [INFO] [stdout] --> src/bvh_node.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | fn box_y_compare(a: &Arc, b: &Arc) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `box_z_compare` [INFO] [stdout] --> src/bvh_node.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 33 | fn box_z_compare(a: &Arc, b: &Arc) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/bvh_node.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 37 | pub fn new(src_objects: Vec>, start: usize, end: usize, time0: f64, time1: f64) -> BVHNode { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `AABB` should have a snake case name [INFO] [stdout] --> src/main.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | mod AABB; [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `aabb` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `RGB` should have a snake case name [INFO] [stdout] --> src/color.rs:71:12 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn RGB(r: u8, g: u8, b: u8) -> Color { [INFO] [stdout] | ^^^ help: convert the identifier to snake case: `rgb` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `newTime` should have a snake case name [INFO] [stdout] --> src/ray.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn newTime(origin: Vector3, direction: Vector3, time: f64) -> Ray { [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `new_time` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/render_engine_multithread.rs:86:17 [INFO] [stdout] | [INFO] [stdout] 86 | / tx.send(RenderThreadResult { [INFO] [stdout] 87 | | row: j, [INFO] [stdout] 88 | | pixel: row, [INFO] [stdout] 89 | | }); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/sdl_preview/sdl_output.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | self.render_end_window(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/sdl_preview/sdl_output.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | self.sdl_thread.take().unwrap().join(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/sdl_preview/sdl_output.rs:45:9 [INFO] [stdout] | [INFO] [stdout] 45 | / self.send_vec.pop().unwrap().send(SetPixelResultRow { [INFO] [stdout] 46 | | y, [INFO] [stdout] 47 | | c, [INFO] [stdout] 48 | | is_real_value: true, [INFO] [stdout] 49 | | }); [INFO] [stdout] | |___________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/sdl_preview/sdl_output.rs:169:13 [INFO] [stdout] | [INFO] [stdout] 169 | SDLOutput::start_sdl_window(width, height, rx); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 58 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 48.05s [INFO] running `Command { std: "docker" "inspect" "0fb0ac75deadd36777554db48f9992d4d7c91570e0e82bef2110e2a9f1cfadaa", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0fb0ac75deadd36777554db48f9992d4d7c91570e0e82bef2110e2a9f1cfadaa", kill_on_drop: false }` [INFO] [stdout] 0fb0ac75deadd36777554db48f9992d4d7c91570e0e82bef2110e2a9f1cfadaa [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/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=warn" "-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:eaef2f80f755933c374d2ae5edccceec0c1312ceb8a4e0b6404e8ab76561e1e5" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 5effbde0db7746f22b17093797c0f57d35faf5ebe06a1c1fcbd81de38ef9aa37 [INFO] running `Command { std: "docker" "start" "-a" "5effbde0db7746f22b17093797c0f57d35faf5ebe06a1c1fcbd81de38ef9aa37", kill_on_drop: false }` [INFO] [stderr] Compiling raytracer v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `dyn_clone::DynClone` [INFO] [stdout] --> src/hitable.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use dyn_clone::DynClone; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Texture` [INFO] [stdout] --> src/sphere.rs:7:22 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::texture::{Texture, UVCoords}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `image::error::LimitErrorKind::DimensionError` [INFO] [stdout] --> src/dielectric.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use image::error::LimitErrorKind::DimensionError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::image_output::ImageOutput` [INFO] [stdout] --> src/render_engine_multithread.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::image_output::ImageOutput; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread` [INFO] [stdout] --> src/render_engine_multithread.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::mpsc::Sender` [INFO] [stdout] --> src/render_engine_multithread.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use std::sync::mpsc::Sender; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sdl2::EventPump` [INFO] [stdout] --> src/sdl_preview/sdl_output.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use sdl2::EventPump; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Texture`, `WindowCanvas` [INFO] [stdout] --> src/sdl_preview/sdl_output.rs:4:20 [INFO] [stdout] | [INFO] [stdout] 4 | use sdl2::render::{WindowCanvas, Texture}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Point` [INFO] [stdout] --> src/sdl_preview/sdl_output.rs:5:18 [INFO] [stdout] | [INFO] [stdout] 5 | use sdl2::rect::{Point, Rect}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::thread_rng` [INFO] [stdout] --> src/sdl_preview/sdl_output.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use rand::thread_rng; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/sdl_preview/sdl_output.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `max`, `min` [INFO] [stdout] --> src/AABB.rs:3:16 [INFO] [stdout] | [INFO] [stdout] 3 | use std::cmp::{min, max}; [INFO] [stdout] | ^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::image_output::ImageOutput` [INFO] [stdout] --> src/main.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | use crate::image_output::ImageOutput; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sdl2::log::Category::Render` [INFO] [stdout] --> src/main.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 46 | use sdl2::log::Category::Render; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::bvh_node::BVHNode` [INFO] [stdout] --> src/main.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 48 | use crate::bvh_node::BVHNode; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/main.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | let n = 500; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `info` [INFO] [stdout] --> src/image_output.rs:17:37 [INFO] [stdout] | [INFO] [stdout] 17 | fn save (&mut self, path: &str, info: RenderInformation) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_info` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/image_output.rs:28:27 [INFO] [stdout] | [INFO] [stdout] 28 | fn set_row(&mut self, y: usize, c: Vec) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `c` [INFO] [stdout] --> src/image_output.rs:28:37 [INFO] [stdout] | [INFO] [stdout] 28 | fn set_row(&mut self, y: usize, c: Vec) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `time0` [INFO] [stdout] --> src/sphere.rs:66:28 [INFO] [stdout] | [INFO] [stdout] 66 | fn bounding_box(&self, time0: f64, time1: f64, output_box: &mut AABB) -> bool { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_time0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `time1` [INFO] [stdout] --> src/sphere.rs:66:40 [INFO] [stdout] | [INFO] [stdout] 66 | fn bounding_box(&self, time0: f64, time1: f64, output_box: &mut AABB) -> bool { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_time1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `outward_normal` is never read [INFO] [stdout] --> src/dielectric.rs:42:17 [INFO] [stdout] | [INFO] [stdout] 42 | let mut outward_normal = Vector3::new(0.0, 0.0, 0.0); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> src/render_engine_multithread.rs:76:25 [INFO] [stdout] | [INFO] [stdout] 76 | for s in 0..ns { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `emissive` [INFO] [stdout] --> src/render_engine_multithread.rs:114:21 [INFO] [stdout] | [INFO] [stdout] 114 | let mut emissive = false; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_emissive` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `emission` [INFO] [stdout] --> src/render_engine_multithread.rs:115:21 [INFO] [stdout] | [INFO] [stdout] 115 | let mut emission = Vector3::new(0.0, 0.0, 0.0); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_emission` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `time0` [INFO] [stdout] --> src/bvh_node.rs:85:28 [INFO] [stdout] | [INFO] [stdout] 85 | fn bounding_box(&self, time0: f64, time1: f64, output_box: &mut AABB) -> bool { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_time0` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `time1` [INFO] [stdout] --> src/bvh_node.rs:85:40 [INFO] [stdout] | [INFO] [stdout] 85 | fn bounding_box(&self, time0: f64, time1: f64, output_box: &mut AABB) -> bool { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_time1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `u` [INFO] [stdout] --> src/solid_color_texture.rs:9:21 [INFO] [stdout] | [INFO] [stdout] 9 | fn value(&self, u: f64, v: f64, p: Vector3) -> Vector3 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_u` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v` [INFO] [stdout] --> src/solid_color_texture.rs:9:29 [INFO] [stdout] | [INFO] [stdout] 9 | fn value(&self, u: f64, v: f64, p: Vector3) -> Vector3 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `p` [INFO] [stdout] --> src/solid_color_texture.rs:9:37 [INFO] [stdout] | [INFO] [stdout] 9 | fn value(&self, u: f64, v: f64, p: Vector3) -> Vector3 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_p` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `path` [INFO] [stdout] --> src/sdl_preview/sdl_output.rs:25:24 [INFO] [stdout] | [INFO] [stdout] 25 | fn save(&mut self, path: &str, info: RenderInformation) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `info` [INFO] [stdout] --> src/sdl_preview/sdl_output.rs:25:36 [INFO] [stdout] | [INFO] [stdout] 25 | fn save(&mut self, path: &str, info: RenderInformation) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_info` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pitch` [INFO] [stdout] --> src/sdl_preview/sdl_output.rs:139:61 [INFO] [stdout] | [INFO] [stdout] 139 | texture.with_lock(None, |buffer: &mut [u8], pitch: usize| { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_pitch` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/sdl_preview/sdl_output.rs:165:13 [INFO] [stdout] | [INFO] [stdout] 165 | for y in 0..height { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/image_output.rs:65:13 [INFO] [stdout] | [INFO] [stdout] 65 | for mut i in self.pixels.iter_mut() { //remap pixel between 0 and 1 [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/dielectric.rs:47:13 [INFO] [stdout] | [INFO] [stdout] 47 | let mut reflect_prob: f64; [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/dielectric.rs:48:13 [INFO] [stdout] | [INFO] [stdout] 48 | let mut cosine: f64; [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/render_engine_multithread.rs:114:17 [INFO] [stdout] | [INFO] [stdout] 114 | let mut emissive = 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/render_engine_multithread.rs:115:17 [INFO] [stdout] | [INFO] [stdout] 115 | let mut emission = Vector3::new(0.0, 0.0, 0.0); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `random_scene` [INFO] [stdout] --> src/main.rs:51:4 [INFO] [stdout] | [INFO] [stdout] 51 | fn random_scene(scene: &mut Vec>) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/image_output.rs:38:12 [INFO] [stdout] | [INFO] [stdout] 38 | pub fn new (width: u32, height: u32) -> ImageOutput { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `remap_pixel_range` [INFO] [stdout] --> src/image_output.rs:46:12 [INFO] [stdout] | [INFO] [stdout] 46 | pub fn remap_pixel_range(&mut self, max_brightness: f64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `to_sdl_color` [INFO] [stdout] --> src/color.rs:79:12 [INFO] [stdout] | [INFO] [stdout] 79 | pub fn to_sdl_color(&self) -> sdl2::pixels::Color { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `duplicate` [INFO] [stdout] --> src/scene.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn duplicate(&self) -> Scene { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/moving_sphere.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn new(center0: Vector3, center1: Vector3, t0: f64, t1: f64, radius: f64, material: Box) -> MovingSphere { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `box_compare` [INFO] [stdout] --> src/bvh_node.rs:16:8 [INFO] [stdout] | [INFO] [stdout] 16 | fn box_compare(a: &Arc, b: &Arc, axis: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `box_x_compare` [INFO] [stdout] --> src/bvh_node.rs:25:8 [INFO] [stdout] | [INFO] [stdout] 25 | fn box_x_compare(a: &Arc, b: &Arc) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `box_y_compare` [INFO] [stdout] --> src/bvh_node.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | fn box_y_compare(a: &Arc, b: &Arc) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `box_z_compare` [INFO] [stdout] --> src/bvh_node.rs:33:8 [INFO] [stdout] | [INFO] [stdout] 33 | fn box_z_compare(a: &Arc, b: &Arc) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/bvh_node.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 37 | pub fn new(src_objects: Vec>, start: usize, end: usize, time0: f64, time1: f64) -> BVHNode { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `AABB` should have a snake case name [INFO] [stdout] --> src/main.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | mod AABB; [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `aabb` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `RGB` should have a snake case name [INFO] [stdout] --> src/color.rs:71:12 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn RGB(r: u8, g: u8, b: u8) -> Color { [INFO] [stdout] | ^^^ help: convert the identifier to snake case: `rgb` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `newTime` should have a snake case name [INFO] [stdout] --> src/ray.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn newTime(origin: Vector3, direction: Vector3, time: f64) -> Ray { [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `new_time` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/render_engine_multithread.rs:86:17 [INFO] [stdout] | [INFO] [stdout] 86 | / tx.send(RenderThreadResult { [INFO] [stdout] 87 | | row: j, [INFO] [stdout] 88 | | pixel: row, [INFO] [stdout] 89 | | }); [INFO] [stdout] | |___________________^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/sdl_preview/sdl_output.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | self.render_end_window(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/sdl_preview/sdl_output.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | self.sdl_thread.take().unwrap().join(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/sdl_preview/sdl_output.rs:45:9 [INFO] [stdout] | [INFO] [stdout] 45 | / self.send_vec.pop().unwrap().send(SetPixelResultRow { [INFO] [stdout] 46 | | y, [INFO] [stdout] 47 | | c, [INFO] [stdout] 48 | | is_real_value: true, [INFO] [stdout] 49 | | }); [INFO] [stdout] | |___________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/sdl_preview/sdl_output.rs:169:13 [INFO] [stdout] | [INFO] [stdout] 169 | SDLOutput::start_sdl_window(width, height, rx); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 58 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 1.28s [INFO] running `Command { std: "docker" "inspect" "5effbde0db7746f22b17093797c0f57d35faf5ebe06a1c1fcbd81de38ef9aa37", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5effbde0db7746f22b17093797c0f57d35faf5ebe06a1c1fcbd81de38ef9aa37", kill_on_drop: false }` [INFO] [stdout] 5effbde0db7746f22b17093797c0f57d35faf5ebe06a1c1fcbd81de38ef9aa37 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/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=warn" "-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:eaef2f80f755933c374d2ae5edccceec0c1312ceb8a4e0b6404e8ab76561e1e5" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] e79cb85f5965e9cb049d7b5f2c5b9ebc806b5044e7189575a3e32e23d22b1277 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "e79cb85f5965e9cb049d7b5f2c5b9ebc806b5044e7189575a3e32e23d22b1277", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] warning: unused import: `dyn_clone::DynClone` [INFO] [stderr] --> src/hitable.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use dyn_clone::DynClone; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `Texture` [INFO] [stderr] --> src/sphere.rs:7:22 [INFO] [stderr] | [INFO] [stderr] 7 | use crate::texture::{Texture, UVCoords}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `image::error::LimitErrorKind::DimensionError` [INFO] [stderr] --> src/dielectric.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use image::error::LimitErrorKind::DimensionError; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::image_output::ImageOutput` [INFO] [stderr] --> src/render_engine_multithread.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use crate::image_output::ImageOutput; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::thread` [INFO] [stderr] --> src/render_engine_multithread.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use std::thread; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::sync::mpsc::Sender` [INFO] [stderr] --> src/render_engine_multithread.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use std::sync::mpsc::Sender; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `sdl2::EventPump` [INFO] [stderr] --> src/sdl_preview/sdl_output.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use sdl2::EventPump; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Texture`, `WindowCanvas` [INFO] [stderr] --> src/sdl_preview/sdl_output.rs:4:20 [INFO] [stderr] | [INFO] [stderr] 4 | use sdl2::render::{WindowCanvas, Texture}; [INFO] [stderr] | ^^^^^^^^^^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Point` [INFO] [stderr] --> src/sdl_preview/sdl_output.rs:5:18 [INFO] [stderr] | [INFO] [stderr] 5 | use sdl2::rect::{Point, Rect}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rand::thread_rng` [INFO] [stderr] --> src/sdl_preview/sdl_output.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use rand::thread_rng; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::time::Duration` [INFO] [stderr] --> src/sdl_preview/sdl_output.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use std::time::Duration; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `max`, `min` [INFO] [stderr] --> src/AABB.rs:3:16 [INFO] [stderr] | [INFO] [stderr] 3 | use std::cmp::{min, max}; [INFO] [stderr] | ^^^ ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::image_output::ImageOutput` [INFO] [stderr] --> src/main.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | use crate::image_output::ImageOutput; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `sdl2::log::Category::Render` [INFO] [stderr] --> src/main.rs:46:5 [INFO] [stderr] | [INFO] [stderr] 46 | use sdl2::log::Category::Render; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::bvh_node::BVHNode` [INFO] [stderr] --> src/main.rs:48:5 [INFO] [stderr] | [INFO] [stderr] 48 | use crate::bvh_node::BVHNode; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `n` [INFO] [stderr] --> src/main.rs:52:9 [INFO] [stderr] | [INFO] [stderr] 52 | let n = 500; [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `info` [INFO] [stderr] --> src/image_output.rs:17:37 [INFO] [stderr] | [INFO] [stderr] 17 | fn save (&mut self, path: &str, info: RenderInformation) { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_info` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `y` [INFO] [stderr] --> src/image_output.rs:28:27 [INFO] [stderr] | [INFO] [stderr] 28 | fn set_row(&mut self, y: usize, c: Vec) { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `c` [INFO] [stderr] --> src/image_output.rs:28:37 [INFO] [stderr] | [INFO] [stderr] 28 | fn set_row(&mut self, y: usize, c: Vec) { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_c` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `time0` [INFO] [stderr] --> src/sphere.rs:66:28 [INFO] [stderr] | [INFO] [stderr] 66 | fn bounding_box(&self, time0: f64, time1: f64, output_box: &mut AABB) -> bool { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_time0` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `time1` [INFO] [stderr] --> src/sphere.rs:66:40 [INFO] [stderr] | [INFO] [stderr] 66 | fn bounding_box(&self, time0: f64, time1: f64, output_box: &mut AABB) -> bool { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_time1` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `outward_normal` is never read [INFO] [stderr] --> src/dielectric.rs:42:17 [INFO] [stderr] | [INFO] [stderr] 42 | let mut outward_normal = Vector3::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: unused variable: `s` [INFO] [stderr] --> src/render_engine_multithread.rs:76:25 [INFO] [stderr] | [INFO] [stderr] 76 | for s in 0..ns { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `emissive` [INFO] [stderr] --> src/render_engine_multithread.rs:114:21 [INFO] [stderr] | [INFO] [stderr] 114 | let mut emissive = false; [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_emissive` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `emission` [INFO] [stderr] --> src/render_engine_multithread.rs:115:21 [INFO] [stderr] | [INFO] [stderr] 115 | let mut emission = Vector3::new(0.0, 0.0, 0.0); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_emission` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `time0` [INFO] [stderr] --> src/bvh_node.rs:85:28 [INFO] [stderr] | [INFO] [stderr] 85 | fn bounding_box(&self, time0: f64, time1: f64, output_box: &mut AABB) -> bool { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_time0` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `time1` [INFO] [stderr] --> src/bvh_node.rs:85:40 [INFO] [stderr] | [INFO] [stderr] 85 | fn bounding_box(&self, time0: f64, time1: f64, output_box: &mut AABB) -> bool { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_time1` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `u` [INFO] [stderr] --> src/solid_color_texture.rs:9:21 [INFO] [stderr] | [INFO] [stderr] 9 | fn value(&self, u: f64, v: f64, p: Vector3) -> Vector3 { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_u` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `v` [INFO] [stderr] --> src/solid_color_texture.rs:9:29 [INFO] [stderr] | [INFO] [stderr] 9 | fn value(&self, u: f64, v: f64, p: Vector3) -> Vector3 { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `p` [INFO] [stderr] --> src/solid_color_texture.rs:9:37 [INFO] [stderr] | [INFO] [stderr] 9 | fn value(&self, u: f64, v: f64, p: Vector3) -> Vector3 { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_p` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `path` [INFO] [stderr] --> src/sdl_preview/sdl_output.rs:25:24 [INFO] [stderr] | [INFO] [stderr] 25 | fn save(&mut self, path: &str, info: RenderInformation) { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `info` [INFO] [stderr] --> src/sdl_preview/sdl_output.rs:25:36 [INFO] [stderr] | [INFO] [stderr] 25 | fn save(&mut self, path: &str, info: RenderInformation) { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_info` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `pitch` [INFO] [stderr] --> src/sdl_preview/sdl_output.rs:139:61 [INFO] [stderr] | [INFO] [stderr] 139 | texture.with_lock(None, |buffer: &mut [u8], pitch: usize| { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_pitch` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `y` [INFO] [stderr] --> src/sdl_preview/sdl_output.rs:165:13 [INFO] [stderr] | [INFO] [stderr] 165 | for y in 0..height { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/image_output.rs:65:13 [INFO] [stderr] | [INFO] [stderr] 65 | for mut i in self.pixels.iter_mut() { //remap pixel between 0 and 1 [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/dielectric.rs:47:13 [INFO] [stderr] | [INFO] [stderr] 47 | let mut reflect_prob: f64; [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/dielectric.rs:48:13 [INFO] [stderr] | [INFO] [stderr] 48 | let mut cosine: f64; [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/render_engine_multithread.rs:114:17 [INFO] [stderr] | [INFO] [stderr] 114 | let mut emissive = false; [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/render_engine_multithread.rs:115:17 [INFO] [stderr] | [INFO] [stderr] 115 | let mut emission = Vector3::new(0.0, 0.0, 0.0); [INFO] [stderr] | ----^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: function is never used: `random_scene` [INFO] [stderr] --> src/main.rs:51:4 [INFO] [stderr] | [INFO] [stderr] 51 | fn random_scene(scene: &mut Vec>) { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/image_output.rs:38:12 [INFO] [stderr] | [INFO] [stderr] 38 | pub fn new (width: u32, height: u32) -> ImageOutput { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `remap_pixel_range` [INFO] [stderr] --> src/image_output.rs:46:12 [INFO] [stderr] | [INFO] [stderr] 46 | pub fn remap_pixel_range(&mut self, max_brightness: f64) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `to_sdl_color` [INFO] [stderr] --> src/color.rs:79:12 [INFO] [stderr] | [INFO] [stderr] 79 | pub fn to_sdl_color(&self) -> sdl2::pixels::Color { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `duplicate` [INFO] [stderr] --> src/scene.rs:13:12 [INFO] [stderr] | [INFO] [stderr] 13 | pub fn duplicate(&self) -> Scene { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/moving_sphere.rs:18:12 [INFO] [stderr] | [INFO] [stderr] 18 | pub fn new(center0: Vector3, center1: Vector3, t0: f64, t1: f64, radius: f64, material: Box) -> MovingSphere { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `box_compare` [INFO] [stderr] --> src/bvh_node.rs:16:8 [INFO] [stderr] | [INFO] [stderr] 16 | fn box_compare(a: &Arc, b: &Arc, axis: usize) -> bool { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `box_x_compare` [INFO] [stderr] --> src/bvh_node.rs:25:8 [INFO] [stderr] | [INFO] [stderr] 25 | fn box_x_compare(a: &Arc, b: &Arc) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `box_y_compare` [INFO] [stderr] --> src/bvh_node.rs:29:8 [INFO] [stderr] | [INFO] [stderr] 29 | fn box_y_compare(a: &Arc, b: &Arc) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `box_z_compare` [INFO] [stderr] --> src/bvh_node.rs:33:8 [INFO] [stderr] | [INFO] [stderr] 33 | fn box_z_compare(a: &Arc, b: &Arc) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/bvh_node.rs:37:12 [INFO] [stderr] | [INFO] [stderr] 37 | pub fn new(src_objects: Vec>, start: usize, end: usize, time0: f64, time1: f64) -> BVHNode { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: module `AABB` should have a snake case name [INFO] [stderr] --> src/main.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | mod AABB; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `aabb` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: method `RGB` should have a snake case name [INFO] [stderr] --> src/color.rs:71:12 [INFO] [stderr] | [INFO] [stderr] 71 | pub fn RGB(r: u8, g: u8, b: u8) -> Color { [INFO] [stderr] | ^^^ help: convert the identifier to snake case: `rgb` [INFO] [stderr] [INFO] [stderr] warning: method `newTime` should have a snake case name [INFO] [stderr] --> src/ray.rs:23:12 [INFO] [stderr] | [INFO] [stderr] 23 | pub fn newTime(origin: Vector3, direction: Vector3, time: f64) -> Ray { [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `new_time` [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/render_engine_multithread.rs:86:17 [INFO] [stderr] | [INFO] [stderr] 86 | / tx.send(RenderThreadResult { [INFO] [stderr] 87 | | row: j, [INFO] [stderr] 88 | | pixel: row, [INFO] [stderr] 89 | | }); [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 `Result` that must be used [INFO] [stderr] --> src/sdl_preview/sdl_output.rs:26:9 [INFO] [stderr] | [INFO] [stderr] 26 | self.render_end_window(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/sdl_preview/sdl_output.rs:27:9 [INFO] [stderr] | [INFO] [stderr] 27 | self.sdl_thread.take().unwrap().join(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/sdl_preview/sdl_output.rs:45:9 [INFO] [stderr] | [INFO] [stderr] 45 | / self.send_vec.pop().unwrap().send(SetPixelResultRow { [INFO] [stderr] 46 | | y, [INFO] [stderr] 47 | | c, [INFO] [stderr] 48 | | is_real_value: true, [INFO] [stderr] 49 | | }); [INFO] [stderr] | |___________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/sdl_preview/sdl_output.rs:169:13 [INFO] [stderr] | [INFO] [stderr] 169 | SDLOutput::start_sdl_window(width, height, rx); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: `raytracer` (bin "raytracer" test) generated 58 warnings [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.09s [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/raytracer-90df960c035b2f0a) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "e79cb85f5965e9cb049d7b5f2c5b9ebc806b5044e7189575a3e32e23d22b1277", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e79cb85f5965e9cb049d7b5f2c5b9ebc806b5044e7189575a3e32e23d22b1277", kill_on_drop: false }` [INFO] [stdout] e79cb85f5965e9cb049d7b5f2c5b9ebc806b5044e7189575a3e32e23d22b1277