[INFO] updating cached repository hjbyt/rust_renderer [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/hjbyt/rust_renderer [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/hjbyt/rust_renderer" "work/ex/clippy-test-run/sources/stable/gh/hjbyt/rust_renderer"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/hjbyt/rust_renderer'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/hjbyt/rust_renderer" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/hjbyt/rust_renderer"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/hjbyt/rust_renderer'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 7e31ed2c398c59cdd0661743a520c5f62ff10f2a [INFO] sha for GitHub repo hjbyt/rust_renderer: 7e31ed2c398c59cdd0661743a520c5f62ff10f2a [INFO] validating manifest of hjbyt/rust_renderer on toolchain stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of hjbyt/rust_renderer on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing hjbyt/rust_renderer [INFO] finished frobbing hjbyt/rust_renderer [INFO] frobbed toml for hjbyt/rust_renderer written to work/ex/clippy-test-run/sources/stable/gh/hjbyt/rust_renderer/Cargo.toml [INFO] started frobbing hjbyt/rust_renderer [INFO] finished frobbing hjbyt/rust_renderer [INFO] frobbed toml for hjbyt/rust_renderer written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/hjbyt/rust_renderer/Cargo.toml [INFO] crate hjbyt/rust_renderer has a lockfile. skipping [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting hjbyt/rust_renderer against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-3/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/hjbyt/rust_renderer:/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" "+stable" "clippy" "--frozen" "--all" "--all-targets"` [INFO] [stdout] e8f3236a72bedaa6a8eeedf368230ed6fa543e828a1ef149c840b2324ebabbe3 [INFO] running `"docker" "start" "-a" "e8f3236a72bedaa6a8eeedf368230ed6fa543e828a1ef149c840b2324ebabbe3"` [INFO] [stderr] Checking threadpool v1.4.0 [INFO] [stderr] Checking rayon v0.8.2 [INFO] [stderr] Checking jpeg-decoder v0.1.13 [INFO] [stderr] Checking image v0.14.0 [INFO] [stderr] Checking rust_renderer v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/vector.rs:20:18 [INFO] [stderr] | [INFO] [stderr] 20 | Vector { x: x, y: y, z: z } [INFO] [stderr] | ^^^^ help: replace it with: `x` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/vector.rs:20:24 [INFO] [stderr] | [INFO] [stderr] 20 | Vector { x: x, y: y, z: z } [INFO] [stderr] | ^^^^ help: replace it with: `y` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/vector.rs:20:30 [INFO] [stderr] | [INFO] [stderr] 20 | Vector { x: x, y: y, z: z } [INFO] [stderr] | ^^^^ help: replace it with: `z` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/color.rs:20:17 [INFO] [stderr] | [INFO] [stderr] 20 | Color { r: r, g: g, b: b } [INFO] [stderr] | ^^^^ help: replace it with: `r` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/color.rs:20:23 [INFO] [stderr] | [INFO] [stderr] 20 | Color { r: r, g: g, b: b } [INFO] [stderr] | ^^^^ help: replace it with: `g` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/color.rs:20:29 [INFO] [stderr] | [INFO] [stderr] 20 | Color { r: r, g: g, b: b } [INFO] [stderr] | ^^^^ help: replace it with: `b` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/material.rs:23:13 [INFO] [stderr] | [INFO] [stderr] 23 | diffuse_color: diffuse_color, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `diffuse_color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/material.rs:24:13 [INFO] [stderr] | [INFO] [stderr] 24 | specular_color: specular_color, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `specular_color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/material.rs:25:13 [INFO] [stderr] | [INFO] [stderr] 25 | reflection_color: reflection_color, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `reflection_color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/material.rs:26:13 [INFO] [stderr] | [INFO] [stderr] 26 | phong_specularity: phong_specularity, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `phong_specularity` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/material.rs:27:13 [INFO] [stderr] | [INFO] [stderr] 27 | transparency: transparency, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `transparency` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ray.rs:11:15 [INFO] [stderr] | [INFO] [stderr] 11 | Ray { position: position, direction: direction } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `position` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ray.rs:11:35 [INFO] [stderr] | [INFO] [stderr] 11 | Ray { position: position, direction: direction } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `direction` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/hit.rs:20:13 [INFO] [stderr] | [INFO] [stderr] 20 | distance: distance, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `distance` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/hit.rs:21:13 [INFO] [stderr] | [INFO] [stderr] 21 | hit_normal: hit_normal, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `hit_normal` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/hit.rs:22:13 [INFO] [stderr] | [INFO] [stderr] 22 | hit_point: hit_point, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `hit_point` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/hit.rs:23:13 [INFO] [stderr] | [INFO] [stderr] 23 | object: object, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `object` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/color_image.rs:16:13 [INFO] [stderr] | [INFO] [stderr] 16 | height: height, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `height` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/color_image.rs:17:13 [INFO] [stderr] | [INFO] [stderr] 17 | width: width, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `width` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/vector.rs:20:18 [INFO] [stderr] | [INFO] [stderr] 20 | Vector { x: x, y: y, z: z } [INFO] [stderr] | ^^^^ help: replace it with: `x` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/vector.rs:20:24 [INFO] [stderr] | [INFO] [stderr] 20 | Vector { x: x, y: y, z: z } [INFO] [stderr] | ^^^^ help: replace it with: `y` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/vector.rs:20:30 [INFO] [stderr] | [INFO] [stderr] 20 | Vector { x: x, y: y, z: z } [INFO] [stderr] | ^^^^ help: replace it with: `z` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/color.rs:20:17 [INFO] [stderr] | [INFO] [stderr] 20 | Color { r: r, g: g, b: b } [INFO] [stderr] | ^^^^ help: replace it with: `r` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/color.rs:20:23 [INFO] [stderr] | [INFO] [stderr] 20 | Color { r: r, g: g, b: b } [INFO] [stderr] | ^^^^ help: replace it with: `g` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/color.rs:20:29 [INFO] [stderr] | [INFO] [stderr] 20 | Color { r: r, g: g, b: b } [INFO] [stderr] | ^^^^ help: replace it with: `b` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/material.rs:23:13 [INFO] [stderr] | [INFO] [stderr] 23 | diffuse_color: diffuse_color, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `diffuse_color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/material.rs:24:13 [INFO] [stderr] | [INFO] [stderr] 24 | specular_color: specular_color, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `specular_color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/material.rs:25:13 [INFO] [stderr] | [INFO] [stderr] 25 | reflection_color: reflection_color, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `reflection_color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/material.rs:26:13 [INFO] [stderr] | [INFO] [stderr] 26 | phong_specularity: phong_specularity, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `phong_specularity` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/material.rs:27:13 [INFO] [stderr] | [INFO] [stderr] 27 | transparency: transparency, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `transparency` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ray.rs:11:15 [INFO] [stderr] | [INFO] [stderr] 11 | Ray { position: position, direction: direction } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `position` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ray.rs:11:35 [INFO] [stderr] | [INFO] [stderr] 11 | Ray { position: position, direction: direction } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `direction` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/hit.rs:20:13 [INFO] [stderr] | [INFO] [stderr] 20 | distance: distance, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `distance` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/hit.rs:21:13 [INFO] [stderr] | [INFO] [stderr] 21 | hit_normal: hit_normal, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `hit_normal` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/hit.rs:22:13 [INFO] [stderr] | [INFO] [stderr] 22 | hit_point: hit_point, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `hit_point` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/hit.rs:23:13 [INFO] [stderr] | [INFO] [stderr] 23 | object: object, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `object` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/color_image.rs:16:13 [INFO] [stderr] | [INFO] [stderr] 16 | height: height, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `height` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/color_image.rs:17:13 [INFO] [stderr] | [INFO] [stderr] 17 | width: width, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `width` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: unused macro definition [INFO] [stderr] --> src/utils.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | / macro_rules! print_value { [INFO] [stderr] 2 | | ($x:expr) => (println!("{} = {:?}", stringify!($x), $x)) [INFO] [stderr] 3 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_macros)] on by default [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/scene.rs:33:36 [INFO] [stderr] | [INFO] [stderr] 33 | const RAY_SMALL_ADVANCEMENT: f64 = 0.000000001; [INFO] [stderr] | ^^^^^^^^^^^ help: consider: `0.000_000_001` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/scene.rs:288:9 [INFO] [stderr] | [INFO] [stderr] 288 | return intensity; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `intensity` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unused macro definition [INFO] [stderr] --> src/utils.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | / macro_rules! print_value { [INFO] [stderr] 2 | | ($x:expr) => (println!("{} = {:?}", stringify!($x), $x)) [INFO] [stderr] 3 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_macros)] on by default [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/scene.rs:33:36 [INFO] [stderr] | [INFO] [stderr] 33 | const RAY_SMALL_ADVANCEMENT: f64 = 0.000000001; [INFO] [stderr] | ^^^^^^^^^^^ help: consider: `0.000_000_001` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/scene.rs:288:9 [INFO] [stderr] | [INFO] [stderr] 288 | return intensity; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `intensity` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: this function has too many arguments (8/7) [INFO] [stderr] --> src/camera.rs:25:5 [INFO] [stderr] | [INFO] [stderr] 25 | / pub fn new( [INFO] [stderr] 26 | | position: Vector, [INFO] [stderr] 27 | | look_at: Vector, [INFO] [stderr] 28 | | up: Vector, [INFO] [stderr] ... | [INFO] [stderr] 57 | | } [INFO] [stderr] 58 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::too_many_arguments)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/camera.rs:38:45 [INFO] [stderr] | [INFO] [stderr] 38 | let screen_height = screen_width * (image_height as f64 / image_width as f64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(image_height)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/camera.rs:38:67 [INFO] [stderr] | [INFO] [stderr] 38 | let screen_height = screen_width * (image_height as f64 / image_width as f64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `f64::from(image_width)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/camera.rs:39:42 [INFO] [stderr] | [INFO] [stderr] 39 | let pixel_width = screen_width / image_width as f64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `f64::from(image_width)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/camera.rs:40:44 [INFO] [stderr] | [INFO] [stderr] 40 | let pixel_height = screen_height / image_height as f64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(image_height)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/camera.rs:41:45 [INFO] [stderr] | [INFO] [stderr] 41 | let sub_pixel_width = pixel_width / super_sampling_n as f64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(super_sampling_n)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/camera.rs:42:47 [INFO] [stderr] | [INFO] [stderr] 42 | let sub_pixel_height = pixel_height / super_sampling_n as f64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(super_sampling_n)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/camera.rs:101:55 [INFO] [stderr] | [INFO] [stderr] 101 | let x_offset = self.camera.sub_pixel_width * (sub_pixel_x as f64 + self.camera.get_rand() - 0.5) - (self.camera.screen_width as f64 / 2.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `f64::from(sub_pixel_x)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/camera.rs:102:56 [INFO] [stderr] | [INFO] [stderr] 102 | let y_offset = self.camera.sub_pixel_height * (sub_pixel_y as f64 + self.camera.get_rand() - 0.5) - (self.camera.screen_height as f64 / 2.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `f64::from(sub_pixel_y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/color_image.rs:39:5 [INFO] [stderr] | [INFO] [stderr] 39 | / fn index_mut<'a>(&'a mut self, index: (usize, usize)) -> &'a mut Color { [INFO] [stderr] 40 | | let (x, y) = index; [INFO] [stderr] 41 | | &mut self.pixels[(y * self.width as usize + x)] [INFO] [stderr] 42 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_lifetimes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: statement can be reduced [INFO] [stderr] --> src/scene.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | &color_image.pixels[(y * width) as usize..((y + 1) * width) as usize].copy_from_slice(&row); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `color_image.pixels[(y * width) as usize..((y + 1) * width) as usize].copy_from_slice(&row);` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unnecessary_operation)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_operation [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/scene.rs:190:36 [INFO] [stderr] | [INFO] [stderr] 190 | pub fn color_hits(&self, hits: &Vec, recursion_level: u32) -> Color { [INFO] [stderr] | ^^^^^^^^^ help: change this to: `&[Hit]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/scene.rs:268:42 [INFO] [stderr] | [INFO] [stderr] 268 | let cell_radius = light.radius / n as f64; [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(n)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/scene.rs:275:47 [INFO] [stderr] | [INFO] [stderr] 275 | let x_offset = cell_radius * (x as f64 + rng.next_f64()) - half_radius; [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(x)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/scene.rs:276:47 [INFO] [stderr] | [INFO] [stderr] 276 | let y_offset = cell_radius * (y as f64 + rng.next_f64()) - half_radius; [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/scene.rs:285:43 [INFO] [stderr] | [INFO] [stderr] 285 | let intensity = total_intensity / (n * n) as f64; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f64::from(n * n)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: this function has too many arguments (8/7) [INFO] [stderr] --> src/camera.rs:25:5 [INFO] [stderr] | [INFO] [stderr] 25 | / pub fn new( [INFO] [stderr] 26 | | position: Vector, [INFO] [stderr] 27 | | look_at: Vector, [INFO] [stderr] 28 | | up: Vector, [INFO] [stderr] ... | [INFO] [stderr] 57 | | } [INFO] [stderr] 58 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::too_many_arguments)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/camera.rs:38:45 [INFO] [stderr] | [INFO] [stderr] 38 | let screen_height = screen_width * (image_height as f64 / image_width as f64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(image_height)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/camera.rs:38:67 [INFO] [stderr] | [INFO] [stderr] 38 | let screen_height = screen_width * (image_height as f64 / image_width as f64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `f64::from(image_width)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/camera.rs:39:42 [INFO] [stderr] | [INFO] [stderr] 39 | let pixel_width = screen_width / image_width as f64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `f64::from(image_width)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/camera.rs:40:44 [INFO] [stderr] | [INFO] [stderr] 40 | let pixel_height = screen_height / image_height as f64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(image_height)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/camera.rs:41:45 [INFO] [stderr] | [INFO] [stderr] 41 | let sub_pixel_width = pixel_width / super_sampling_n as f64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(super_sampling_n)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/camera.rs:42:47 [INFO] [stderr] | [INFO] [stderr] 42 | let sub_pixel_height = pixel_height / super_sampling_n as f64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(super_sampling_n)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/camera.rs:101:55 [INFO] [stderr] | [INFO] [stderr] 101 | let x_offset = self.camera.sub_pixel_width * (sub_pixel_x as f64 + self.camera.get_rand() - 0.5) - (self.camera.screen_width as f64 / 2.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `f64::from(sub_pixel_x)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/camera.rs:102:56 [INFO] [stderr] | [INFO] [stderr] 102 | let y_offset = self.camera.sub_pixel_height * (sub_pixel_y as f64 + self.camera.get_rand() - 0.5) - (self.camera.screen_height as f64 / 2.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `f64::from(sub_pixel_y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/color_image.rs:39:5 [INFO] [stderr] | [INFO] [stderr] 39 | / fn index_mut<'a>(&'a mut self, index: (usize, usize)) -> &'a mut Color { [INFO] [stderr] 40 | | let (x, y) = index; [INFO] [stderr] 41 | | &mut self.pixels[(y * self.width as usize + x)] [INFO] [stderr] 42 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_lifetimes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: statement can be reduced [INFO] [stderr] --> src/scene.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | &color_image.pixels[(y * width) as usize..((y + 1) * width) as usize].copy_from_slice(&row); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `color_image.pixels[(y * width) as usize..((y + 1) * width) as usize].copy_from_slice(&row);` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unnecessary_operation)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_operation [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/scene.rs:190:36 [INFO] [stderr] | [INFO] [stderr] 190 | pub fn color_hits(&self, hits: &Vec, recursion_level: u32) -> Color { [INFO] [stderr] | ^^^^^^^^^ help: change this to: `&[Hit]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/scene.rs:268:42 [INFO] [stderr] | [INFO] [stderr] 268 | let cell_radius = light.radius / n as f64; [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(n)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/scene.rs:275:47 [INFO] [stderr] | [INFO] [stderr] 275 | let x_offset = cell_radius * (x as f64 + rng.next_f64()) - half_radius; [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(x)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/scene.rs:276:47 [INFO] [stderr] | [INFO] [stderr] 276 | let y_offset = cell_radius * (y as f64 + rng.next_f64()) - half_radius; [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/scene.rs:285:43 [INFO] [stderr] | [INFO] [stderr] 285 | let intensity = total_intensity / (n * n) as f64; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f64::from(n * n)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/scene.rs:349:52 [INFO] [stderr] | [INFO] [stderr] 349 | let duration = duration.as_secs() as f64 + duration.subsec_nanos() as f64 * 1e-9; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(duration.subsec_nanos())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 10.05s [INFO] running `"docker" "inspect" "e8f3236a72bedaa6a8eeedf368230ed6fa543e828a1ef149c840b2324ebabbe3"` [INFO] running `"docker" "rm" "-f" "e8f3236a72bedaa6a8eeedf368230ed6fa543e828a1ef149c840b2324ebabbe3"` [INFO] [stdout] e8f3236a72bedaa6a8eeedf368230ed6fa543e828a1ef149c840b2324ebabbe3