[INFO] crate superpixel 0.1.1 is already in cache [INFO] extracting crate superpixel 0.1.1 into work/ex/clippy-test-run/sources/stable/reg/superpixel/0.1.1 [INFO] extracting crate superpixel 0.1.1 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/superpixel/0.1.1 [INFO] validating manifest of superpixel-0.1.1 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 superpixel-0.1.1 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 superpixel-0.1.1 [INFO] finished frobbing superpixel-0.1.1 [INFO] frobbed toml for superpixel-0.1.1 written to work/ex/clippy-test-run/sources/stable/reg/superpixel/0.1.1/Cargo.toml [INFO] started frobbing superpixel-0.1.1 [INFO] finished frobbing superpixel-0.1.1 [INFO] frobbed toml for superpixel-0.1.1 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/superpixel/0.1.1/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 superpixel-0.1.1 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-6/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/superpixel/0.1.1:/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] b2bb38afef8fe0cc358cb12254d9b35550c3cdbc3d880729fa6fba64a8e4c35a [INFO] running `"docker" "start" "-a" "b2bb38afef8fe0cc358cb12254d9b35550c3cdbc3d880729fa6fba64a8e4c35a"` [INFO] [stderr] Checking superpixel v0.1.1 (/opt/crater/workdir) [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/lib.rs:263:29 [INFO] [stderr] | [INFO] [stderr] 263 | let b = lab_vec[i].b; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::many_single_char_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/lib.rs:265:33 [INFO] [stderr] | [INFO] [stderr] 265 | let ref c = s.lab; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/lib.rs:263:29 [INFO] [stderr] | [INFO] [stderr] 263 | let b = lab_vec[i].b; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::many_single_char_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/lib.rs:265:33 [INFO] [stderr] | [INFO] [stderr] 265 | let ref c = s.lab; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/lib.rs:54:5 [INFO] [stderr] | [INFO] [stderr] 54 | / return if val <= 0.04045 { [INFO] [stderr] 55 | | val/12.92 [INFO] [stderr] 56 | | } else { [INFO] [stderr] 57 | | ((val+0.055)/1.055).powf(2.4) [INFO] [stderr] 58 | | }; [INFO] [stderr] | |__________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 54 | if val <= 0.04045 { [INFO] [stderr] 55 | val/12.92 [INFO] [stderr] 56 | } else { [INFO] [stderr] 57 | ((val+0.055)/1.055).powf(2.4) [INFO] [stderr] 58 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:74:14 [INFO] [stderr] | [INFO] [stderr] 74 | x: r*0.4124564 + g*0.3575761 + b*0.1804375, [INFO] [stderr] | ^^^^^^^^^ help: consider: `0.412_456_4` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:74:28 [INFO] [stderr] | [INFO] [stderr] 74 | x: r*0.4124564 + g*0.3575761 + b*0.1804375, [INFO] [stderr] | ^^^^^^^^^ help: consider: `0.357_576_1` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:74:42 [INFO] [stderr] | [INFO] [stderr] 74 | x: r*0.4124564 + g*0.3575761 + b*0.1804375, [INFO] [stderr] | ^^^^^^^^^ help: consider: `0.180_437_5` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:75:14 [INFO] [stderr] | [INFO] [stderr] 75 | y: r*0.2126729 + g*0.7151522 + b*0.0721750, [INFO] [stderr] | ^^^^^^^^^ help: consider: `0.212_672_9` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:75:28 [INFO] [stderr] | [INFO] [stderr] 75 | y: r*0.2126729 + g*0.7151522 + b*0.0721750, [INFO] [stderr] | ^^^^^^^^^ help: consider: `0.715_152_2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:75:42 [INFO] [stderr] | [INFO] [stderr] 75 | y: r*0.2126729 + g*0.7151522 + b*0.0721750, [INFO] [stderr] | ^^^^^^^^^ help: consider: `0.072_175_0` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:76:14 [INFO] [stderr] | [INFO] [stderr] 76 | z: r*0.0193339 + g*0.1191920 + b*0.9503041, [INFO] [stderr] | ^^^^^^^^^ help: consider: `0.019_333_9` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:76:28 [INFO] [stderr] | [INFO] [stderr] 76 | z: r*0.0193339 + g*0.1191920 + b*0.9503041, [INFO] [stderr] | ^^^^^^^^^ help: consider: `0.119_192_0` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:76:42 [INFO] [stderr] | [INFO] [stderr] 76 | z: r*0.0193339 + g*0.1191920 + b*0.9503041, [INFO] [stderr] | ^^^^^^^^^ help: consider: `0.950_304_1` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:87:19 [INFO] [stderr] | [INFO] [stderr] 87 | let epsilon = 0.008856; [INFO] [stderr] | ^^^^^^^^ help: consider: `0.008_856` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:91:34 [INFO] [stderr] | [INFO] [stderr] 91 | let xyz_white = XYZColor{x : 0.950456, y: 1.0, z: 1.088754}; [INFO] [stderr] | ^^^^^^^^ help: consider: `0.950_456` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:91:55 [INFO] [stderr] | [INFO] [stderr] 91 | let xyz_white = XYZColor{x : 0.950456, y: 1.0, z: 1.088754}; [INFO] [stderr] | ^^^^^^^^ help: consider: `1.088_754` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/lib.rs:550:5 [INFO] [stderr] | [INFO] [stderr] 550 | return *numlabels; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `*numlabels` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/lib.rs:566:5 [INFO] [stderr] | [INFO] [stderr] 566 | / return do_segmentation_with_superpixel_size( [INFO] [stderr] 567 | | img, lab_vec, width, height, klabels, &mut numlabels, superpixel_size as u32, compactness, iterations); [INFO] [stderr] | |_______________________________________________________________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 566 | do_segmentation_with_superpixel_size( [INFO] [stderr] 567 | img, lab_vec, width, height, klabels, &mut numlabels, superpixel_size as u32, compactness, iterations) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `idx` [INFO] [stderr] --> src/lib.rs:451:17 [INFO] [stderr] | [INFO] [stderr] 451 | let idx = y * width + x; [INFO] [stderr] | ^^^ help: consider using `_idx` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `klabels` [INFO] [stderr] --> src/lib.rs:438:5 [INFO] [stderr] | [INFO] [stderr] 438 | klabels: &Vec, [INFO] [stderr] | ^^^^^^^ help: consider using `_klabels` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `outline_color` [INFO] [stderr] --> src/lib.rs:440:5 [INFO] [stderr] | [INFO] [stderr] 440 | outline_color: &image::Rgb [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider using `_outline_color` instead [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:65:23 [INFO] [stderr] | [INFO] [stderr] 65 | let mut r : f64 = (sr as f64) / 255.0; [INFO] [stderr] | ^^^^^^^^^^^ help: try: `f64::from(sr)` [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 u8 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:66:23 [INFO] [stderr] | [INFO] [stderr] 66 | let mut g : f64 = (sg as f64) / 255.0; [INFO] [stderr] | ^^^^^^^^^^^ help: try: `f64::from(sg)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:67:23 [INFO] [stderr] | [INFO] [stderr] 67 | let mut b : f64 = (sb as f64) / 255.0; [INFO] [stderr] | ^^^^^^^^^^^ help: try: `f64::from(sb)` [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: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/lib.rs:141:14 [INFO] [stderr] | [INFO] [stderr] 141 | lab_vec: & Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: change this to: `&[LABColor]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:145:13 [INFO] [stderr] | [INFO] [stderr] 145 | let s = step as f64; [INFO] [stderr] | ^^^^^^^^^^^ help: try: `f64::from(step)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:147:30 [INFO] [stderr] | [INFO] [stderr] 147 | let mut xstrips = (0.5 + (width as f64)/s) as i32; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f64::from(width)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:148:30 [INFO] [stderr] | [INFO] [stderr] 148 | let mut ystrips = (0.5 + (height as f64)/s) as i32; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(height)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:162:24 [INFO] [stderr] | [INFO] [stderr] 162 | let xerrperstrip = (xerr as f64)/(xstrips as f64); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(xerr)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:162:38 [INFO] [stderr] | [INFO] [stderr] 162 | let xerrperstrip = (xerr as f64)/(xstrips as f64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(xstrips)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:163:24 [INFO] [stderr] | [INFO] [stderr] 163 | let yerrperstrip = (yerr as f64)/(ystrips as f64); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(yerr)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:163:38 [INFO] [stderr] | [INFO] [stderr] 163 | let yerrperstrip = (yerr as f64)/(ystrips as f64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(ystrips)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:178:19 [INFO] [stderr] | [INFO] [stderr] 178 | let ye = ((y as f64) * yerrperstrip) as i32; [INFO] [stderr] | ^^^^^^^^^^ help: try: `f64::from(y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:182:23 [INFO] [stderr] | [INFO] [stderr] 182 | let xe = ((x as f64) * xerrperstrip) as i32; [INFO] [stderr] | ^^^^^^^^^^ help: try: `f64::from(x)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:188:20 [INFO] [stderr] | [INFO] [stderr] 188 | x: (x*step+xoff+xe) as f64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(x*step+xoff+xe)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:189:20 [INFO] [stderr] | [INFO] [stderr] 189 | y: (y*step+yoff+ye) as f64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(y*step+yoff+ye)` [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: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/lib.rs:199:14 [INFO] [stderr] | [INFO] [stderr] 199 | lab_vec: & Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: change this to: `&[LABColor]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/lib.rs:54:5 [INFO] [stderr] | [INFO] [stderr] 54 | / return if val <= 0.04045 { [INFO] [stderr] 55 | | val/12.92 [INFO] [stderr] 56 | | } else { [INFO] [stderr] 57 | | ((val+0.055)/1.055).powf(2.4) [INFO] [stderr] 58 | | }; [INFO] [stderr] | |__________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 54 | if val <= 0.04045 { [INFO] [stderr] 55 | val/12.92 [INFO] [stderr] 56 | } else { [INFO] [stderr] 57 | ((val+0.055)/1.055).powf(2.4) [INFO] [stderr] 58 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:74:14 [INFO] [stderr] | [INFO] [stderr] 74 | x: r*0.4124564 + g*0.3575761 + b*0.1804375, [INFO] [stderr] | ^^^^^^^^^ help: consider: `0.412_456_4` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:74:28 [INFO] [stderr] | [INFO] [stderr] 74 | x: r*0.4124564 + g*0.3575761 + b*0.1804375, [INFO] [stderr] | ^^^^^^^^^ help: consider: `0.357_576_1` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:74:42 [INFO] [stderr] | [INFO] [stderr] 74 | x: r*0.4124564 + g*0.3575761 + b*0.1804375, [INFO] [stderr] | ^^^^^^^^^ help: consider: `0.180_437_5` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:75:14 [INFO] [stderr] | [INFO] [stderr] 75 | y: r*0.2126729 + g*0.7151522 + b*0.0721750, [INFO] [stderr] | ^^^^^^^^^ help: consider: `0.212_672_9` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:75:28 [INFO] [stderr] | [INFO] [stderr] 75 | y: r*0.2126729 + g*0.7151522 + b*0.0721750, [INFO] [stderr] | ^^^^^^^^^ help: consider: `0.715_152_2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:75:42 [INFO] [stderr] | [INFO] [stderr] 75 | y: r*0.2126729 + g*0.7151522 + b*0.0721750, [INFO] [stderr] | ^^^^^^^^^ help: consider: `0.072_175_0` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:76:14 [INFO] [stderr] | [INFO] [stderr] 76 | z: r*0.0193339 + g*0.1191920 + b*0.9503041, [INFO] [stderr] | ^^^^^^^^^ help: consider: `0.019_333_9` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:76:28 [INFO] [stderr] | [INFO] [stderr] 76 | z: r*0.0193339 + g*0.1191920 + b*0.9503041, [INFO] [stderr] | ^^^^^^^^^ help: consider: `0.119_192_0` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:76:42 [INFO] [stderr] | [INFO] [stderr] 76 | z: r*0.0193339 + g*0.1191920 + b*0.9503041, [INFO] [stderr] | ^^^^^^^^^ help: consider: `0.950_304_1` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:87:19 [INFO] [stderr] | [INFO] [stderr] 87 | let epsilon = 0.008856; [INFO] [stderr] | ^^^^^^^^ help: consider: `0.008_856` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:91:34 [INFO] [stderr] | [INFO] [stderr] 91 | let xyz_white = XYZColor{x : 0.950456, y: 1.0, z: 1.088754}; [INFO] [stderr] | ^^^^^^^^ help: consider: `0.950_456` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:91:55 [INFO] [stderr] | [INFO] [stderr] 91 | let xyz_white = XYZColor{x : 0.950456, y: 1.0, z: 1.088754}; [INFO] [stderr] | ^^^^^^^^ help: consider: `1.088_754` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:230:25 [INFO] [stderr] | [INFO] [stderr] 230 | let invwt = 1.0 / ((step as f64/compactness)*(step as f64/compactness)); [INFO] [stderr] | ^^^^^^^^^^^ help: try: `f64::from(step)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:230:51 [INFO] [stderr] | [INFO] [stderr] 230 | let invwt = 1.0 / ((step as f64/compactness)*(step as f64/compactness)); [INFO] [stderr] | ^^^^^^^^^^^ help: try: `f64::from(step)` [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: unneeded return statement [INFO] [stderr] --> src/lib.rs:550:5 [INFO] [stderr] | [INFO] [stderr] 550 | return *numlabels; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `*numlabels` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/lib.rs:566:5 [INFO] [stderr] | [INFO] [stderr] 566 | / return do_segmentation_with_superpixel_size( [INFO] [stderr] 567 | | img, lab_vec, width, height, klabels, &mut numlabels, superpixel_size as u32, compactness, iterations); [INFO] [stderr] | |_______________________________________________________________________________________________________________^ [INFO] [stderr] warning: the loop variable `n` is used to index `seeds_vec` [INFO] [stderr] --> src/lib.rs:241:18 [INFO] [stderr] | [INFO] [stderr] 241 | for n in 0..numk [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_range_loop)] on by default [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: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: consider using an iterator [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 566 | do_segmentation_with_superpixel_size( [INFO] [stderr] 567 | img, lab_vec, width, height, klabels, &mut numlabels, superpixel_size as u32, compactness, iterations) [INFO] [stderr] | [INFO] [stderr] | [INFO] [stderr] 241 | for (n, ) in seeds_vec.iter().enumerate().take(numk) [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] warning: `ref` on an entire `let` pattern is discouraged, take a reference with `&` instead [INFO] [stderr] --> src/lib.rs:243:17 [INFO] [stderr] | [INFO] [stderr] 243 | let ref s = seeds_vec[n]; [INFO] [stderr] | ----^^^^^---------------- help: try: `let s = &seeds_vec[n];` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::toplevel_ref_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:588:26 [INFO] [stderr] | [INFO] [stderr] 588 | almost_eq(xyz.x, 0.7714801); [INFO] [stderr] | ^^^^^^^^^ help: consider: `0.771_480_1` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:589:26 [INFO] [stderr] | [INFO] [stderr] 589 | almost_eq(xyz.y, 0.9284041); [INFO] [stderr] | ^^^^^^^^^ help: consider: `0.928_404_1` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:590:26 [INFO] [stderr] | [INFO] [stderr] 590 | almost_eq(xyz.z, 0.1461503); [INFO] [stderr] | ^^^^^^^^^ help: consider: `0.146_150_3` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:600:26 [INFO] [stderr] | [INFO] [stderr] 600 | almost_eq(lab.l, 97.1627998); [INFO] [stderr] | ^^^^^^^^^^ help: consider: `97.162_799_8` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:601:27 [INFO] [stderr] | [INFO] [stderr] 601 | almost_eq(lab.a, -21.3609707); [INFO] [stderr] | ^^^^^^^^^^ help: consider: `21.360_970_7` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:602:26 [INFO] [stderr] | [INFO] [stderr] 602 | almost_eq(lab.b, 92.7035375); [INFO] [stderr] | ^^^^^^^^^^ help: consider: `92.703_537_5` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: `ref` on an entire `let` pattern is discouraged, take a reference with `&` instead [INFO] [stderr] --> src/lib.rs:265:29 [INFO] [stderr] | [INFO] [stderr] 265 | let ref c = s.lab; [INFO] [stderr] | ----^^^^^--------- help: try: `let c = &s.lab;` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:271:39 [INFO] [stderr] | [INFO] [stderr] 271 | dist_xyz = ((x as f64 - s.x)*(x as f64 - s.x) + [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(x)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:271:56 [INFO] [stderr] | [INFO] [stderr] 271 | dist_xyz = ((x as f64 - s.x)*(x as f64 - s.x) + [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(x)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:272:42 [INFO] [stderr] | [INFO] [stderr] 272 | (y as f64 - s.y)*(y as f64 - s.y) + [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:272:59 [INFO] [stderr] | [INFO] [stderr] 272 | (y as f64 - s.y)*(y as f64 - s.y) + [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:273:42 [INFO] [stderr] | [INFO] [stderr] 273 | (z as f64 - s.z)*(z as f64 - s.z)) as f64; [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(z)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:273:59 [INFO] [stderr] | [INFO] [stderr] 273 | (z as f64 - s.z)*(z as f64 - s.z)) as f64; [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(z)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:307:35 [INFO] [stderr] | [INFO] [stderr] 307 | sigma_x[l] += c as f64; [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(c)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:308:35 [INFO] [stderr] | [INFO] [stderr] 308 | sigma_y[l] += r as f64; [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(r)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:309:35 [INFO] [stderr] | [INFO] [stderr] 309 | sigma_z[l] += d as f64; [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(d)` [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 argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/lib.rs:344:11 [INFO] [stderr] | [INFO] [stderr] 344 | step: &usize [INFO] [stderr] | ^^^^^^ help: consider passing by value instead: `usize` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/lib.rs:438:14 [INFO] [stderr] | [INFO] [stderr] 438 | klabels: &Vec, [INFO] [stderr] | ^^^^^^^^^ help: change this to: `&[i32]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/lib.rs:440:20 [INFO] [stderr] | [INFO] [stderr] 440 | outline_color: &image::Rgb [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: consider passing by value instead: `image::Rgb` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this let-binding has unit value. Consider omitting `let _ =` [INFO] [stderr] --> src/lib.rs:458:5 [INFO] [stderr] | [INFO] [stderr] 458 | let _ = mean_img.save(&Path::new(out_fn)).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::let_unit_value)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_unit_value [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/lib.rs:464:14 [INFO] [stderr] | [INFO] [stderr] 464 | klabels: &Vec, [INFO] [stderr] | ^^^^^^^^^ help: change this to: `&[i32]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/lib.rs:466:20 [INFO] [stderr] | [INFO] [stderr] 466 | outline_color: &image::Rgb [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: consider passing by value instead: `image::Rgb` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] error: this `if` has identical blocks [INFO] [stderr] --> src/lib.rs:494:75 [INFO] [stderr] | [INFO] [stderr] 494 | } else if klabels[left_idx as usize] != klabels[idx as usize] { [INFO] [stderr] | ___________________________________________________________________________^ [INFO] [stderr] 495 | | contour.put_pixel(x, y, *outline_color); [INFO] [stderr] 496 | | } else { [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::if_same_then_else)] on by default [INFO] [stderr] note: same as this [INFO] [stderr] --> src/lib.rs:492:66 [INFO] [stderr] | [INFO] [stderr] 492 | if klabels[up_idx as usize] != klabels[idx as usize] { [INFO] [stderr] | __________________________________________________________________^ [INFO] [stderr] 493 | | contour.put_pixel(x, y, *outline_color); [INFO] [stderr] 494 | | } else if klabels[left_idx as usize] != klabels[idx as usize] { [INFO] [stderr] | |_____________^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stderr] [INFO] [stderr] warning: this let-binding has unit value. Consider omitting `let _ =` [INFO] [stderr] --> src/lib.rs:504:5 [INFO] [stderr] | [INFO] [stderr] 504 | let _ = contour.save(&Path::new(out_fn)).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_unit_value [INFO] [stderr] [INFO] [stderr] warning: this function has too many arguments (9/7) [INFO] [stderr] --> src/lib.rs:507:1 [INFO] [stderr] | [INFO] [stderr] 507 | / pub fn do_segmentation_with_superpixel_size( [INFO] [stderr] 508 | | img: & image::RgbImage, [INFO] [stderr] 509 | | lab_vec: &mut Vec, [INFO] [stderr] 510 | | width: u32, [INFO] [stderr] ... | [INFO] [stderr] 550 | | return *numlabels; [INFO] [stderr] 551 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::too_many_arguments)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:520:22 [INFO] [stderr] | [INFO] [stderr] 520 | let step: u32 = ((superpixel_size as f64).sqrt()+0.5) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(superpixel_size)` [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: it looks like you're manually copying between slices [INFO] [stderr] --> src/lib.rs:545:14 [INFO] [stderr] | [INFO] [stderr] 545 | for x in 0usize..(sz as usize) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try replacing the loop by: `klabels[0usize..(sz as usize)].clone_from_slice(&new_labels[0usize..(sz as usize)])` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::manual_memcpy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_memcpy [INFO] [stderr] [INFO] [stderr] warning: this function has too many arguments (8/7) [INFO] [stderr] --> src/lib.rs:553:1 [INFO] [stderr] | [INFO] [stderr] 553 | / pub fn do_segmentation_with_num_superpixels( [INFO] [stderr] 554 | | img: & image::RgbImage, [INFO] [stderr] 555 | | lab_vec: &mut Vec, [INFO] [stderr] 556 | | width: u32, [INFO] [stderr] ... | [INFO] [stderr] 567 | | img, lab_vec, width, height, klabels, &mut numlabels, superpixel_size as u32, compactness, iterations); [INFO] [stderr] 568 | | } [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: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:565:39 [INFO] [stderr] | [INFO] [stderr] 565 | let superpixel_size : f64 = 0.5 + (width*height) as f64 / num_superpixels as f64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(width*height)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:565:63 [INFO] [stderr] | [INFO] [stderr] 565 | let superpixel_size : f64 = 0.5 + (width*height) as f64 / num_superpixels as f64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(num_superpixels)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] error: Could not compile `superpixel`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: unused variable: `idx` [INFO] [stderr] --> src/lib.rs:451:17 [INFO] [stderr] | [INFO] [stderr] 451 | let idx = y * width + x; [INFO] [stderr] | ^^^ help: consider using `_idx` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `klabels` [INFO] [stderr] --> src/lib.rs:438:5 [INFO] [stderr] | [INFO] [stderr] 438 | klabels: &Vec, [INFO] [stderr] | ^^^^^^^ help: consider using `_klabels` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `outline_color` [INFO] [stderr] --> src/lib.rs:440:5 [INFO] [stderr] | [INFO] [stderr] 440 | outline_color: &image::Rgb [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider using `_outline_color` instead [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:65:23 [INFO] [stderr] | [INFO] [stderr] 65 | let mut r : f64 = (sr as f64) / 255.0; [INFO] [stderr] | ^^^^^^^^^^^ help: try: `f64::from(sr)` [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 u8 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:66:23 [INFO] [stderr] | [INFO] [stderr] 66 | let mut g : f64 = (sg as f64) / 255.0; [INFO] [stderr] | ^^^^^^^^^^^ help: try: `f64::from(sg)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:67:23 [INFO] [stderr] | [INFO] [stderr] 67 | let mut b : f64 = (sb as f64) / 255.0; [INFO] [stderr] | ^^^^^^^^^^^ help: try: `f64::from(sb)` [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: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/lib.rs:141:14 [INFO] [stderr] | [INFO] [stderr] 141 | lab_vec: & Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: change this to: `&[LABColor]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:145:13 [INFO] [stderr] | [INFO] [stderr] 145 | let s = step as f64; [INFO] [stderr] | ^^^^^^^^^^^ help: try: `f64::from(step)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:147:30 [INFO] [stderr] | [INFO] [stderr] 147 | let mut xstrips = (0.5 + (width as f64)/s) as i32; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f64::from(width)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:148:30 [INFO] [stderr] | [INFO] [stderr] 148 | let mut ystrips = (0.5 + (height as f64)/s) as i32; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(height)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:162:24 [INFO] [stderr] | [INFO] [stderr] 162 | let xerrperstrip = (xerr as f64)/(xstrips as f64); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(xerr)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:162:38 [INFO] [stderr] | [INFO] [stderr] 162 | let xerrperstrip = (xerr as f64)/(xstrips as f64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(xstrips)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:163:24 [INFO] [stderr] | [INFO] [stderr] 163 | let yerrperstrip = (yerr as f64)/(ystrips as f64); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(yerr)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:163:38 [INFO] [stderr] | [INFO] [stderr] 163 | let yerrperstrip = (yerr as f64)/(ystrips as f64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(ystrips)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:178:19 [INFO] [stderr] | [INFO] [stderr] 178 | let ye = ((y as f64) * yerrperstrip) as i32; [INFO] [stderr] | ^^^^^^^^^^ help: try: `f64::from(y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:182:23 [INFO] [stderr] | [INFO] [stderr] 182 | let xe = ((x as f64) * xerrperstrip) as i32; [INFO] [stderr] | ^^^^^^^^^^ help: try: `f64::from(x)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:188:20 [INFO] [stderr] | [INFO] [stderr] 188 | x: (x*step+xoff+xe) as f64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(x*step+xoff+xe)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:189:20 [INFO] [stderr] | [INFO] [stderr] 189 | y: (y*step+yoff+ye) as f64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(y*step+yoff+ye)` [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: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/lib.rs:199:14 [INFO] [stderr] | [INFO] [stderr] 199 | lab_vec: & Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: change this to: `&[LABColor]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:230:25 [INFO] [stderr] | [INFO] [stderr] 230 | let invwt = 1.0 / ((step as f64/compactness)*(step as f64/compactness)); [INFO] [stderr] | ^^^^^^^^^^^ help: try: `f64::from(step)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:230:51 [INFO] [stderr] | [INFO] [stderr] 230 | let invwt = 1.0 / ((step as f64/compactness)*(step as f64/compactness)); [INFO] [stderr] | ^^^^^^^^^^^ help: try: `f64::from(step)` [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: the loop variable `n` is used to index `seeds_vec` [INFO] [stderr] --> src/lib.rs:241:18 [INFO] [stderr] | [INFO] [stderr] 241 | for n in 0..numk [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] 241 | for (n, ) in seeds_vec.iter().enumerate().take(numk) [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `ref` on an entire `let` pattern is discouraged, take a reference with `&` instead [INFO] [stderr] --> src/lib.rs:243:17 [INFO] [stderr] | [INFO] [stderr] 243 | let ref s = seeds_vec[n]; [INFO] [stderr] | ----^^^^^---------------- help: try: `let s = &seeds_vec[n];` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::toplevel_ref_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stderr] [INFO] [stderr] warning: `ref` on an entire `let` pattern is discouraged, take a reference with `&` instead [INFO] [stderr] --> src/lib.rs:265:29 [INFO] [stderr] | [INFO] [stderr] 265 | let ref c = s.lab; [INFO] [stderr] | ----^^^^^--------- help: try: `let c = &s.lab;` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:271:39 [INFO] [stderr] | [INFO] [stderr] 271 | dist_xyz = ((x as f64 - s.x)*(x as f64 - s.x) + [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(x)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:271:56 [INFO] [stderr] | [INFO] [stderr] 271 | dist_xyz = ((x as f64 - s.x)*(x as f64 - s.x) + [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(x)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:272:42 [INFO] [stderr] | [INFO] [stderr] 272 | (y as f64 - s.y)*(y as f64 - s.y) + [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:272:59 [INFO] [stderr] | [INFO] [stderr] 272 | (y as f64 - s.y)*(y as f64 - s.y) + [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:273:42 [INFO] [stderr] | [INFO] [stderr] 273 | (z as f64 - s.z)*(z as f64 - s.z)) as f64; [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(z)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:273:59 [INFO] [stderr] | [INFO] [stderr] 273 | (z as f64 - s.z)*(z as f64 - s.z)) as f64; [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(z)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:307:35 [INFO] [stderr] | [INFO] [stderr] 307 | sigma_x[l] += c as f64; [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(c)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:308:35 [INFO] [stderr] | [INFO] [stderr] 308 | sigma_y[l] += r as f64; [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(r)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:309:35 [INFO] [stderr] | [INFO] [stderr] 309 | sigma_z[l] += d as f64; [INFO] [stderr] | ^^^^^^^^ help: try: `f64::from(d)` [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 argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/lib.rs:344:11 [INFO] [stderr] | [INFO] [stderr] 344 | step: &usize [INFO] [stderr] | ^^^^^^ help: consider passing by value instead: `usize` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/lib.rs:438:14 [INFO] [stderr] | [INFO] [stderr] 438 | klabels: &Vec, [INFO] [stderr] | ^^^^^^^^^ help: change this to: `&[i32]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/lib.rs:440:20 [INFO] [stderr] | [INFO] [stderr] 440 | outline_color: &image::Rgb [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: consider passing by value instead: `image::Rgb` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this let-binding has unit value. Consider omitting `let _ =` [INFO] [stderr] --> src/lib.rs:458:5 [INFO] [stderr] | [INFO] [stderr] 458 | let _ = mean_img.save(&Path::new(out_fn)).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::let_unit_value)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_unit_value [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/lib.rs:464:14 [INFO] [stderr] | [INFO] [stderr] 464 | klabels: &Vec, [INFO] [stderr] | ^^^^^^^^^ help: change this to: `&[i32]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/lib.rs:466:20 [INFO] [stderr] | [INFO] [stderr] 466 | outline_color: &image::Rgb [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: consider passing by value instead: `image::Rgb` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] error: this `if` has identical blocks [INFO] [stderr] --> src/lib.rs:494:75 [INFO] [stderr] | [INFO] [stderr] 494 | } else if klabels[left_idx as usize] != klabels[idx as usize] { [INFO] [stderr] | ___________________________________________________________________________^ [INFO] [stderr] 495 | | contour.put_pixel(x, y, *outline_color); [INFO] [stderr] 496 | | } else { [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::if_same_then_else)] on by default [INFO] [stderr] note: same as this [INFO] [stderr] --> src/lib.rs:492:66 [INFO] [stderr] | [INFO] [stderr] 492 | if klabels[up_idx as usize] != klabels[idx as usize] { [INFO] [stderr] | __________________________________________________________________^ [INFO] [stderr] 493 | | contour.put_pixel(x, y, *outline_color); [INFO] [stderr] 494 | | } else if klabels[left_idx as usize] != klabels[idx as usize] { [INFO] [stderr] | |_____________^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stderr] [INFO] [stderr] warning: this let-binding has unit value. Consider omitting `let _ =` [INFO] [stderr] --> src/lib.rs:504:5 [INFO] [stderr] | [INFO] [stderr] 504 | let _ = contour.save(&Path::new(out_fn)).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_unit_value [INFO] [stderr] [INFO] [stderr] warning: this function has too many arguments (9/7) [INFO] [stderr] --> src/lib.rs:507:1 [INFO] [stderr] | [INFO] [stderr] 507 | / pub fn do_segmentation_with_superpixel_size( [INFO] [stderr] 508 | | img: & image::RgbImage, [INFO] [stderr] 509 | | lab_vec: &mut Vec, [INFO] [stderr] 510 | | width: u32, [INFO] [stderr] ... | [INFO] [stderr] 550 | | return *numlabels; [INFO] [stderr] 551 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::too_many_arguments)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:520:22 [INFO] [stderr] | [INFO] [stderr] 520 | let step: u32 = ((superpixel_size as f64).sqrt()+0.5) as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(superpixel_size)` [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: it looks like you're manually copying between slices [INFO] [stderr] --> src/lib.rs:545:14 [INFO] [stderr] | [INFO] [stderr] 545 | for x in 0usize..(sz as usize) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try replacing the loop by: `klabels[0usize..(sz as usize)].clone_from_slice(&new_labels[0usize..(sz as usize)])` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::manual_memcpy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_memcpy [INFO] [stderr] [INFO] [stderr] warning: this function has too many arguments (8/7) [INFO] [stderr] --> src/lib.rs:553:1 [INFO] [stderr] | [INFO] [stderr] 553 | / pub fn do_segmentation_with_num_superpixels( [INFO] [stderr] 554 | | img: & image::RgbImage, [INFO] [stderr] 555 | | lab_vec: &mut Vec, [INFO] [stderr] 556 | | width: u32, [INFO] [stderr] ... | [INFO] [stderr] 567 | | img, lab_vec, width, height, klabels, &mut numlabels, superpixel_size as u32, compactness, iterations); [INFO] [stderr] 568 | | } [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: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:565:39 [INFO] [stderr] | [INFO] [stderr] 565 | let superpixel_size : f64 = 0.5 + (width*height) as f64 / num_superpixels as f64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(width*height)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:565:63 [INFO] [stderr] | [INFO] [stderr] 565 | let superpixel_size : f64 = 0.5 + (width*height) as f64 / num_superpixels as f64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(num_superpixels)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] error: Could not compile `superpixel`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "b2bb38afef8fe0cc358cb12254d9b35550c3cdbc3d880729fa6fba64a8e4c35a"` [INFO] running `"docker" "rm" "-f" "b2bb38afef8fe0cc358cb12254d9b35550c3cdbc3d880729fa6fba64a8e4c35a"` [INFO] [stdout] b2bb38afef8fe0cc358cb12254d9b35550c3cdbc3d880729fa6fba64a8e4c35a