[INFO] crate ncollide_procedural 0.9.0 is already in cache [INFO] extracting crate ncollide_procedural 0.9.0 into work/ex/clippy-test-run/sources/stable/reg/ncollide_procedural/0.9.0 [INFO] extracting crate ncollide_procedural 0.9.0 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/ncollide_procedural/0.9.0 [INFO] validating manifest of ncollide_procedural-0.9.0 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 ncollide_procedural-0.9.0 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 ncollide_procedural-0.9.0 [INFO] finished frobbing ncollide_procedural-0.9.0 [INFO] frobbed toml for ncollide_procedural-0.9.0 written to work/ex/clippy-test-run/sources/stable/reg/ncollide_procedural/0.9.0/Cargo.toml [INFO] started frobbing ncollide_procedural-0.9.0 [INFO] finished frobbing ncollide_procedural-0.9.0 [INFO] frobbed toml for ncollide_procedural-0.9.0 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/ncollide_procedural/0.9.0/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [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 ncollide_procedural-0.9.0 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-7/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/ncollide_procedural/0.9.0:/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] 45da8a32bbcb1932e3f2a0bba2ccd83e57cb9bdcfeb38a1d7bfc67fc959daa52 [INFO] running `"docker" "start" "-a" "45da8a32bbcb1932e3f2a0bba2ccd83e57cb9bdcfeb38a1d7bfc67fc959daa52"` [INFO] [stderr] Checking nalgebra v0.14.4 [INFO] [stderr] Checking ncollide_math v0.9.0 [INFO] [stderr] Checking ncollide_utils v0.9.0 [INFO] [stderr] Checking ncollide_procedural v0.9.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> path/arrowhead_cap.rs:24:13 [INFO] [stderr] | [INFO] [stderr] 24 | radius_scale: radius_scale, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `radius_scale` [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] --> path/arrowhead_cap.rs:25:13 [INFO] [stderr] | [INFO] [stderr] 25 | front_dist_to_head: front_dist_to_head, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `front_dist_to_head` [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] --> path/arrowhead_cap.rs:26:13 [INFO] [stderr] | [INFO] [stderr] 26 | back_dist_to_head: back_dist_to_head, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `back_dist_to_head` [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] --> path/polyline_pattern.rs:66:13 [INFO] [stderr] | [INFO] [stderr] 66 | closed: closed, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `closed` [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] --> path/polyline_pattern.rs:68:13 [INFO] [stderr] | [INFO] [stderr] 68 | start_cap: start_cap, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `start_cap` [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] --> path/polyline_pattern.rs:69:13 [INFO] [stderr] | [INFO] [stderr] 69 | end_cap: end_cap, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `end_cap` [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] --> path/polyline_path.rs:33:13 [INFO] [stderr] | [INFO] [stderr] 33 | polyline: polyline, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `polyline` [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] --> trimesh.rs:72:13 [INFO] [stderr] | [INFO] [stderr] 72 | coords: coords, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `coords` [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] --> trimesh.rs:73:13 [INFO] [stderr] | [INFO] [stderr] 73 | normals: normals, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `normals` [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] --> trimesh.rs:74:13 [INFO] [stderr] | [INFO] [stderr] 74 | uvs: uvs, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `uvs` [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] --> polyline.rs:25:13 [INFO] [stderr] | [INFO] [stderr] 25 | coords: coords, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `coords` [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] --> polyline.rs:26:13 [INFO] [stderr] | [INFO] [stderr] 26 | normals: normals, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `normals` [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: consider choosing a more descriptive name [INFO] [stderr] --> sphere.rs:96:9 [INFO] [stderr] | [INFO] [stderr] 96 | let _0_5: N = na::convert(0.5); [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::just_underscores_and_digits)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#just_underscores_and_digits [INFO] [stderr] [INFO] [stderr] warning: consider choosing a more descriptive name [INFO] [stderr] --> sphere.rs:159:9 [INFO] [stderr] | [INFO] [stderr] 159 | let _0_5: N = na::convert(0.5); [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#just_underscores_and_digits [INFO] [stderr] [INFO] [stderr] warning: consider choosing a more descriptive name [INFO] [stderr] --> sphere.rs:212:9 [INFO] [stderr] | [INFO] [stderr] 212 | let _0_5: N = na::convert(0.5); [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#just_underscores_and_digits [INFO] [stderr] [INFO] [stderr] warning: consider choosing a more descriptive name [INFO] [stderr] --> cuboid.rs:31:9 [INFO] [stderr] | [INFO] [stderr] 31 | let _0_5: N = na::convert(0.5); [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#just_underscores_and_digits [INFO] [stderr] [INFO] [stderr] warning: consider choosing a more descriptive name [INFO] [stderr] --> cuboid.rs:33:9 [INFO] [stderr] | [INFO] [stderr] 33 | let _1 = N::one(); [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#just_underscores_and_digits [INFO] [stderr] [INFO] [stderr] warning: consider choosing a more descriptive name [INFO] [stderr] --> cuboid.rs:35:9 [INFO] [stderr] | [INFO] [stderr] 35 | let _0 = N::zero(); [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#just_underscores_and_digits [INFO] [stderr] [INFO] [stderr] warning: consider choosing a more descriptive name [INFO] [stderr] --> cuboid.rs:149:9 [INFO] [stderr] | [INFO] [stderr] 149 | let _0_5: P::Real = na::convert(0.5); [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#just_underscores_and_digits [INFO] [stderr] [INFO] [stderr] warning: consider choosing a more descriptive name [INFO] [stderr] --> quad.rs:104:17 [INFO] [stderr] | [INFO] [stderr] 104 | let _1 = na::one::(); [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#just_underscores_and_digits [INFO] [stderr] [INFO] [stderr] warning: consider choosing a more descriptive name [INFO] [stderr] --> bezier.rs:21:9 [INFO] [stderr] | [INFO] [stderr] 21 | let _1: P::Real = na::convert(1.0); [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#just_underscores_and_digits [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> path/arrowhead_cap.rs:24:13 [INFO] [stderr] | [INFO] [stderr] 24 | radius_scale: radius_scale, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `radius_scale` [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] --> path/arrowhead_cap.rs:25:13 [INFO] [stderr] | [INFO] [stderr] 25 | front_dist_to_head: front_dist_to_head, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `front_dist_to_head` [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] --> path/arrowhead_cap.rs:26:13 [INFO] [stderr] | [INFO] [stderr] 26 | back_dist_to_head: back_dist_to_head, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `back_dist_to_head` [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] --> path/polyline_pattern.rs:66:13 [INFO] [stderr] | [INFO] [stderr] 66 | closed: closed, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `closed` [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] --> path/polyline_pattern.rs:68:13 [INFO] [stderr] | [INFO] [stderr] 68 | start_cap: start_cap, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `start_cap` [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] --> path/polyline_pattern.rs:69:13 [INFO] [stderr] | [INFO] [stderr] 69 | end_cap: end_cap, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `end_cap` [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] --> path/polyline_path.rs:33:13 [INFO] [stderr] | [INFO] [stderr] 33 | polyline: polyline, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `polyline` [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] --> trimesh.rs:72:13 [INFO] [stderr] | [INFO] [stderr] 72 | coords: coords, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `coords` [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] --> trimesh.rs:73:13 [INFO] [stderr] | [INFO] [stderr] 73 | normals: normals, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `normals` [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] --> trimesh.rs:74:13 [INFO] [stderr] | [INFO] [stderr] 74 | uvs: uvs, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `uvs` [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] --> polyline.rs:25:13 [INFO] [stderr] | [INFO] [stderr] 25 | coords: coords, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `coords` [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] --> polyline.rs:26:13 [INFO] [stderr] | [INFO] [stderr] 26 | normals: normals, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `normals` [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: consider choosing a more descriptive name [INFO] [stderr] --> sphere.rs:96:9 [INFO] [stderr] | [INFO] [stderr] 96 | let _0_5: N = na::convert(0.5); [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::just_underscores_and_digits)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#just_underscores_and_digits [INFO] [stderr] [INFO] [stderr] warning: consider choosing a more descriptive name [INFO] [stderr] --> sphere.rs:159:9 [INFO] [stderr] | [INFO] [stderr] 159 | let _0_5: N = na::convert(0.5); [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#just_underscores_and_digits [INFO] [stderr] [INFO] [stderr] warning: consider choosing a more descriptive name [INFO] [stderr] --> sphere.rs:212:9 [INFO] [stderr] | [INFO] [stderr] 212 | let _0_5: N = na::convert(0.5); [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#just_underscores_and_digits [INFO] [stderr] [INFO] [stderr] warning: consider choosing a more descriptive name [INFO] [stderr] --> cuboid.rs:31:9 [INFO] [stderr] | [INFO] [stderr] 31 | let _0_5: N = na::convert(0.5); [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#just_underscores_and_digits [INFO] [stderr] [INFO] [stderr] warning: consider choosing a more descriptive name [INFO] [stderr] --> cuboid.rs:33:9 [INFO] [stderr] | [INFO] [stderr] 33 | let _1 = N::one(); [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#just_underscores_and_digits [INFO] [stderr] [INFO] [stderr] warning: consider choosing a more descriptive name [INFO] [stderr] --> cuboid.rs:35:9 [INFO] [stderr] | [INFO] [stderr] 35 | let _0 = N::zero(); [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#just_underscores_and_digits [INFO] [stderr] [INFO] [stderr] warning: consider choosing a more descriptive name [INFO] [stderr] --> cuboid.rs:149:9 [INFO] [stderr] | [INFO] [stderr] 149 | let _0_5: P::Real = na::convert(0.5); [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#just_underscores_and_digits [INFO] [stderr] [INFO] [stderr] warning: consider choosing a more descriptive name [INFO] [stderr] --> quad.rs:104:17 [INFO] [stderr] | [INFO] [stderr] 104 | let _1 = na::one::(); [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#just_underscores_and_digits [INFO] [stderr] [INFO] [stderr] warning: consider choosing a more descriptive name [INFO] [stderr] --> bezier.rs:21:9 [INFO] [stderr] | [INFO] [stderr] 21 | let _1: P::Real = na::convert(1.0); [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#just_underscores_and_digits [INFO] [stderr] [INFO] [stderr] warning: module has the same name as its containing module [INFO] [stderr] --> path/mod.rs:11:1 [INFO] [stderr] | [INFO] [stderr] 11 | mod path; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::module_inception)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stderr] [INFO] [stderr] warning: module has the same name as its containing module [INFO] [stderr] --> path/mod.rs:11:1 [INFO] [stderr] | [INFO] [stderr] 11 | mod path; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::module_inception)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> utils.rs:23:13 [INFO] [stderr] | [INFO] [stderr] 23 | y.clone(), [INFO] [stderr] | ^^^^^^^^^ help: try removing the `clone` call: `y` [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: manual implementation of an assign operation [INFO] [stderr] --> utils.rs:26:9 [INFO] [stderr] | [INFO] [stderr] 26 | curr_theta = curr_theta + dtheta; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `curr_theta += dtheta` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::assign_op_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> utils.rs:45:9 [INFO] [stderr] | [INFO] [stderr] 45 | curr_theta = curr_theta + dtheta; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `curr_theta += dtheta` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> utils.rs:133:26 [INFO] [stderr] | [INFO] [stderr] 133 | out.push(Point3::new(ul.clone(), dl, dr.clone())); [INFO] [stderr] | ^^^^^^^^^^ help: try removing the `clone` call: `ul` [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: using `clone` on a `Copy` type [INFO] [stderr] --> utils.rs:133:42 [INFO] [stderr] | [INFO] [stderr] 133 | out.push(Point3::new(ul.clone(), dl, dr.clone())); [INFO] [stderr] | ^^^^^^^^^^ help: try removing the `clone` call: `dr` [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: manual implementation of an assign operation [INFO] [stderr] --> utils.rs:246:9 [INFO] [stderr] | [INFO] [stderr] 246 | normals[f.x as usize] = normals[f.x as usize] + normal; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `normals[f.x as usize] += normal` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> utils.rs:247:9 [INFO] [stderr] | [INFO] [stderr] 247 | normals[f.y as usize] = normals[f.y as usize] + normal; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `normals[f.y as usize] += normal` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> utils.rs:248:9 [INFO] [stderr] | [INFO] [stderr] 248 | normals[f.z as usize] = normals[f.z as usize] + normal; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `normals[f.z as usize] += normal` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> utils.rs:250:9 [INFO] [stderr] | [INFO] [stderr] 250 | divisor[f.x as usize] = divisor[f.x as usize] + na::one(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `divisor[f.x as usize] += na::one()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> utils.rs:251:9 [INFO] [stderr] | [INFO] [stderr] 251 | divisor[f.y as usize] = divisor[f.y as usize] + na::one(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `divisor[f.y as usize] += na::one()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> utils.rs:252:9 [INFO] [stderr] | [INFO] [stderr] 252 | divisor[f.z as usize] = divisor[f.z as usize] + na::one(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `divisor[f.z as usize] += na::one()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> utils.rs:257:9 [INFO] [stderr] | [INFO] [stderr] 257 | *n = *n / *divisor [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `*n /= *divisor` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `path::no_cap::NoCap` [INFO] [stderr] --> path/no_cap.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | / pub fn new() -> NoCap { [INFO] [stderr] 13 | | NoCap [INFO] [stderr] 14 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default_derive)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 7 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this function has too many arguments (9/7) [INFO] [stderr] --> path/arrowhead_cap.rs:30:5 [INFO] [stderr] | [INFO] [stderr] 30 | / fn do_gen_cap( [INFO] [stderr] 31 | | &self, [INFO] [stderr] 32 | | attach_id: u32, [INFO] [stderr] 33 | | pattern: &Polyline>, [INFO] [stderr] ... | [INFO] [stderr] 104 | | coords.push(pointy_thing); [INFO] [stderr] 105 | | } [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: this .into_iter() call is equivalent to .iter() and will not move the slice [INFO] [stderr] --> path/arrowhead_cap.rs:82:48 [INFO] [stderr] | [INFO] [stderr] 82 | coords.extend(new_pattern.coords().into_iter()); [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::into_iter_on_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stderr] [INFO] [stderr] warning: this function has too many arguments (8/7) [INFO] [stderr] --> path/polyline_pattern.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | / fn gen_start_cap( [INFO] [stderr] 22 | | &self, [INFO] [stderr] 23 | | attach_id: u32, [INFO] [stderr] 24 | | pattern: &Polyline>, [INFO] [stderr] ... | [INFO] [stderr] 29 | | indices: &mut Vec>, [INFO] [stderr] 30 | | ); [INFO] [stderr] | |______^ [INFO] [stderr] | [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: this function has too many arguments (8/7) [INFO] [stderr] --> path/polyline_pattern.rs:33:5 [INFO] [stderr] | [INFO] [stderr] 33 | / fn gen_end_cap( [INFO] [stderr] 34 | | &self, [INFO] [stderr] 35 | | attach_id: u32, [INFO] [stderr] 36 | | pattern: &Polyline>, [INFO] [stderr] ... | [INFO] [stderr] 41 | | indices: &mut Vec>, [INFO] [stderr] 42 | | ); [INFO] [stderr] | |______^ [INFO] [stderr] | [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: using `clone` on a `Copy` type [INFO] [stderr] --> path/polyline_pattern.rs:61:39 [INFO] [stderr] | [INFO] [stderr] 61 | coords3d.push(Point3::new(v.x.clone(), v.y.clone(), na::zero())); [INFO] [stderr] | ^^^^^^^^^^^ help: try removing the `clone` call: `v.x` [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: using `clone` on a `Copy` type [INFO] [stderr] --> path/polyline_pattern.rs:61:52 [INFO] [stderr] | [INFO] [stderr] 61 | coords3d.push(Point3::new(v.x.clone(), v.y.clone(), na::zero())); [INFO] [stderr] | ^^^^^^^^^^^ help: try removing the `clone` call: `v.y` [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: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> path/polyline_pattern.rs:99:21 [INFO] [stderr] | [INFO] [stderr] 99 | / let transform; [INFO] [stderr] 100 | | [INFO] [stderr] 101 | | if dir.x.is_zero() && dir.z.is_zero() { [INFO] [stderr] 102 | | // FIXME: this might not be enough to avoid singularities. [INFO] [stderr] ... | [INFO] [stderr] 105 | | transform = Isometry3::new_observer_frame(pt, &(*pt + *dir), &Vector3::y()); [INFO] [stderr] 106 | | } [INFO] [stderr] | |_____________________^ help: it is more idiomatic to write: `let transform = if dir.x.is_zero() && dir.z.is_zero() { Isometry3::new_observer_frame(pt, &(*pt + *dir), &Vector3::x()) } else { Isometry3::new_observer_frame(pt, &(*pt + *dir), &Vector3::y()) };` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_let_if_seq)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> path/polyline_path.rs:32:22 [INFO] [stderr] | [INFO] [stderr] 32 | curr_pt: polyline.coords()[0].clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `polyline.coords()[0]` [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: using `clone` on a `Copy` type [INFO] [stderr] --> path/polyline_path.rs:43:36 [INFO] [stderr] | [INFO] [stderr] 43 | PathSample::StartPoint(self.curr_pt.clone(), self.curr_dir.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.curr_pt` [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: using `clone` on a `Copy` type [INFO] [stderr] --> path/polyline_path.rs:43:58 [INFO] [stderr] | [INFO] [stderr] 43 | PathSample::StartPoint(self.curr_pt.clone(), self.curr_dir.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.curr_dir` [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: using `clone` on a `Copy` type [INFO] [stderr] --> path/polyline_path.rs:45:36 [INFO] [stderr] | [INFO] [stderr] 45 | PathSample::InnerPoint(self.curr_pt.clone(), self.curr_dir.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.curr_pt` [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: using `clone` on a `Copy` type [INFO] [stderr] --> path/polyline_path.rs:45:58 [INFO] [stderr] | [INFO] [stderr] 45 | PathSample::InnerPoint(self.curr_pt.clone(), self.curr_dir.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.curr_dir` [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: using `clone` on a `Copy` type [INFO] [stderr] --> path/polyline_path.rs:47:34 [INFO] [stderr] | [INFO] [stderr] 47 | PathSample::EndPoint(self.curr_pt.clone(), self.curr_dir.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.curr_pt` [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: using `clone` on a `Copy` type [INFO] [stderr] --> path/polyline_path.rs:47:56 [INFO] [stderr] | [INFO] [stderr] 47 | PathSample::EndPoint(self.curr_pt.clone(), self.curr_dir.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.curr_dir` [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: manual implementation of an assign operation [INFO] [stderr] --> path/polyline_path.rs:52:9 [INFO] [stderr] | [INFO] [stderr] 52 | self.curr_pt_id = self.curr_pt_id + 1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `self.curr_pt_id += 1` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> path/polyline_path.rs:55:28 [INFO] [stderr] | [INFO] [stderr] 55 | self.curr_pt = poly_coords[self.curr_pt_id].clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `poly_coords[self.curr_pt_id]` [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: manual implementation of an assign operation [INFO] [stderr] --> trimesh.rs:184:13 [INFO] [stderr] | [INFO] [stderr] 184 | *c = *c * s [INFO] [stderr] | ^^^^^^^^^^^ help: replace it with: `*c *= s` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> trimesh.rs:214:43 [INFO] [stderr] | [INFO] [stderr] 214 | resc.push(self.coords[point.x as usize].clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.coords[point.x as usize]` [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: using `clone` on a `Copy` type [INFO] [stderr] --> trimesh.rs:217:44 [INFO] [stderr] | [INFO] [stderr] 217 | l.push(self.normals.as_ref().unwrap()[point.y as usize].clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.normals.as_ref().unwrap()[point.y as usize]` [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: using `clone` on a `Copy` type [INFO] [stderr] --> trimesh.rs:220:44 [INFO] [stderr] | [INFO] [stderr] 220 | l.push(self.uvs.as_ref().unwrap()[point.z as usize].clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.uvs.as_ref().unwrap()[point.z as usize]` [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: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> trimesh.rs:260:17 [INFO] [stderr] | [INFO] [stderr] 260 | / let resi; [INFO] [stderr] 261 | | [INFO] [stderr] 262 | | if recover_topology { [INFO] [stderr] 263 | | let (idx, coords) = [INFO] [stderr] ... | [INFO] [stderr] 268 | | resi = utils::split_index_buffer(&ids[..]); [INFO] [stderr] 269 | | } [INFO] [stderr] | |_________________^ help: it is more idiomatic to write: `let resi = if recover_topology { ..; idx } else { utils::split_index_buffer(&ids[..]) };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> utils.rs:23:13 [INFO] [stderr] | [INFO] [stderr] 23 | y.clone(), [INFO] [stderr] | ^^^^^^^^^ help: try removing the `clone` call: `y` [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: manual implementation of an assign operation [INFO] [stderr] --> utils.rs:26:9 [INFO] [stderr] | [INFO] [stderr] 26 | curr_theta = curr_theta + dtheta; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `curr_theta += dtheta` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::assign_op_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> utils.rs:45:9 [INFO] [stderr] | [INFO] [stderr] 45 | curr_theta = curr_theta + dtheta; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `curr_theta += dtheta` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> utils.rs:133:26 [INFO] [stderr] | [INFO] [stderr] 133 | out.push(Point3::new(ul.clone(), dl, dr.clone())); [INFO] [stderr] | ^^^^^^^^^^ help: try removing the `clone` call: `ul` [INFO] [stderr] | [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> polyline.rs:103:13 [INFO] [stderr] | [INFO] [stderr] 103 | *c = *c * *s [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `*c *= *s` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [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: using `clone` on a `Copy` type [INFO] [stderr] --> utils.rs:133:42 [INFO] [stderr] | [INFO] [stderr] 133 | out.push(Point3::new(ul.clone(), dl, dr.clone())); [INFO] [stderr] | ^^^^^^^^^^ help: try removing the `clone` call: `dr` [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: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> sphere.rs:49:39 [INFO] [stderr] | [INFO] [stderr] 49 | let dtheta = two_pi / na::convert(ntheta_subdiv as f64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(ntheta_subdiv)` [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] --> sphere.rs:50:33 [INFO] [stderr] | [INFO] [stderr] 50 | let dphi = pi / na::convert(nphi_subdiv as f64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `f64::from(nphi_subdiv)` [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: manual implementation of an assign operation [INFO] [stderr] --> sphere.rs:66:9 [INFO] [stderr] | [INFO] [stderr] 66 | curr_phi = curr_phi + dphi; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `curr_phi += dphi` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> utils.rs:246:9 [INFO] [stderr] | [INFO] [stderr] 246 | normals[f.x as usize] = normals[f.x as usize] + normal; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `normals[f.x as usize] += normal` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> sphere.rs:107:43 [INFO] [stderr] | [INFO] [stderr] 107 | let duvtheta = N::one() / na::convert(ntheta_subdiv as f64); // step of uv.x coordinates. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(ntheta_subdiv)` [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] --> sphere.rs:108:41 [INFO] [stderr] | [INFO] [stderr] 108 | let duvphi = N::one() / na::convert(nphi_subdiv as f64); // step of uv.y coordinates. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `f64::from(nphi_subdiv)` [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> utils.rs:247:9 [INFO] [stderr] | [INFO] [stderr] 247 | normals[f.y as usize] = normals[f.y as usize] + normal; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `normals[f.y as usize] += normal` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> utils.rs:248:9 [INFO] [stderr] | [INFO] [stderr] 248 | normals[f.z as usize] = normals[f.z as usize] + normal; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `normals[f.z as usize] += normal` [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: an inclusive range would be more readable [INFO] [stderr] --> sphere.rs:115:14 [INFO] [stderr] | [INFO] [stderr] 115 | for _ in 0..nphi_subdiv + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use: `0..=nphi_subdiv` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::range_plus_one)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> sphere.rs:123:9 [INFO] [stderr] | [INFO] [stderr] 123 | curr_phi = curr_phi + dphi; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `curr_phi += dphi` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> utils.rs:250:9 [INFO] [stderr] | [INFO] [stderr] 250 | divisor[f.x as usize] = divisor[f.x as usize] + na::one(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `divisor[f.x as usize] += na::one()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> utils.rs:251:9 [INFO] [stderr] | [INFO] [stderr] 251 | divisor[f.y as usize] = divisor[f.y as usize] + na::one(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `divisor[f.y as usize] += na::one()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> utils.rs:252:9 [INFO] [stderr] | [INFO] [stderr] 252 | divisor[f.z as usize] = divisor[f.z as usize] + na::one(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `divisor[f.z as usize] += na::one()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> utils.rs:257:9 [INFO] [stderr] | [INFO] [stderr] 257 | *n = *n / *divisor [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `*n /= *divisor` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `path::no_cap::NoCap` [INFO] [stderr] --> path/no_cap.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | / pub fn new() -> NoCap { [INFO] [stderr] 13 | | NoCap [INFO] [stderr] 14 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default_derive)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 7 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this function has too many arguments (9/7) [INFO] [stderr] --> path/arrowhead_cap.rs:30:5 [INFO] [stderr] | [INFO] [stderr] 30 | / fn do_gen_cap( [INFO] [stderr] 31 | | &self, [INFO] [stderr] 32 | | attach_id: u32, [INFO] [stderr] 33 | | pattern: &Polyline>, [INFO] [stderr] ... | [INFO] [stderr] 104 | | coords.push(pointy_thing); [INFO] [stderr] 105 | | } [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: an inclusive range would be more readable [INFO] [stderr] --> sphere.rs:141:14 [INFO] [stderr] | [INFO] [stderr] 141 | for _ in 0..nphi_subdiv + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use: `0..=nphi_subdiv` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> sphere.rs:144:18 [INFO] [stderr] | [INFO] [stderr] 144 | for _ in 0..ntheta_subdiv + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: use: `0..=ntheta_subdiv` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> sphere.rs:146:13 [INFO] [stderr] | [INFO] [stderr] 146 | curr_uvtheta = curr_uvtheta + duvtheta; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `curr_uvtheta += duvtheta` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> sphere.rs:149:9 [INFO] [stderr] | [INFO] [stderr] 149 | curr_uvphi = curr_uvphi + duvphi; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `curr_uvphi += duvphi` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> sphere.rs:169:39 [INFO] [stderr] | [INFO] [stderr] 169 | let dtheta = two_pi / na::convert(ntheta_subdiv as f64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(ntheta_subdiv)` [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] --> sphere.rs:170:37 [INFO] [stderr] | [INFO] [stderr] 170 | let dphi = pi_two / na::convert(nphi_subdiv as f64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `f64::from(nphi_subdiv)` [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: manual implementation of an assign operation [INFO] [stderr] --> sphere.rs:183:9 [INFO] [stderr] | [INFO] [stderr] 183 | curr_phi = curr_phi + dphi; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `curr_phi += dphi` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: this .into_iter() call is equivalent to .iter() and will not move the slice [INFO] [stderr] --> path/arrowhead_cap.rs:82:48 [INFO] [stderr] | [INFO] [stderr] 82 | coords.extend(new_pattern.coords().into_iter()); [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::into_iter_on_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> sphere.rs:221:39 [INFO] [stderr] | [INFO] [stderr] 221 | let dtheta = two_pi / na::convert(nsubdivs as f64); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(nsubdivs)` [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] --> path/polyline_pattern.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | / fn gen_start_cap( [INFO] [stderr] 22 | | &self, [INFO] [stderr] 23 | | attach_id: u32, [INFO] [stderr] 24 | | pattern: &Polyline>, [INFO] [stderr] ... | [INFO] [stderr] 29 | | indices: &mut Vec>, [INFO] [stderr] 30 | | ); [INFO] [stderr] | |______^ [INFO] [stderr] | [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: this function has too many arguments (8/7) [INFO] [stderr] --> path/polyline_pattern.rs:33:5 [INFO] [stderr] | [INFO] [stderr] 33 | / fn gen_end_cap( [INFO] [stderr] 34 | | &self, [INFO] [stderr] 35 | | attach_id: u32, [INFO] [stderr] 36 | | pattern: &Polyline>, [INFO] [stderr] ... | [INFO] [stderr] 41 | | indices: &mut Vec>, [INFO] [stderr] 42 | | ); [INFO] [stderr] | |______^ [INFO] [stderr] | [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: manual implementation of an assign operation [INFO] [stderr] --> capsule.rs:43:9 [INFO] [stderr] | [INFO] [stderr] 43 | coord.x = coord.x * *caps_diameter; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `coord.x *= *caps_diameter` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> capsule.rs:45:9 [INFO] [stderr] | [INFO] [stderr] 45 | coord.z = coord.z * *caps_diameter; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `coord.z *= *caps_diameter` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> capsule.rs:50:9 [INFO] [stderr] | [INFO] [stderr] 50 | coord.x = coord.x * *caps_diameter; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `coord.x *= *caps_diameter` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> capsule.rs:52:9 [INFO] [stderr] | [INFO] [stderr] 52 | coord.z = coord.z * *caps_diameter; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `coord.z *= *caps_diameter` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> capsule.rs:64:9 [INFO] [stderr] | [INFO] [stderr] 64 | idx.x = idx.x + base_top_coords; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `idx.x += base_top_coords` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> capsule.rs:65:9 [INFO] [stderr] | [INFO] [stderr] 65 | idx.y = idx.y + base_top_coords; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `idx.y += base_top_coords` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> capsule.rs:66:9 [INFO] [stderr] | [INFO] [stderr] 66 | idx.z = idx.z + base_top_coords; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `idx.z += base_top_coords` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> path/polyline_pattern.rs:61:39 [INFO] [stderr] | [INFO] [stderr] 61 | coords3d.push(Point3::new(v.x.clone(), v.y.clone(), na::zero())); [INFO] [stderr] | ^^^^^^^^^^^ help: try removing the `clone` call: `v.x` [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: using `clone` on a `Copy` type [INFO] [stderr] --> path/polyline_pattern.rs:61:52 [INFO] [stderr] | [INFO] [stderr] 61 | coords3d.push(Point3::new(v.x.clone(), v.y.clone(), na::zero())); [INFO] [stderr] | ^^^^^^^^^^^ help: try removing the `clone` call: `v.y` [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: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> cone.rs:19:39 [INFO] [stderr] | [INFO] [stderr] 19 | let dtheta = two_pi / na::convert(nsubdiv as f64); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f64::from(nsubdiv)` [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: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> path/polyline_pattern.rs:99:21 [INFO] [stderr] | [INFO] [stderr] 99 | / let transform; [INFO] [stderr] 100 | | [INFO] [stderr] 101 | | if dir.x.is_zero() && dir.z.is_zero() { [INFO] [stderr] 102 | | // FIXME: this might not be enough to avoid singularities. [INFO] [stderr] ... | [INFO] [stderr] 105 | | transform = Isometry3::new_observer_frame(pt, &(*pt + *dir), &Vector3::y()); [INFO] [stderr] 106 | | } [INFO] [stderr] | |_____________________^ help: it is more idiomatic to write: `let transform = if dir.x.is_zero() && dir.z.is_zero() { Isometry3::new_observer_frame(pt, &(*pt + *dir), &Vector3::x()) } else { Isometry3::new_observer_frame(pt, &(*pt + *dir), &Vector3::y()) };` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_let_if_seq)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> cone.rs:48:9 [INFO] [stderr] | [INFO] [stderr] 48 | n.y = n.y + shift; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace it with: `n.y += shift` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> cone.rs:50:9 [INFO] [stderr] | [INFO] [stderr] 50 | n.x = n.x / div; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: replace it with: `n.x /= div` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> cone.rs:51:9 [INFO] [stderr] | [INFO] [stderr] 51 | n.y = n.y / div; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: replace it with: `n.y /= div` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> cone.rs:52:9 [INFO] [stderr] | [INFO] [stderr] 52 | n.z = n.z / div; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: replace it with: `n.z /= div` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> path/polyline_path.rs:32:22 [INFO] [stderr] | [INFO] [stderr] 32 | curr_pt: polyline.coords()[0].clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `polyline.coords()[0]` [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: using `clone` on a `Copy` type [INFO] [stderr] --> path/polyline_path.rs:43:36 [INFO] [stderr] | [INFO] [stderr] 43 | PathSample::StartPoint(self.curr_pt.clone(), self.curr_dir.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.curr_pt` [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: using `clone` on a `Copy` type [INFO] [stderr] --> path/polyline_path.rs:43:58 [INFO] [stderr] | [INFO] [stderr] 43 | PathSample::StartPoint(self.curr_pt.clone(), self.curr_dir.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.curr_dir` [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: using `clone` on a `Copy` type [INFO] [stderr] --> path/polyline_path.rs:45:36 [INFO] [stderr] | [INFO] [stderr] 45 | PathSample::InnerPoint(self.curr_pt.clone(), self.curr_dir.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.curr_pt` [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: using `clone` on a `Copy` type [INFO] [stderr] --> path/polyline_path.rs:45:58 [INFO] [stderr] | [INFO] [stderr] 45 | PathSample::InnerPoint(self.curr_pt.clone(), self.curr_dir.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.curr_dir` [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: using `clone` on a `Copy` type [INFO] [stderr] --> path/polyline_path.rs:47:34 [INFO] [stderr] | [INFO] [stderr] 47 | PathSample::EndPoint(self.curr_pt.clone(), self.curr_dir.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.curr_pt` [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: using `clone` on a `Copy` type [INFO] [stderr] --> path/polyline_path.rs:47:56 [INFO] [stderr] | [INFO] [stderr] 47 | PathSample::EndPoint(self.curr_pt.clone(), self.curr_dir.clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.curr_dir` [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: manual implementation of an assign operation [INFO] [stderr] --> path/polyline_path.rs:52:9 [INFO] [stderr] | [INFO] [stderr] 52 | self.curr_pt_id = self.curr_pt_id + 1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `self.curr_pt_id += 1` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> path/polyline_path.rs:55:28 [INFO] [stderr] | [INFO] [stderr] 55 | self.curr_pt = poly_coords[self.curr_pt_id].clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `poly_coords[self.curr_pt_id]` [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: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> cylinder.rs:19:50 [INFO] [stderr] | [INFO] [stderr] 19 | let invsubdiv = na::one::() / na::convert(nsubdiv as f64); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f64::from(nsubdiv)` [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: manual implementation of an assign operation [INFO] [stderr] --> trimesh.rs:184:13 [INFO] [stderr] | [INFO] [stderr] 184 | *c = *c * s [INFO] [stderr] | ^^^^^^^^^^^ help: replace it with: `*c *= s` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> cylinder.rs:61:9 [INFO] [stderr] | [INFO] [stderr] 61 | curr_u = curr_u + invsubdiv; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `curr_u += invsubdiv` [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> trimesh.rs:214:43 [INFO] [stderr] | [INFO] [stderr] 214 | resc.push(self.coords[point.x as usize].clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.coords[point.x as usize]` [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: using `clone` on a `Copy` type [INFO] [stderr] --> trimesh.rs:217:44 [INFO] [stderr] | [INFO] [stderr] 217 | l.push(self.normals.as_ref().unwrap()[point.y as usize].clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.normals.as_ref().unwrap()[point.y as usize]` [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: using `clone` on a `Copy` type [INFO] [stderr] --> trimesh.rs:220:44 [INFO] [stderr] | [INFO] [stderr] 220 | l.push(self.uvs.as_ref().unwrap()[point.z as usize].clone()) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.uvs.as_ref().unwrap()[point.z as usize]` [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: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> trimesh.rs:260:17 [INFO] [stderr] | [INFO] [stderr] 260 | / let resi; [INFO] [stderr] 261 | | [INFO] [stderr] 262 | | if recover_topology { [INFO] [stderr] 263 | | let (idx, coords) = [INFO] [stderr] ... | [INFO] [stderr] 268 | | resi = utils::split_index_buffer(&ids[..]); [INFO] [stderr] 269 | | } [INFO] [stderr] | |_________________^ help: it is more idiomatic to write: `let resi = if recover_topology { ..; idx } else { utils::split_index_buffer(&ids[..]) };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> cylinder.rs:68:9 [INFO] [stderr] | [INFO] [stderr] 68 | curr_u = curr_u + invsubdiv; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `curr_u += invsubdiv` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> cylinder.rs:75:9 [INFO] [stderr] | [INFO] [stderr] 75 | n.x = n.x * na::convert(2.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `n.x *= na::convert(2.0)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> cylinder.rs:77:9 [INFO] [stderr] | [INFO] [stderr] 77 | n.z = n.z * na::convert(2.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `n.z *= na::convert(2.0)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> cylinder.rs:88:13 [INFO] [stderr] | [INFO] [stderr] 88 | i.x.y = i.x.y - nsubdiv; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `i.x.y -= nsubdiv` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> cylinder.rs:91:13 [INFO] [stderr] | [INFO] [stderr] 91 | i.y.y = i.y.y - nsubdiv; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `i.y.y -= nsubdiv` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> cylinder.rs:94:13 [INFO] [stderr] | [INFO] [stderr] 94 | i.z.y = i.z.y - nsubdiv; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `i.z.y -= nsubdiv` [INFO] [stderr] | [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> polyline.rs:103:13 [INFO] [stderr] | [INFO] [stderr] 103 | *c = *c * *s [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `*c *= *s` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `s`. [INFO] [stderr] --> quad.rs:29:14 [INFO] [stderr] | [INFO] [stderr] 29 | for i in 2..na::dimension::() { [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] 29 | for in s.iter_mut().take(na::dimension::()).skip(2) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> quad.rs:57:17 [INFO] [stderr] | [INFO] [stderr] 57 | *dest = src.clone(); [INFO] [stderr] | ^^^^^^^^^^^ help: try dereferencing it: `*src` [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: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> sphere.rs:49:39 [INFO] [stderr] | [INFO] [stderr] 49 | let dtheta = two_pi / na::convert(ntheta_subdiv as f64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(ntheta_subdiv)` [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] --> sphere.rs:50:33 [INFO] [stderr] | [INFO] [stderr] 50 | let dphi = pi / na::convert(nphi_subdiv as f64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `f64::from(nphi_subdiv)` [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: an inclusive range would be more readable [INFO] [stderr] --> quad.rs:95:14 [INFO] [stderr] | [INFO] [stderr] 95 | for i in 0usize..vsubdivs + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: use: `0usize..=vsubdivs` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> sphere.rs:66:9 [INFO] [stderr] | [INFO] [stderr] 66 | curr_phi = curr_phi + dphi; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `curr_phi += dphi` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> quad.rs:96:18 [INFO] [stderr] | [INFO] [stderr] 96 | for j in 0usize..usubdivs + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: use: `0usize..=usubdivs` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> sphere.rs:107:43 [INFO] [stderr] | [INFO] [stderr] 107 | let duvtheta = N::one() / na::convert(ntheta_subdiv as f64); // step of uv.x coordinates. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(ntheta_subdiv)` [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] --> sphere.rs:108:41 [INFO] [stderr] | [INFO] [stderr] 108 | let duvphi = N::one() / na::convert(nphi_subdiv as f64); // step of uv.y coordinates. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `f64::from(nphi_subdiv)` [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: an inclusive range would be more readable [INFO] [stderr] --> sphere.rs:115:14 [INFO] [stderr] | [INFO] [stderr] 115 | for _ in 0..nphi_subdiv + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use: `0..=nphi_subdiv` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::range_plus_one)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> sphere.rs:123:9 [INFO] [stderr] | [INFO] [stderr] 123 | curr_phi = curr_phi + dphi; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `curr_phi += dphi` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> sphere.rs:141:14 [INFO] [stderr] | [INFO] [stderr] 141 | for _ in 0..nphi_subdiv + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use: `0..=nphi_subdiv` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> sphere.rs:144:18 [INFO] [stderr] | [INFO] [stderr] 144 | for _ in 0..ntheta_subdiv + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: use: `0..=ntheta_subdiv` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> sphere.rs:146:13 [INFO] [stderr] | [INFO] [stderr] 146 | curr_uvtheta = curr_uvtheta + duvtheta; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `curr_uvtheta += duvtheta` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> sphere.rs:149:9 [INFO] [stderr] | [INFO] [stderr] 149 | curr_uvphi = curr_uvphi + duvphi; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `curr_uvphi += duvphi` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> sphere.rs:169:39 [INFO] [stderr] | [INFO] [stderr] 169 | let dtheta = two_pi / na::convert(ntheta_subdiv as f64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(ntheta_subdiv)` [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] --> sphere.rs:170:37 [INFO] [stderr] | [INFO] [stderr] 170 | let dphi = pi_two / na::convert(nphi_subdiv as f64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `f64::from(nphi_subdiv)` [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: manual implementation of an assign operation [INFO] [stderr] --> sphere.rs:183:9 [INFO] [stderr] | [INFO] [stderr] 183 | curr_phi = curr_phi + dphi; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `curr_phi += dphi` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> sphere.rs:221:39 [INFO] [stderr] | [INFO] [stderr] 221 | let dtheta = two_pi / na::convert(nsubdivs as f64); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(nsubdivs)` [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: manual implementation of an assign operation [INFO] [stderr] --> capsule.rs:43:9 [INFO] [stderr] | [INFO] [stderr] 43 | coord.x = coord.x * *caps_diameter; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `coord.x *= *caps_diameter` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> capsule.rs:45:9 [INFO] [stderr] | [INFO] [stderr] 45 | coord.z = coord.z * *caps_diameter; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `coord.z *= *caps_diameter` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> capsule.rs:50:9 [INFO] [stderr] | [INFO] [stderr] 50 | coord.x = coord.x * *caps_diameter; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `coord.x *= *caps_diameter` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> capsule.rs:52:9 [INFO] [stderr] | [INFO] [stderr] 52 | coord.z = coord.z * *caps_diameter; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `coord.z *= *caps_diameter` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> capsule.rs:64:9 [INFO] [stderr] | [INFO] [stderr] 64 | idx.x = idx.x + base_top_coords; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `idx.x += base_top_coords` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> capsule.rs:65:9 [INFO] [stderr] | [INFO] [stderr] 65 | idx.y = idx.y + base_top_coords; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `idx.y += base_top_coords` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> capsule.rs:66:9 [INFO] [stderr] | [INFO] [stderr] 66 | idx.z = idx.z + base_top_coords; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `idx.z += base_top_coords` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> bezier.rs:39:5 [INFO] [stderr] | [INFO] [stderr] 39 | cache[0].clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `cache[0]` [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: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> cone.rs:19:39 [INFO] [stderr] | [INFO] [stderr] 19 | let dtheta = two_pi / na::convert(nsubdiv as f64); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f64::from(nsubdiv)` [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: manual implementation of an assign operation [INFO] [stderr] --> cone.rs:48:9 [INFO] [stderr] | [INFO] [stderr] 48 | n.y = n.y + shift; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace it with: `n.y += shift` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> cone.rs:50:9 [INFO] [stderr] | [INFO] [stderr] 50 | n.x = n.x / div; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: replace it with: `n.x /= div` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> cone.rs:51:9 [INFO] [stderr] | [INFO] [stderr] 51 | n.y = n.y / div; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: replace it with: `n.y /= div` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> cone.rs:52:9 [INFO] [stderr] | [INFO] [stderr] 52 | n.z = n.z / div; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: replace it with: `n.z /= div` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is used to index `vcache` [INFO] [stderr] --> bezier.rs:64:14 [INFO] [stderr] | [INFO] [stderr] 64 | for i in 0..nvpoints { [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] 64 | for (i, ) in vcache.iter_mut().enumerate().take(nvpoints) { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> bezier.rs:86:9 [INFO] [stderr] | [INFO] [stderr] 86 | t = t + tstep; [INFO] [stderr] | ^^^^^^^^^^^^^ help: replace it with: `t += tstep` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> bezier.rs:116:18 [INFO] [stderr] | [INFO] [stderr] 116 | for j in 0..vsubdivs + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use: `0..=vsubdivs` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> bezier.rs:117:22 [INFO] [stderr] | [INFO] [stderr] 117 | for i in 0..usubdivs + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use: `0..=usubdivs` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> cylinder.rs:19:50 [INFO] [stderr] | [INFO] [stderr] 19 | let invsubdiv = na::one::() / na::convert(nsubdiv as f64); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f64::from(nsubdiv)` [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: manual implementation of an assign operation [INFO] [stderr] --> cylinder.rs:61:9 [INFO] [stderr] | [INFO] [stderr] 61 | curr_u = curr_u + invsubdiv; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `curr_u += invsubdiv` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> cylinder.rs:68:9 [INFO] [stderr] | [INFO] [stderr] 68 | curr_u = curr_u + invsubdiv; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `curr_u += invsubdiv` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> cylinder.rs:75:9 [INFO] [stderr] | [INFO] [stderr] 75 | n.x = n.x * na::convert(2.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `n.x *= na::convert(2.0)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> cylinder.rs:77:9 [INFO] [stderr] | [INFO] [stderr] 77 | n.z = n.z * na::convert(2.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `n.z *= na::convert(2.0)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> cylinder.rs:88:13 [INFO] [stderr] | [INFO] [stderr] 88 | i.x.y = i.x.y - nsubdiv; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `i.x.y -= nsubdiv` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> cylinder.rs:91:13 [INFO] [stderr] | [INFO] [stderr] 91 | i.y.y = i.y.y - nsubdiv; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `i.y.y -= nsubdiv` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> cylinder.rs:94:13 [INFO] [stderr] | [INFO] [stderr] 94 | i.z.y = i.z.y - nsubdiv; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `i.z.y -= nsubdiv` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `s`. [INFO] [stderr] --> quad.rs:29:14 [INFO] [stderr] | [INFO] [stderr] 29 | for i in 2..na::dimension::() { [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] 29 | for in s.iter_mut().take(na::dimension::()).skip(2) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> quad.rs:57:17 [INFO] [stderr] | [INFO] [stderr] 57 | *dest = src.clone(); [INFO] [stderr] | ^^^^^^^^^^^ help: try dereferencing it: `*src` [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: an inclusive range would be more readable [INFO] [stderr] --> quad.rs:95:14 [INFO] [stderr] | [INFO] [stderr] 95 | for i in 0usize..vsubdivs + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: use: `0usize..=vsubdivs` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> quad.rs:96:18 [INFO] [stderr] | [INFO] [stderr] 96 | for j in 0usize..usubdivs + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: use: `0usize..=usubdivs` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> bezier.rs:39:5 [INFO] [stderr] | [INFO] [stderr] 39 | cache[0].clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `cache[0]` [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 `i` is used to index `vcache` [INFO] [stderr] --> bezier.rs:64:14 [INFO] [stderr] | [INFO] [stderr] 64 | for i in 0..nvpoints { [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] 64 | for (i, ) in vcache.iter_mut().enumerate().take(nvpoints) { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> bezier.rs:86:9 [INFO] [stderr] | [INFO] [stderr] 86 | t = t + tstep; [INFO] [stderr] | ^^^^^^^^^^^^^ help: replace it with: `t += tstep` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> bezier.rs:116:18 [INFO] [stderr] | [INFO] [stderr] 116 | for j in 0..vsubdivs + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use: `0..=vsubdivs` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> bezier.rs:117:22 [INFO] [stderr] | [INFO] [stderr] 117 | for i in 0..usubdivs + 1 { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: use: `0..=usubdivs` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 37.68s [INFO] running `"docker" "inspect" "45da8a32bbcb1932e3f2a0bba2ccd83e57cb9bdcfeb38a1d7bfc67fc959daa52"` [INFO] running `"docker" "rm" "-f" "45da8a32bbcb1932e3f2a0bba2ccd83e57cb9bdcfeb38a1d7bfc67fc959daa52"` [INFO] [stdout] 45da8a32bbcb1932e3f2a0bba2ccd83e57cb9bdcfeb38a1d7bfc67fc959daa52