[INFO] updating cached repository L3nn0x/raytracer [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/L3nn0x/raytracer [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/L3nn0x/raytracer" "work/ex/clippy-test-run/sources/stable/gh/L3nn0x/raytracer"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/L3nn0x/raytracer'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/L3nn0x/raytracer" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/L3nn0x/raytracer"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/L3nn0x/raytracer'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] fe4781c5d89c94b3cab529f58db5f80fcdcb2600 [INFO] sha for GitHub repo L3nn0x/raytracer: fe4781c5d89c94b3cab529f58db5f80fcdcb2600 [INFO] validating manifest of L3nn0x/raytracer 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 L3nn0x/raytracer 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 L3nn0x/raytracer [INFO] finished frobbing L3nn0x/raytracer [INFO] frobbed toml for L3nn0x/raytracer written to work/ex/clippy-test-run/sources/stable/gh/L3nn0x/raytracer/Cargo.toml [INFO] started frobbing L3nn0x/raytracer [INFO] finished frobbing L3nn0x/raytracer [INFO] frobbed toml for L3nn0x/raytracer written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/L3nn0x/raytracer/Cargo.toml [INFO] crate L3nn0x/raytracer 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 L3nn0x/raytracer against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-1/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/L3nn0x/raytracer:/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] b5ffc9e74996d1921ccd368abe37a25ada4b226c3aeaba280d9d89253df29468 [INFO] running `"docker" "start" "-a" "b5ffc9e74996d1921ccd368abe37a25ada4b226c3aeaba280d9d89253df29468"` [INFO] [stderr] Checking rayon-core v1.2.1 [INFO] [stderr] Checking rayon v0.8.2 [INFO] [stderr] Checking jpeg-decoder v0.1.13 [INFO] [stderr] Checking image v0.17.0 [INFO] [stderr] Checking raytracer v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/vec3.rs:26:13 [INFO] [stderr] | [INFO] [stderr] 26 | x: x, [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/vec3.rs:27:13 [INFO] [stderr] | [INFO] [stderr] 27 | y: y, [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/vec3.rs:28:13 [INFO] [stderr] | [INFO] [stderr] 28 | 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/ray.rs:17:13 [INFO] [stderr] | [INFO] [stderr] 17 | origin: origin, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `origin` [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:18:13 [INFO] [stderr] | [INFO] [stderr] 18 | 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/hitable.rs:20:13 [INFO] [stderr] | [INFO] [stderr] 20 | t: t, [INFO] [stderr] | ^^^^ help: replace it with: `t` [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/hitable.rs:21:13 [INFO] [stderr] | [INFO] [stderr] 21 | p: p, [INFO] [stderr] | ^^^^ help: replace it with: `p` [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/hitable.rs:22:13 [INFO] [stderr] | [INFO] [stderr] 22 | normal: normal, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `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/hitable.rs:23:13 [INFO] [stderr] | [INFO] [stderr] 23 | mat: mat, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `mat` [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/hitable.rs:24:13 [INFO] [stderr] | [INFO] [stderr] 24 | u: u, [INFO] [stderr] | ^^^^ help: replace it with: `u` [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/hitable.rs:25:13 [INFO] [stderr] | [INFO] [stderr] 25 | v: v [INFO] [stderr] | ^^^^ help: replace it with: `v` [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/sphere.rs:30:13 [INFO] [stderr] | [INFO] [stderr] 30 | center: center, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `center` [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/sphere.rs:31:13 [INFO] [stderr] | [INFO] [stderr] 31 | radius: radius, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `radius` [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/sphere.rs:32:13 [INFO] [stderr] | [INFO] [stderr] 32 | mat: mat [INFO] [stderr] | ^^^^^^^^ help: replace it with: `mat` [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: 5th binding whose name is just one char [INFO] [stderr] --> src/sphere.rs:48:25 [INFO] [stderr] | [INFO] [stderr] 48 | let (u, v) = get_sphere_uv((point - self.center) / self.radius); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::many_single_char_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/sphere.rs:54:25 [INFO] [stderr] | [INFO] [stderr] 54 | let (u, v) = get_sphere_uv((point - self.center) / self.radius); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sphere.rs:75:13 [INFO] [stderr] | [INFO] [stderr] 75 | center0: center0, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `center0` [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/sphere.rs:76:13 [INFO] [stderr] | [INFO] [stderr] 76 | center1: center1, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `center1` [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/sphere.rs:77:13 [INFO] [stderr] | [INFO] [stderr] 77 | radius: radius, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `radius` [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/sphere.rs:78:13 [INFO] [stderr] | [INFO] [stderr] 78 | time0: time0, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `time0` [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/sphere.rs:79:13 [INFO] [stderr] | [INFO] [stderr] 79 | time1: time1, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `time1` [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/sphere.rs:80:13 [INFO] [stderr] | [INFO] [stderr] 80 | mat: mat [INFO] [stderr] | ^^^^^^^^ help: replace it with: `mat` [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: 5th binding whose name is just one char [INFO] [stderr] --> src/sphere.rs:100:25 [INFO] [stderr] | [INFO] [stderr] 100 | let (u, v) = get_sphere_uv((point - self.center(ray.time)) / self.radius); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/sphere.rs:106:25 [INFO] [stderr] | [INFO] [stderr] 106 | let (u, v) = get_sphere_uv((point - self.center(ray.time)) / self.radius); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/hitable_list.rs:13:13 [INFO] [stderr] | [INFO] [stderr] 13 | list: list [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `list` [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/camera.rs:34:13 [INFO] [stderr] | [INFO] [stderr] 34 | u: u, [INFO] [stderr] | ^^^^ help: replace it with: `u` [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/camera.rs:35:13 [INFO] [stderr] | [INFO] [stderr] 35 | v: v, [INFO] [stderr] | ^^^^ help: replace it with: `v` [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/camera.rs:37:13 [INFO] [stderr] | [INFO] [stderr] 37 | time0: time0, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `time0` [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/camera.rs:38:13 [INFO] [stderr] | [INFO] [stderr] 38 | time1: time1 [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `time1` [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:15:13 [INFO] [stderr] | [INFO] [stderr] 15 | attenuation: attenuation, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `attenuation` [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:16:13 [INFO] [stderr] | [INFO] [stderr] 16 | scattered: scattered [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `scattered` [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/lambertian.rs:16:13 [INFO] [stderr] | [INFO] [stderr] 16 | albedo: albedo [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `albedo` [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/metal.rs:19:13 [INFO] [stderr] | [INFO] [stderr] 19 | albedo: albedo, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `albedo` [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/dielectric.rs:15:13 [INFO] [stderr] | [INFO] [stderr] 15 | ref_idx: ref_idx [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `ref_idx` [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/bvh.rs:44:13 [INFO] [stderr] | [INFO] [stderr] 44 | left: left, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `left` [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/bvh.rs:45:13 [INFO] [stderr] | [INFO] [stderr] 45 | right: right, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `right` [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/texture.rs:53:44 [INFO] [stderr] | [INFO] [stderr] 53 | NoiseTexture{noise: Perlin::new(), scale: scale} [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `scale` [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/texture.rs:68:13 [INFO] [stderr] | [INFO] [stderr] 68 | color: color [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `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/texture.rs:82:13 [INFO] [stderr] | [INFO] [stderr] 82 | odd: odd, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `odd` [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/texture.rs:83:13 [INFO] [stderr] | [INFO] [stderr] 83 | even: even [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `even` [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: 5th binding whose name is just one char [INFO] [stderr] --> src/perlin.rs:20:13 [INFO] [stderr] | [INFO] [stderr] 20 | let i = p.x.floor(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/perlin.rs:21:13 [INFO] [stderr] | [INFO] [stderr] 21 | let j = p.y.floor(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 7th binding whose name is just one char [INFO] [stderr] --> src/perlin.rs:22:13 [INFO] [stderr] | [INFO] [stderr] 22 | let k = p.z.floor(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 8th binding whose name is just one char [INFO] [stderr] --> src/perlin.rs:23:17 [INFO] [stderr] | [INFO] [stderr] 23 | let mut c = [[[Default::default(); 2]; 2]; 2]; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/vec3.rs:26:13 [INFO] [stderr] | [INFO] [stderr] 26 | x: x, [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/vec3.rs:27:13 [INFO] [stderr] | [INFO] [stderr] 27 | y: y, [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/vec3.rs:28:13 [INFO] [stderr] | [INFO] [stderr] 28 | 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/ray.rs:17:13 [INFO] [stderr] | [INFO] [stderr] 17 | origin: origin, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `origin` [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:18:13 [INFO] [stderr] | [INFO] [stderr] 18 | 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/hitable.rs:20:13 [INFO] [stderr] | [INFO] [stderr] 20 | t: t, [INFO] [stderr] | ^^^^ help: replace it with: `t` [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/hitable.rs:21:13 [INFO] [stderr] | [INFO] [stderr] 21 | p: p, [INFO] [stderr] | ^^^^ help: replace it with: `p` [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/hitable.rs:22:13 [INFO] [stderr] | [INFO] [stderr] 22 | normal: normal, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `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/hitable.rs:23:13 [INFO] [stderr] | [INFO] [stderr] 23 | mat: mat, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `mat` [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/hitable.rs:24:13 [INFO] [stderr] | [INFO] [stderr] 24 | u: u, [INFO] [stderr] | ^^^^ help: replace it with: `u` [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/hitable.rs:25:13 [INFO] [stderr] | [INFO] [stderr] 25 | v: v [INFO] [stderr] | ^^^^ help: replace it with: `v` [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/sphere.rs:30:13 [INFO] [stderr] | [INFO] [stderr] 30 | center: center, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `center` [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/sphere.rs:31:13 [INFO] [stderr] | [INFO] [stderr] 31 | radius: radius, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `radius` [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/sphere.rs:32:13 [INFO] [stderr] | [INFO] [stderr] 32 | mat: mat [INFO] [stderr] | ^^^^^^^^ help: replace it with: `mat` [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: 5th binding whose name is just one char [INFO] [stderr] --> src/sphere.rs:48:25 [INFO] [stderr] | [INFO] [stderr] 48 | let (u, v) = get_sphere_uv((point - self.center) / self.radius); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::many_single_char_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/sphere.rs:54:25 [INFO] [stderr] | [INFO] [stderr] 54 | let (u, v) = get_sphere_uv((point - self.center) / self.radius); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/sphere.rs:75:13 [INFO] [stderr] | [INFO] [stderr] 75 | center0: center0, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `center0` [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/sphere.rs:76:13 [INFO] [stderr] | [INFO] [stderr] 76 | center1: center1, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `center1` [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/sphere.rs:77:13 [INFO] [stderr] | [INFO] [stderr] 77 | radius: radius, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `radius` [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/sphere.rs:78:13 [INFO] [stderr] | [INFO] [stderr] 78 | time0: time0, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `time0` [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/sphere.rs:79:13 [INFO] [stderr] | [INFO] [stderr] 79 | time1: time1, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `time1` [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/sphere.rs:80:13 [INFO] [stderr] | [INFO] [stderr] 80 | mat: mat [INFO] [stderr] | ^^^^^^^^ help: replace it with: `mat` [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: 5th binding whose name is just one char [INFO] [stderr] --> src/sphere.rs:100:25 [INFO] [stderr] | [INFO] [stderr] 100 | let (u, v) = get_sphere_uv((point - self.center(ray.time)) / self.radius); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/sphere.rs:106:25 [INFO] [stderr] | [INFO] [stderr] 106 | let (u, v) = get_sphere_uv((point - self.center(ray.time)) / self.radius); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/hitable_list.rs:13:13 [INFO] [stderr] | [INFO] [stderr] 13 | list: list [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `list` [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/camera.rs:34:13 [INFO] [stderr] | [INFO] [stderr] 34 | u: u, [INFO] [stderr] | ^^^^ help: replace it with: `u` [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/camera.rs:35:13 [INFO] [stderr] | [INFO] [stderr] 35 | v: v, [INFO] [stderr] | ^^^^ help: replace it with: `v` [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/camera.rs:37:13 [INFO] [stderr] | [INFO] [stderr] 37 | time0: time0, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `time0` [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/camera.rs:38:13 [INFO] [stderr] | [INFO] [stderr] 38 | time1: time1 [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `time1` [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:15:13 [INFO] [stderr] | [INFO] [stderr] 15 | attenuation: attenuation, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `attenuation` [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:16:13 [INFO] [stderr] | [INFO] [stderr] 16 | scattered: scattered [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `scattered` [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/lambertian.rs:16:13 [INFO] [stderr] | [INFO] [stderr] 16 | albedo: albedo [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `albedo` [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/metal.rs:19:13 [INFO] [stderr] | [INFO] [stderr] 19 | albedo: albedo, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `albedo` [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/dielectric.rs:15:13 [INFO] [stderr] | [INFO] [stderr] 15 | ref_idx: ref_idx [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `ref_idx` [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/bvh.rs:44:13 [INFO] [stderr] | [INFO] [stderr] 44 | left: left, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `left` [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/bvh.rs:45:13 [INFO] [stderr] | [INFO] [stderr] 45 | right: right, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `right` [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/texture.rs:53:44 [INFO] [stderr] | [INFO] [stderr] 53 | NoiseTexture{noise: Perlin::new(), scale: scale} [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `scale` [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/texture.rs:68:13 [INFO] [stderr] | [INFO] [stderr] 68 | color: color [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `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/texture.rs:82:13 [INFO] [stderr] | [INFO] [stderr] 82 | odd: odd, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `odd` [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/texture.rs:83:13 [INFO] [stderr] | [INFO] [stderr] 83 | even: even [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `even` [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: 5th binding whose name is just one char [INFO] [stderr] --> src/perlin.rs:20:13 [INFO] [stderr] | [INFO] [stderr] 20 | let i = p.x.floor(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/perlin.rs:21:13 [INFO] [stderr] | [INFO] [stderr] 21 | let j = p.y.floor(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 7th binding whose name is just one char [INFO] [stderr] --> src/perlin.rs:22:13 [INFO] [stderr] | [INFO] [stderr] 22 | let k = p.z.floor(); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 8th binding whose name is just one char [INFO] [stderr] --> src/perlin.rs:23:17 [INFO] [stderr] | [INFO] [stderr] 23 | let mut c = [[[Default::default(); 2]; 2]; 2]; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `HitableList` [INFO] [stderr] --> src/hitable_builder.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | HitableList(Vec>), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] error: equal expressions as operands to `-` [INFO] [stderr] --> src/vec3.rs:248:13 [INFO] [stderr] | [INFO] [stderr] 248 | assert!(a - a == Default::default()); [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::eq_op)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#eq_op [INFO] [stderr] [INFO] [stderr] error: equal expressions as operands to `/` [INFO] [stderr] --> src/vec3.rs:262:13 [INFO] [stderr] | [INFO] [stderr] 262 | assert!(a / a == Vec3::new(1.0, 1.0, 1.0)); [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#eq_op [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/vec3.rs:270:13 [INFO] [stderr] | [INFO] [stderr] 270 | assert!(dot(&a, &b) == 20.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider comparing them within some error: `(dot(&a, &b) - 20.0).abs() < error` [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::float_cmp)] on by default [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/vec3.rs:270:13 [INFO] [stderr] | [INFO] [stderr] 270 | assert!(dot(&a, &b) == 20.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/vec3.rs:283:13 [INFO] [stderr] | [INFO] [stderr] 283 | assert!(a.length() == 3f64.sqrt()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider comparing them within some error: `(a.length() - 3f64.sqrt()).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/vec3.rs:283:13 [INFO] [stderr] | [INFO] [stderr] 283 | assert!(a.length() == 3f64.sqrt()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/vec3.rs:289:13 [INFO] [stderr] | [INFO] [stderr] 289 | assert!(a.squared_length() == 3.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider comparing them within some error: `(a.squared_length() - 3.0).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/vec3.rs:289:13 [INFO] [stderr] | [INFO] [stderr] 289 | assert!(a.squared_length() == 3.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/vec3.rs:296:13 [INFO] [stderr] | [INFO] [stderr] 296 | assert!(a.length() == 1.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: consider comparing them within some error: `(a.length() - 1.0).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/vec3.rs:296:13 [INFO] [stderr] | [INFO] [stderr] 296 | assert!(a.length() == 1.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/vec3.rs:299:13 [INFO] [stderr] | [INFO] [stderr] 299 | assert!(a.length() == 1.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: consider comparing them within some error: `(a.length() - 1.0).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/vec3.rs:299:13 [INFO] [stderr] | [INFO] [stderr] 299 | assert!(a.length() == 1.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/vec3.rs:302:13 [INFO] [stderr] | [INFO] [stderr] 302 | assert!(a.length() == 1.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: consider comparing them within some error: `(a.length() - 1.0).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/vec3.rs:302:13 [INFO] [stderr] | [INFO] [stderr] 302 | assert!(a.length() == 1.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/vec3.rs:309:13 [INFO] [stderr] | [INFO] [stderr] 309 | assert!(a.length() == 1.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: consider comparing them within some error: `(a.length() - 1.0).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/vec3.rs:309:13 [INFO] [stderr] | [INFO] [stderr] 309 | assert!(a.length() == 1.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/vec3.rs:312:13 [INFO] [stderr] | [INFO] [stderr] 312 | assert!(a.length() == 1.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: consider comparing them within some error: `(a.length() - 1.0).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/vec3.rs:312:13 [INFO] [stderr] | [INFO] [stderr] 312 | assert!(a.length() == 1.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/vec3.rs:318:13 [INFO] [stderr] | [INFO] [stderr] 318 | assert!(a[0] == 1.0); [INFO] [stderr] | ^^^^^^^^^^^ help: consider comparing them within some error: `(a[0] - 1.0).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/vec3.rs:318:13 [INFO] [stderr] | [INFO] [stderr] 318 | assert!(a[0] == 1.0); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/vec3.rs:319:13 [INFO] [stderr] | [INFO] [stderr] 319 | assert!(a[1] == 2.0); [INFO] [stderr] | ^^^^^^^^^^^ help: consider comparing them within some error: `(a[1] - 2.0).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/vec3.rs:319:13 [INFO] [stderr] | [INFO] [stderr] 319 | assert!(a[1] == 2.0); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/vec3.rs:320:13 [INFO] [stderr] | [INFO] [stderr] 320 | assert!(a[2] == 3.0); [INFO] [stderr] | ^^^^^^^^^^^ help: consider comparing them within some error: `(a[2] - 3.0).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/vec3.rs:320:13 [INFO] [stderr] | [INFO] [stderr] 320 | assert!(a[2] == 3.0); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] warning: casting f32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/sphere.rs:85:24 [INFO] [stderr] | [INFO] [stderr] 85 | self.center0 + (time - self.time0) as f64 / (self.time1 - self.time0) as f64 * (self.center1 - self.center0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(time - self.time0)` [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 f32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/sphere.rs:85:53 [INFO] [stderr] | [INFO] [stderr] 85 | self.center0 + (time - self.time0) as f64 / (self.time1 - self.time0) as f64 * (self.center1 - self.center0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.time1 - self.time0)` [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: length comparison to one [INFO] [stderr] --> src/hitable_list.rs:32:12 [INFO] [stderr] | [INFO] [stderr] 32 | if self.list.len() >= 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!self.list.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: this function has too many arguments (9/7) [INFO] [stderr] --> src/camera.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | / pub fn new(look_from: Vec3, look_at: Vec3, vup: Vec3, vfov: f64, [INFO] [stderr] 22 | | aspect: f64, aperture: f64, focus_distance: f64, time0: f32, time1: f32) -> Camera { [INFO] [stderr] 23 | | let theta = vfov * PI / 180.0; [INFO] [stderr] 24 | | let half_height = (theta / 2.0).tan(); [INFO] [stderr] ... | [INFO] [stderr] 39 | | } [INFO] [stderr] 40 | | } [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 f32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/metal.rs:28:37 [INFO] [stderr] | [INFO] [stderr] 28 | let reflected = reflected + self.fuzzy as f64 * random_in_unit_sphere(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.fuzzy)` [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: using `clone` on a `Copy` type [INFO] [stderr] --> src/metal.rs:29:39 [INFO] [stderr] | [INFO] [stderr] 29 | let res = MaterialResult::new(self.albedo.clone(), Ray::new(rec.p, reflected, ray_in.time)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.albedo` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::clone_on_copy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: casting f32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/aabb.rs:34:32 [INFO] [stderr] | [INFO] [stderr] 34 | let tmin = if t0 > tmin as f64 { [INFO] [stderr] | ^^^^^^^^^^^ help: try: `f64::from(tmin)` [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 f32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/aabb.rs:37:17 [INFO] [stderr] | [INFO] [stderr] 37 | tmin as f64 [INFO] [stderr] | ^^^^^^^^^^^ help: try: `f64::from(tmin)` [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 f32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/aabb.rs:39:32 [INFO] [stderr] | [INFO] [stderr] 39 | let tmax = if t1 < tmax as f64 { [INFO] [stderr] | ^^^^^^^^^^^ help: try: `f64::from(tmax)` [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 f32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/aabb.rs:42:17 [INFO] [stderr] | [INFO] [stderr] 42 | tmax as f64 [INFO] [stderr] | ^^^^^^^^^^^ help: try: `f64::from(tmax)` [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: length comparison to one [INFO] [stderr] --> src/bvh.rs:17:12 [INFO] [stderr] | [INFO] [stderr] 17 | if objs.len() < 1 { panic!("The vector is empty"); } [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `objs.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f64 may become silently lossy if types change [INFO] [stderr] --> src/texture.rs:47:19 [INFO] [stderr] | [INFO] [stderr] 47 | Vec3::new(pixel.data[0] as f64 / 255.0, pixel.data[1] as f64 / 255.0, pixel.data[2] as f64 / 255.0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(pixel.data[0])` [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 u8 to f64 may become silently lossy if types change [INFO] [stderr] --> src/texture.rs:47:49 [INFO] [stderr] | [INFO] [stderr] 47 | Vec3::new(pixel.data[0] as f64 / 255.0, pixel.data[1] as f64 / 255.0, pixel.data[2] as f64 / 255.0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(pixel.data[1])` [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 u8 to f64 may become silently lossy if types change [INFO] [stderr] --> src/texture.rs:47:79 [INFO] [stderr] | [INFO] [stderr] 47 | Vec3::new(pixel.data[0] as f64 / 255.0, pixel.data[1] as f64 / 255.0, pixel.data[2] as f64 / 255.0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(pixel.data[2])` [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: using `clone` on a `Copy` type [INFO] [stderr] --> src/texture.rs:75:9 [INFO] [stderr] | [INFO] [stderr] 75 | self.color.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: the loop variable `di` is used to index `c` [INFO] [stderr] --> src/perlin.rs:24:19 [INFO] [stderr] | [INFO] [stderr] 24 | for di in 0..2 { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_range_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 24 | for (di, ) in c.iter_mut().enumerate() { [INFO] [stderr] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `p`. [INFO] [stderr] --> src/perlin.rs:60:14 [INFO] [stderr] | [INFO] [stderr] 60 | for i in 0..256 { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 60 | for in &mut p { [INFO] [stderr] | ^^^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is used to index `p` [INFO] [stderr] --> src/perlin.rs:77:14 [INFO] [stderr] | [INFO] [stderr] 77 | for i in 0..256 { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 77 | for (i, ) in p.iter_mut().enumerate() { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is used to index `c` [INFO] [stderr] --> src/perlin.rs:89:14 [INFO] [stderr] | [INFO] [stderr] 89 | for i in 0..2 { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 89 | for (i, ) in c.iter().enumerate() { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:51:36 [INFO] [stderr] | [INFO] [stderr] 51 | let center = Vec3::new(a as f64 + 0.9 * rand::random::(), 0.2, b as f64 + 0.9 * rand::random::()); [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(a)` [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 i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:51:81 [INFO] [stderr] | [INFO] [stderr] 51 | let center = Vec3::new(a as f64 + 0.9 * rand::random::(), 0.2, b as f64 + 0.9 * rand::random::()); [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(b)` [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 i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:127:16 [INFO] [stderr] | [INFO] [stderr] 127 | col /= ns as f64; [INFO] [stderr] | ^^^^^^^^^ help: try: `f64::from(ns)` [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] error: aborting due to 13 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `raytracer`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: variant is never constructed: `HitableList` [INFO] [stderr] --> src/hitable_builder.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | HitableList(Vec>), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: casting f32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/sphere.rs:85:24 [INFO] [stderr] | [INFO] [stderr] 85 | self.center0 + (time - self.time0) as f64 / (self.time1 - self.time0) as f64 * (self.center1 - self.center0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(time - self.time0)` [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 f32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/sphere.rs:85:53 [INFO] [stderr] | [INFO] [stderr] 85 | self.center0 + (time - self.time0) as f64 / (self.time1 - self.time0) as f64 * (self.center1 - self.center0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.time1 - self.time0)` [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: length comparison to one [INFO] [stderr] --> src/hitable_list.rs:32:12 [INFO] [stderr] | [INFO] [stderr] 32 | if self.list.len() >= 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!self.list.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: this function has too many arguments (9/7) [INFO] [stderr] --> src/camera.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | / pub fn new(look_from: Vec3, look_at: Vec3, vup: Vec3, vfov: f64, [INFO] [stderr] 22 | | aspect: f64, aperture: f64, focus_distance: f64, time0: f32, time1: f32) -> Camera { [INFO] [stderr] 23 | | let theta = vfov * PI / 180.0; [INFO] [stderr] 24 | | let half_height = (theta / 2.0).tan(); [INFO] [stderr] ... | [INFO] [stderr] 39 | | } [INFO] [stderr] 40 | | } [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 f32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/metal.rs:28:37 [INFO] [stderr] | [INFO] [stderr] 28 | let reflected = reflected + self.fuzzy as f64 * random_in_unit_sphere(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.fuzzy)` [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: using `clone` on a `Copy` type [INFO] [stderr] --> src/metal.rs:29:39 [INFO] [stderr] | [INFO] [stderr] 29 | let res = MaterialResult::new(self.albedo.clone(), Ray::new(rec.p, reflected, ray_in.time)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.albedo` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::clone_on_copy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: casting f32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/aabb.rs:34:32 [INFO] [stderr] | [INFO] [stderr] 34 | let tmin = if t0 > tmin as f64 { [INFO] [stderr] | ^^^^^^^^^^^ help: try: `f64::from(tmin)` [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 f32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/aabb.rs:37:17 [INFO] [stderr] | [INFO] [stderr] 37 | tmin as f64 [INFO] [stderr] | ^^^^^^^^^^^ help: try: `f64::from(tmin)` [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 f32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/aabb.rs:39:32 [INFO] [stderr] | [INFO] [stderr] 39 | let tmax = if t1 < tmax as f64 { [INFO] [stderr] | ^^^^^^^^^^^ help: try: `f64::from(tmax)` [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 f32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/aabb.rs:42:17 [INFO] [stderr] | [INFO] [stderr] 42 | tmax as f64 [INFO] [stderr] | ^^^^^^^^^^^ help: try: `f64::from(tmax)` [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: length comparison to one [INFO] [stderr] --> src/bvh.rs:17:12 [INFO] [stderr] | [INFO] [stderr] 17 | if objs.len() < 1 { panic!("The vector is empty"); } [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `objs.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f64 may become silently lossy if types change [INFO] [stderr] --> src/texture.rs:47:19 [INFO] [stderr] | [INFO] [stderr] 47 | Vec3::new(pixel.data[0] as f64 / 255.0, pixel.data[1] as f64 / 255.0, pixel.data[2] as f64 / 255.0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(pixel.data[0])` [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 u8 to f64 may become silently lossy if types change [INFO] [stderr] --> src/texture.rs:47:49 [INFO] [stderr] | [INFO] [stderr] 47 | Vec3::new(pixel.data[0] as f64 / 255.0, pixel.data[1] as f64 / 255.0, pixel.data[2] as f64 / 255.0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(pixel.data[1])` [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 u8 to f64 may become silently lossy if types change [INFO] [stderr] --> src/texture.rs:47:79 [INFO] [stderr] | [INFO] [stderr] 47 | Vec3::new(pixel.data[0] as f64 / 255.0, pixel.data[1] as f64 / 255.0, pixel.data[2] as f64 / 255.0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(pixel.data[2])` [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: using `clone` on a `Copy` type [INFO] [stderr] --> src/texture.rs:75:9 [INFO] [stderr] | [INFO] [stderr] 75 | self.color.clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: the loop variable `di` is used to index `c` [INFO] [stderr] --> src/perlin.rs:24:19 [INFO] [stderr] | [INFO] [stderr] 24 | for di in 0..2 { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_range_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 24 | for (di, ) in c.iter_mut().enumerate() { [INFO] [stderr] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `p`. [INFO] [stderr] --> src/perlin.rs:60:14 [INFO] [stderr] | [INFO] [stderr] 60 | for i in 0..256 { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 60 | for in &mut p { [INFO] [stderr] | ^^^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is used to index `p` [INFO] [stderr] --> src/perlin.rs:77:14 [INFO] [stderr] | [INFO] [stderr] 77 | for i in 0..256 { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 77 | for (i, ) in p.iter_mut().enumerate() { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is used to index `c` [INFO] [stderr] --> src/perlin.rs:89:14 [INFO] [stderr] | [INFO] [stderr] 89 | for i in 0..2 { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 89 | for (i, ) in c.iter().enumerate() { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:51:36 [INFO] [stderr] | [INFO] [stderr] 51 | let center = Vec3::new(a as f64 + 0.9 * rand::random::(), 0.2, b as f64 + 0.9 * rand::random::()); [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(a)` [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 i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:51:81 [INFO] [stderr] | [INFO] [stderr] 51 | let center = Vec3::new(a as f64 + 0.9 * rand::random::(), 0.2, b as f64 + 0.9 * rand::random::()); [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(b)` [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 i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:127:16 [INFO] [stderr] | [INFO] [stderr] 127 | col /= ns as f64; [INFO] [stderr] | ^^^^^^^^^ help: try: `f64::from(ns)` [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] error: build failed [INFO] running `"docker" "inspect" "b5ffc9e74996d1921ccd368abe37a25ada4b226c3aeaba280d9d89253df29468"` [INFO] running `"docker" "rm" "-f" "b5ffc9e74996d1921ccd368abe37a25ada4b226c3aeaba280d9d89253df29468"` [INFO] [stdout] b5ffc9e74996d1921ccd368abe37a25ada4b226c3aeaba280d9d89253df29468