[INFO] crate color_processing 0.1.2 is already in cache [INFO] extracting crate color_processing 0.1.2 into work/ex/clippy-test-run/sources/stable/reg/color_processing/0.1.2 [INFO] extracting crate color_processing 0.1.2 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/color_processing/0.1.2 [INFO] validating manifest of color_processing-0.1.2 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 color_processing-0.1.2 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 color_processing-0.1.2 [INFO] finished frobbing color_processing-0.1.2 [INFO] frobbed toml for color_processing-0.1.2 written to work/ex/clippy-test-run/sources/stable/reg/color_processing/0.1.2/Cargo.toml [INFO] started frobbing color_processing-0.1.2 [INFO] finished frobbing color_processing-0.1.2 [INFO] frobbed toml for color_processing-0.1.2 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/color_processing/0.1.2/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 color_processing-0.1.2 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-1/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/color_processing/0.1.2:/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] a39fad199e0972a588a999d321e910d357c39e8f5b7bff94d51600812cf190dd [INFO] running `"docker" "start" "-a" "a39fad199e0972a588a999d321e910d357c39e8f5b7bff94d51600812cf190dd"` [INFO] [stderr] Checking color_processing v0.1.2 (/opt/crater/workdir) [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/lib.rs:825:11 [INFO] [stderr] | [INFO] [stderr] 825 | let mut s = 0.0; [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:826:7 [INFO] [stderr] | [INFO] [stderr] 826 | let l = (c_max + c_min) / 2.0; [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:962:7 [INFO] [stderr] | [INFO] [stderr] 962 | let i = if r == white { [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/lib.rs:970:11 [INFO] [stderr] | [INFO] [stderr] 970 | let mut h = (i - f / (value - white)) * 60.0; [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:1092:13 [INFO] [stderr] | [INFO] [stderr] 1092 | let r = (255.0 * (1.0 - c) * (1.0 - k)).round() as u8; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/lib.rs:1093:13 [INFO] [stderr] | [INFO] [stderr] 1093 | let g = (255.0 * (1.0 - m) * (1.0 - k)).round() as u8; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 7th binding whose name is just one char [INFO] [stderr] --> src/lib.rs:1094:13 [INFO] [stderr] | [INFO] [stderr] 1094 | let b = (255.0 * (1.0 - y) * (1.0 - k)).round() as u8; [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:1115:7 [INFO] [stderr] | [INFO] [stderr] 1115 | let x = c * (1.0 - ((h / 60.0) % 2.0 - 1.0).abs()); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/lib.rs:1116:7 [INFO] [stderr] | [INFO] [stderr] 1116 | let m = l - c / 2.0; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 7th binding whose name is just one char [INFO] [stderr] --> src/lib.rs:1141:7 [INFO] [stderr] | [INFO] [stderr] 1141 | let r = ((r1 + m) * 255.0).round() as u8; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 8th binding whose name is just one char [INFO] [stderr] --> src/lib.rs:1142:7 [INFO] [stderr] | [INFO] [stderr] 1142 | let g = ((g1 + m) * 255.0).round() as u8; [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: 9th binding whose name is just one char [INFO] [stderr] --> src/lib.rs:1143:7 [INFO] [stderr] | [INFO] [stderr] 1143 | let b = ((b1 + m) * 255.0).round() as u8; [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:1164:7 [INFO] [stderr] | [INFO] [stderr] 1164 | let x = c * (1.0 - ((h / 60.0) % 2.0 - 1.0).abs()); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/lib.rs:1165:7 [INFO] [stderr] | [INFO] [stderr] 1165 | let m = v - c; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 7th binding whose name is just one char [INFO] [stderr] --> src/lib.rs:1190:7 [INFO] [stderr] | [INFO] [stderr] 1190 | let r = ((r1 + m) * 255.0).round() as u8; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 8th binding whose name is just one char [INFO] [stderr] --> src/lib.rs:1191:7 [INFO] [stderr] | [INFO] [stderr] 1191 | let g = ((g1 + m) * 255.0).round() as u8; [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: 9th binding whose name is just one char [INFO] [stderr] --> src/lib.rs:1192:7 [INFO] [stderr] | [INFO] [stderr] 1192 | let b = ((b1 + m) * 255.0).round() as u8; [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:1199:13 [INFO] [stderr] | [INFO] [stderr] 1199 | let s = 1.0 - (w / v); [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:825:11 [INFO] [stderr] | [INFO] [stderr] 825 | let mut s = 0.0; [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:826:7 [INFO] [stderr] | [INFO] [stderr] 826 | let l = (c_max + c_min) / 2.0; [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:962:7 [INFO] [stderr] | [INFO] [stderr] 962 | let i = if r == white { [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/lib.rs:970:11 [INFO] [stderr] | [INFO] [stderr] 970 | let mut h = (i - f / (value - white)) * 60.0; [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:1092:13 [INFO] [stderr] | [INFO] [stderr] 1092 | let r = (255.0 * (1.0 - c) * (1.0 - k)).round() as u8; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/lib.rs:1093:13 [INFO] [stderr] | [INFO] [stderr] 1093 | let g = (255.0 * (1.0 - m) * (1.0 - k)).round() as u8; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 7th binding whose name is just one char [INFO] [stderr] --> src/lib.rs:1094:13 [INFO] [stderr] | [INFO] [stderr] 1094 | let b = (255.0 * (1.0 - y) * (1.0 - k)).round() as u8; [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:1115:7 [INFO] [stderr] | [INFO] [stderr] 1115 | let x = c * (1.0 - ((h / 60.0) % 2.0 - 1.0).abs()); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/lib.rs:1116:7 [INFO] [stderr] | [INFO] [stderr] 1116 | let m = l - c / 2.0; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 7th binding whose name is just one char [INFO] [stderr] --> src/lib.rs:1141:7 [INFO] [stderr] | [INFO] [stderr] 1141 | let r = ((r1 + m) * 255.0).round() as u8; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 8th binding whose name is just one char [INFO] [stderr] --> src/lib.rs:1142:7 [INFO] [stderr] | [INFO] [stderr] 1142 | let g = ((g1 + m) * 255.0).round() as u8; [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: 9th binding whose name is just one char [INFO] [stderr] --> src/lib.rs:1143:7 [INFO] [stderr] | [INFO] [stderr] 1143 | let b = ((b1 + m) * 255.0).round() as u8; [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:1164:7 [INFO] [stderr] | [INFO] [stderr] 1164 | let x = c * (1.0 - ((h / 60.0) % 2.0 - 1.0).abs()); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/lib.rs:1165:7 [INFO] [stderr] | [INFO] [stderr] 1165 | let m = v - c; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 7th binding whose name is just one char [INFO] [stderr] --> src/lib.rs:1190:7 [INFO] [stderr] | [INFO] [stderr] 1190 | let r = ((r1 + m) * 255.0).round() as u8; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 8th binding whose name is just one char [INFO] [stderr] --> src/lib.rs:1191:7 [INFO] [stderr] | [INFO] [stderr] 1191 | let g = ((g1 + m) * 255.0).round() as u8; [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: 9th binding whose name is just one char [INFO] [stderr] --> src/lib.rs:1192:7 [INFO] [stderr] | [INFO] [stderr] 1192 | let b = ((b1 + m) * 255.0).round() as u8; [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:1199:13 [INFO] [stderr] | [INFO] [stderr] 1199 | let s = 1.0 - (w / v); [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: long literal lacking separators [INFO] [stderr] --> src/lib.rs:1038:14 [INFO] [stderr] | [INFO] [stderr] 1038 | x = if x > 0.008856 { [INFO] [stderr] | ^^^^^^^^ help: consider: `0.008_856` [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:1043:14 [INFO] [stderr] | [INFO] [stderr] 1043 | y = if y > 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:1048:14 [INFO] [stderr] | [INFO] [stderr] 1048 | z = if z > 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: this if statement can be collapsed [INFO] [stderr] --> src/lib.rs:1745:17 [INFO] [stderr] | [INFO] [stderr] 1745 | / if is_in_percentage_mode { [INFO] [stderr] 1746 | | if &cap[8] != "%" || &cap[12] != "%" { [INFO] [stderr] 1747 | | return None; [INFO] [stderr] 1748 | | } [INFO] [stderr] 1749 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 1745 | if is_in_percentage_mode && (&cap[8] != "%" || &cap[12] != "%") { [INFO] [stderr] 1746 | return None; [INFO] [stderr] 1747 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `Color` [INFO] [stderr] --> src/lib.rs:89:2 [INFO] [stderr] | [INFO] [stderr] 89 | pub fn new() -> Color { [INFO] [stderr] | _____^ [INFO] [stderr] 90 | | Color { [INFO] [stderr] 91 | | red: 0, [INFO] [stderr] 92 | | green: 0, [INFO] [stderr] ... | [INFO] [stderr] 95 | | } [INFO] [stderr] 96 | | } [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] 68 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:766:11 [INFO] [stderr] | [INFO] [stderr] 766 | let r = self.red as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(self.red)` [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:767:11 [INFO] [stderr] | [INFO] [stderr] 767 | let g = self.green as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.green)` [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:768:11 [INFO] [stderr] | [INFO] [stderr] 768 | let b = self.blue as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(self.blue)` [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:804:11 [INFO] [stderr] | [INFO] [stderr] 804 | let r = self.red as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(self.red)` [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:805:11 [INFO] [stderr] | [INFO] [stderr] 805 | let g = self.green as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.green)` [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:806:11 [INFO] [stderr] | [INFO] [stderr] 806 | let b = self.blue as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(self.blue)` [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: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:828:7 [INFO] [stderr] | [INFO] [stderr] 828 | if c_max == r { [INFO] [stderr] | ^^^^^^^^^^ help: consider comparing them within some error: `(c_max - r).abs() < error` [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::float_cmp)] on by default [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:828:7 [INFO] [stderr] | [INFO] [stderr] 828 | if c_max == r { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:830:14 [INFO] [stderr] | [INFO] [stderr] 830 | } else if c_max == g { [INFO] [stderr] | ^^^^^^^^^^ help: consider comparing them within some error: `(c_max - g).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:830:14 [INFO] [stderr] | [INFO] [stderr] 830 | } else if c_max == g { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:832:14 [INFO] [stderr] | [INFO] [stderr] 832 | } else if c_max == b { [INFO] [stderr] | ^^^^^^^^^^ help: consider comparing them within some error: `(c_max - b).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:832:14 [INFO] [stderr] | [INFO] [stderr] 832 | } else if c_max == b { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:839:22 [INFO] [stderr] | [INFO] [stderr] 839 | let alpha = (self.alpha as f64 / 255.0 * 100.0).round() / 100.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.alpha)` [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:866:13 [INFO] [stderr] | [INFO] [stderr] 866 | let red = self.red as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(self.red)` [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:867:15 [INFO] [stderr] | [INFO] [stderr] 867 | let green = self.green as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.green)` [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:868:14 [INFO] [stderr] | [INFO] [stderr] 868 | let blue = self.blue as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(self.blue)` [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:870:22 [INFO] [stderr] | [INFO] [stderr] 870 | let alpha = (self.alpha as f64 / 255.0 * 100.0).round() / 100.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.alpha)` [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: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:898:18 [INFO] [stderr] | [INFO] [stderr] 898 | let mut h = if red == max { [INFO] [stderr] | ^^^^^^^^^^ help: consider comparing them within some error: `(red - max).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:898:18 [INFO] [stderr] | [INFO] [stderr] 898 | let mut h = if red == max { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:900:13 [INFO] [stderr] | [INFO] [stderr] 900 | } else if green == max { [INFO] [stderr] | ^^^^^^^^^^^^ help: consider comparing them within some error: `(green - max).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:900:13 [INFO] [stderr] | [INFO] [stderr] 900 | } else if green == max { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: doomed comparison with NAN, use `std::{f32,f64}::is_nan()` instead [INFO] [stderr] --> src/lib.rs:910:6 [INFO] [stderr] | [INFO] [stderr] 910 | if h == std::f64::NAN { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::cmp_nan)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_nan [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:936:11 [INFO] [stderr] | [INFO] [stderr] 936 | let r = self.red as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(self.red)` [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:937:11 [INFO] [stderr] | [INFO] [stderr] 937 | let g = self.green as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.green)` [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:938:11 [INFO] [stderr] | [INFO] [stderr] 938 | let b = self.blue as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(self.blue)` [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: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:955:14 [INFO] [stderr] | [INFO] [stderr] 955 | let f = if r == white { [INFO] [stderr] | ^^^^^^^^^^ help: consider comparing them within some error: `(r - white).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:955:14 [INFO] [stderr] | [INFO] [stderr] 955 | let f = if r == white { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:957:13 [INFO] [stderr] | [INFO] [stderr] 957 | } else if g == white { [INFO] [stderr] | ^^^^^^^^^^ help: consider comparing them within some error: `(g - white).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:957:13 [INFO] [stderr] | [INFO] [stderr] 957 | } else if g == white { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:962:14 [INFO] [stderr] | [INFO] [stderr] 962 | let i = if r == white { [INFO] [stderr] | ^^^^^^^^^^ help: consider comparing them within some error: `(r - white).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:962:14 [INFO] [stderr] | [INFO] [stderr] 962 | let i = if r == white { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:964:13 [INFO] [stderr] | [INFO] [stderr] 964 | } else if g == white { [INFO] [stderr] | ^^^^^^^^^^ help: consider comparing them within some error: `(g - white).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:964:13 [INFO] [stderr] | [INFO] [stderr] 964 | } else if g == white { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:971:6 [INFO] [stderr] | [INFO] [stderr] 971 | if h == 360.0 { [INFO] [stderr] | ^^^^^^^^^^ help: consider comparing them within some error: `(h - 360.0).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:971:6 [INFO] [stderr] | [INFO] [stderr] 971 | if h == 360.0 { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:976:22 [INFO] [stderr] | [INFO] [stderr] 976 | let alpha = (self.alpha as f64 / 255.0 * 100.0).round() / 100.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.alpha)` [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:1000:22 [INFO] [stderr] | [INFO] [stderr] 1000 | let alpha = (self.alpha as f64 / 255.0 * 100.0).round() / 100.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.alpha)` [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:1002:4 [INFO] [stderr] | [INFO] [stderr] 1002 | (self.red as f64 / 255.0, self.green as f64 / 255.0, self.blue as f64 / 255.0, alpha) [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(self.red)` [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:1002:29 [INFO] [stderr] | [INFO] [stderr] 1002 | (self.red as f64 / 255.0, self.green as f64 / 255.0, self.blue as f64 / 255.0, alpha) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.green)` [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:1002:56 [INFO] [stderr] | [INFO] [stderr] 1002 | (self.red as f64 / 255.0, self.green as f64 / 255.0, self.blue as f64 / 255.0, alpha) [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(self.blue)` [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:1006:17 [INFO] [stderr] | [INFO] [stderr] 1006 | let mut red = self.red as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(self.red)` [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:1007:19 [INFO] [stderr] | [INFO] [stderr] 1007 | let mut green = self.green as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.green)` [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:1008:18 [INFO] [stderr] | [INFO] [stderr] 1008 | let mut blue = self.blue as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(self.blue)` [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: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:1121:32 [INFO] [stderr] | [INFO] [stderr] 1121 | if (h >= 0.0 && h < 60.0) || h == 360.0 { [INFO] [stderr] | ^^^^^^^^^^ help: consider comparing them within some error: `(h - 360.0).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:1121:32 [INFO] [stderr] | [INFO] [stderr] 1121 | if (h >= 0.0 && h < 60.0) || h == 360.0 { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:1170:32 [INFO] [stderr] | [INFO] [stderr] 1170 | if (h >= 0.0 && h < 60.0) || h == 360.0 { [INFO] [stderr] | ^^^^^^^^^^ help: consider comparing them within some error: `(h - 360.0).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:1170:32 [INFO] [stderr] | [INFO] [stderr] 1170 | if (h >= 0.0 && h < 60.0) || h == 360.0 { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:1207:12 [INFO] [stderr] | [INFO] [stderr] 1207 | alpha: (self.alpha as u16 * color.alpha as u16 / 255) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u16::from(self.alpha)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:1207:32 [INFO] [stderr] | [INFO] [stderr] 1207 | alpha: (self.alpha as u16 * color.alpha as u16 / 255) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `u16::from(color.alpha)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:1208:10 [INFO] [stderr] | [INFO] [stderr] 1208 | red: (self.red as u16 * color.red as u16 / 255) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u16::from(self.red)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:1208:28 [INFO] [stderr] | [INFO] [stderr] 1208 | red: (self.red as u16 * color.red as u16 / 255) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `u16::from(color.red)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:1209:12 [INFO] [stderr] | [INFO] [stderr] 1209 | green: (self.green as u16 * color.green as u16 / 255) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u16::from(self.green)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:1209:32 [INFO] [stderr] | [INFO] [stderr] 1209 | green: (self.green as u16 * color.green as u16 / 255) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `u16::from(color.green)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:1210:11 [INFO] [stderr] | [INFO] [stderr] 1210 | blue: (self.blue as u16 * color.blue as u16 / 255) as u8 [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `u16::from(self.blue)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:1210:30 [INFO] [stderr] | [INFO] [stderr] 1210 | blue: (self.blue as u16 * color.blue as u16 / 255) as u8 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u16::from(color.blue)` [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:1239:21 [INFO] [stderr] | [INFO] [stderr] 1239 | let gray_value = (self.red as f64 * 0.299 + self.green as f64 * 0.587 + self.blue as f64 * 0.114).round() as u8; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(self.red)` [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:1239:47 [INFO] [stderr] | [INFO] [stderr] 1239 | let gray_value = (self.red as f64 * 0.299 + self.green as f64 * 0.587 + self.blue as f64 * 0.114).round() as u8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.green)` [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:1239:75 [INFO] [stderr] | [INFO] [stderr] 1239 | let gray_value = (self.red as f64 * 0.299 + self.green as f64 * 0.587 + self.blue as f64 * 0.114).round() as u8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(self.blue)` [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:1266:21 [INFO] [stderr] | [INFO] [stderr] 1266 | let gray_value = (self.red as f64 * 0.2126 + self.green as f64 * 0.7152 + self.blue as f64 * 0.0722).round() as u8; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(self.red)` [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:1266:48 [INFO] [stderr] | [INFO] [stderr] 1266 | let gray_value = (self.red as f64 * 0.2126 + self.green as f64 * 0.7152 + self.blue as f64 * 0.0722).round() as u8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.green)` [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:1266:77 [INFO] [stderr] | [INFO] [stderr] 1266 | let gray_value = (self.red as f64 * 0.2126 + self.green as f64 * 0.7152 + self.blue as f64 * 0.0722).round() as u8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(self.blue)` [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:1293:21 [INFO] [stderr] | [INFO] [stderr] 1293 | let gray_value = (self.red as f64 * 0.2627 + self.green as f64 * 0.678 + self.blue as f64 * 0.0593).round() as u8; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(self.red)` [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:1293:48 [INFO] [stderr] | [INFO] [stderr] 1293 | let gray_value = (self.red as f64 * 0.2627 + self.green as f64 * 0.678 + self.blue as f64 * 0.0593).round() as u8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.green)` [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:1293:76 [INFO] [stderr] | [INFO] [stderr] 1293 | let gray_value = (self.red as f64 * 0.2627 + self.green as f64 * 0.678 + self.blue as f64 * 0.0593).round() as u8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(self.blue)` [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: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:1442:6 [INFO] [stderr] | [INFO] [stderr] 1442 | if hsva.3 != 1.0 { [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider comparing them within some error: `(hsva.3 - 1.0).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:1442:6 [INFO] [stderr] | [INFO] [stderr] 1442 | if hsva.3 != 1.0 { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:1447:6 [INFO] [stderr] | [INFO] [stderr] 1447 | if hsva.3 != 1.0 { [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider comparing them within some error: `(hsva.3 - 1.0).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:1447:6 [INFO] [stderr] | [INFO] [stderr] 1447 | if hsva.3 != 1.0 { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:1505:34 [INFO] [stderr] | [INFO] [stderr] 1505 | rgb.push_str(format!(", {}", ((self.alpha as f64) / 255.0 * 100.0).round() / 100.0).as_str()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.alpha)` [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:1522:10 [INFO] [stderr] | [INFO] [stderr] 1522 | red: (self.red as f64 + (color.red - self.red) as f64 * i).round() as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(self.red)` [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:1522:28 [INFO] [stderr] | [INFO] [stderr] 1522 | red: (self.red as f64 + (color.red - self.red) as f64 * i).round() as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(color.red - self.red)` [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:1523:12 [INFO] [stderr] | [INFO] [stderr] 1523 | green: (self.green as f64 + (color.green - self.green) as f64 * i).round() as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.green)` [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:1523:32 [INFO] [stderr] | [INFO] [stderr] 1523 | green: (self.green as f64 + (color.green - self.green) as f64 * i).round() as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(color.green - self.green)` [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:1524:11 [INFO] [stderr] | [INFO] [stderr] 1524 | blue: (self.blue as f64 + (color.blue - self.blue) as f64 * i).round() as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(self.blue)` [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:1524:30 [INFO] [stderr] | [INFO] [stderr] 1524 | blue: (self.blue as f64 + (color.blue - self.blue) as f64 * i).round() as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(color.blue - self.blue)` [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:1525:21 [INFO] [stderr] | [INFO] [stderr] 1525 | alpha: (self.alpha as f64 + (color.alpha - self.alpha) as f64 * i).round() as u8 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.alpha)` [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:1525:41 [INFO] [stderr] | [INFO] [stderr] 1525 | alpha: (self.alpha as f64 + (color.alpha - self.alpha) as f64 * i).round() as u8 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(color.alpha - self.alpha)` [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 if-then-else expression returns a bool literal [INFO] [stderr] --> src/lib.rs:1564:21 [INFO] [stderr] | [INFO] [stderr] 1564 | let has_alpha = if cap[1].len() == 4 || cap[1].len() == 8 { [INFO] [stderr] | _________________________________^ [INFO] [stderr] 1565 | | true [INFO] [stderr] 1566 | | } else { [INFO] [stderr] 1567 | | false [INFO] [stderr] 1568 | | }; [INFO] [stderr] | |_________________^ help: you can reduce it to: `cap[1].len() == 4 || cap[1].len() == 8` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] [INFO] [stderr] warning: this if-then-else expression returns a bool literal [INFO] [stderr] --> src/lib.rs:1569:37 [INFO] [stderr] | [INFO] [stderr] 1569 | let expand_values = if cap[1].len() == 3 || cap[1].len() == 4 { [INFO] [stderr] | _____________________________________^ [INFO] [stderr] 1570 | | true [INFO] [stderr] 1571 | | } else { [INFO] [stderr] 1572 | | false [INFO] [stderr] 1573 | | }; [INFO] [stderr] | |_________________^ help: you can reduce it to: `cap[1].len() == 3 || cap[1].len() == 4` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 32 [INFO] [stderr] --> src/lib.rs:1617:5 [INFO] [stderr] | [INFO] [stderr] 1617 | / fn try_parse_css_function(string: &str) -> Option { [INFO] [stderr] 1618 | | lazy_static! { [INFO] [stderr] 1619 | | // cap[1] -> css-function [INFO] [stderr] 1620 | | // cap[2] -> 1. value [INFO] [stderr] ... | [INFO] [stderr] 1883 | | } [INFO] [stderr] 1884 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cyclomatic_complexity)] on by default [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] warning: this block may be rewritten with the `?` operator [INFO] [stderr] --> src/lib.rs:1638:9 [INFO] [stderr] | [INFO] [stderr] 1638 | / if caps.is_none() { [INFO] [stderr] 1639 | | return None; [INFO] [stderr] 1640 | | } [INFO] [stderr] | |_________^ help: replace_it_with: `caps?;` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::question_mark)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/lib.rs:1673:54 [INFO] [stderr] | [INFO] [stderr] 1673 | let value_2_opt = if cap.get(6).is_some() && cap[6].len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!cap[6].is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/lib.rs:1679:55 [INFO] [stderr] | [INFO] [stderr] 1679 | let value_3_opt = if cap.get(10).is_some() && cap[10].len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!cap[10].is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/lib.rs:1685:55 [INFO] [stderr] | [INFO] [stderr] 1685 | let value_4_opt = if cap.get(14).is_some() && cap[14].len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!cap[14].is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: this if-then-else expression returns a bool literal [INFO] [stderr] --> src/lib.rs:1740:45 [INFO] [stderr] | [INFO] [stderr] 1740 | let is_in_percentage_mode = if cap.get(4).is_some() && &cap[4] == "%" { [INFO] [stderr] | _____________________________________________^ [INFO] [stderr] 1741 | | true [INFO] [stderr] 1742 | | } else { [INFO] [stderr] 1743 | | false [INFO] [stderr] 1744 | | }; [INFO] [stderr] | |_________________^ help: you can reduce it to: `cap.get(4).is_some() && &cap[4] == "%"` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] [INFO] [stderr] warning: this block may be rewritten with the `?` operator [INFO] [stderr] --> src/lib.rs:1761:17 [INFO] [stderr] | [INFO] [stderr] 1761 | / if alpha_opt.is_none() { [INFO] [stderr] 1762 | | return None; [INFO] [stderr] 1763 | | } [INFO] [stderr] | |_________________^ help: replace_it_with: `alpha_opt?;` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stderr] [INFO] [stderr] warning: this block may be rewritten with the `?` operator [INFO] [stderr] --> src/lib.rs:1807:17 [INFO] [stderr] | [INFO] [stderr] 1807 | / if alpha_opt.is_none() { [INFO] [stderr] 1808 | | return None; [INFO] [stderr] 1809 | | } [INFO] [stderr] | |_________________^ help: replace_it_with: `alpha_opt?;` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stderr] [INFO] [stderr] warning: this block may be rewritten with the `?` operator [INFO] [stderr] --> src/lib.rs:1826:17 [INFO] [stderr] | [INFO] [stderr] 1826 | / if alpha_opt.is_none() { [INFO] [stderr] 1827 | | return None; [INFO] [stderr] 1828 | | } [INFO] [stderr] | |_________________^ help: replace_it_with: `alpha_opt?;` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stderr] [INFO] [stderr] warning: this block may be rewritten with the `?` operator [INFO] [stderr] --> src/lib.rs:1845:17 [INFO] [stderr] | [INFO] [stderr] 1845 | / if alpha_opt.is_none() { [INFO] [stderr] 1846 | | return None; [INFO] [stderr] 1847 | | } [INFO] [stderr] | |_________________^ help: replace_it_with: `alpha_opt?;` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stderr] [INFO] [stderr] warning: this if-then-else expression returns a bool literal [INFO] [stderr] --> src/lib.rs:1854:45 [INFO] [stderr] | [INFO] [stderr] 1854 | let is_in_percentage_mode = if cap.get(4).is_some() && &cap[4] == "%" { [INFO] [stderr] | _____________________________________________^ [INFO] [stderr] 1855 | | true [INFO] [stderr] 1856 | | } else { [INFO] [stderr] 1857 | | false [INFO] [stderr] 1858 | | }; [INFO] [stderr] | |_________________^ help: you can reduce it to: `cap.get(4).is_some() && &cap[4] == "%"` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] [INFO] [stderr] warning: this if-then-else expression returns a bool literal [INFO] [stderr] --> src/lib.rs:1859:51 [INFO] [stderr] | [INFO] [stderr] 1859 | let alpha_is_in_percentage_mode = if cap.get(8).is_some() && &cap[8] == "%" { [INFO] [stderr] | ___________________________________________________^ [INFO] [stderr] 1860 | | true [INFO] [stderr] 1861 | | } else { [INFO] [stderr] 1862 | | false [INFO] [stderr] 1863 | | }; [INFO] [stderr] | |_________________^ help: you can reduce it to: `cap.get(8).is_some() && &cap[8] == "%"` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] [INFO] [stderr] error: aborting due to 15 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `color_processing`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/lib.rs:1038:14 [INFO] [stderr] | [INFO] [stderr] 1038 | x = if x > 0.008856 { [INFO] [stderr] | ^^^^^^^^ help: consider: `0.008_856` [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:1043:14 [INFO] [stderr] | [INFO] [stderr] 1043 | y = if y > 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:1048:14 [INFO] [stderr] | [INFO] [stderr] 1048 | z = if z > 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: this if statement can be collapsed [INFO] [stderr] --> src/lib.rs:1745:17 [INFO] [stderr] | [INFO] [stderr] 1745 | / if is_in_percentage_mode { [INFO] [stderr] 1746 | | if &cap[8] != "%" || &cap[12] != "%" { [INFO] [stderr] 1747 | | return None; [INFO] [stderr] 1748 | | } [INFO] [stderr] 1749 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 1745 | if is_in_percentage_mode && (&cap[8] != "%" || &cap[12] != "%") { [INFO] [stderr] 1746 | return None; [INFO] [stderr] 1747 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `Color` [INFO] [stderr] --> src/lib.rs:89:2 [INFO] [stderr] | [INFO] [stderr] 89 | pub fn new() -> Color { [INFO] [stderr] | _____^ [INFO] [stderr] 90 | | Color { [INFO] [stderr] 91 | | red: 0, [INFO] [stderr] 92 | | green: 0, [INFO] [stderr] ... | [INFO] [stderr] 95 | | } [INFO] [stderr] 96 | | } [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] 68 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:766:11 [INFO] [stderr] | [INFO] [stderr] 766 | let r = self.red as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(self.red)` [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:767:11 [INFO] [stderr] | [INFO] [stderr] 767 | let g = self.green as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.green)` [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:768:11 [INFO] [stderr] | [INFO] [stderr] 768 | let b = self.blue as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(self.blue)` [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:804:11 [INFO] [stderr] | [INFO] [stderr] 804 | let r = self.red as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(self.red)` [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:805:11 [INFO] [stderr] | [INFO] [stderr] 805 | let g = self.green as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.green)` [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:806:11 [INFO] [stderr] | [INFO] [stderr] 806 | let b = self.blue as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(self.blue)` [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: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:828:7 [INFO] [stderr] | [INFO] [stderr] 828 | if c_max == r { [INFO] [stderr] | ^^^^^^^^^^ help: consider comparing them within some error: `(c_max - r).abs() < error` [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::float_cmp)] on by default [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:828:7 [INFO] [stderr] | [INFO] [stderr] 828 | if c_max == r { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:830:14 [INFO] [stderr] | [INFO] [stderr] 830 | } else if c_max == g { [INFO] [stderr] | ^^^^^^^^^^ help: consider comparing them within some error: `(c_max - g).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:830:14 [INFO] [stderr] | [INFO] [stderr] 830 | } else if c_max == g { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:832:14 [INFO] [stderr] | [INFO] [stderr] 832 | } else if c_max == b { [INFO] [stderr] | ^^^^^^^^^^ help: consider comparing them within some error: `(c_max - b).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:832:14 [INFO] [stderr] | [INFO] [stderr] 832 | } else if c_max == b { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:839:22 [INFO] [stderr] | [INFO] [stderr] 839 | let alpha = (self.alpha as f64 / 255.0 * 100.0).round() / 100.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.alpha)` [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:866:13 [INFO] [stderr] | [INFO] [stderr] 866 | let red = self.red as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(self.red)` [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:867:15 [INFO] [stderr] | [INFO] [stderr] 867 | let green = self.green as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.green)` [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:868:14 [INFO] [stderr] | [INFO] [stderr] 868 | let blue = self.blue as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(self.blue)` [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:870:22 [INFO] [stderr] | [INFO] [stderr] 870 | let alpha = (self.alpha as f64 / 255.0 * 100.0).round() / 100.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.alpha)` [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: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:898:18 [INFO] [stderr] | [INFO] [stderr] 898 | let mut h = if red == max { [INFO] [stderr] | ^^^^^^^^^^ help: consider comparing them within some error: `(red - max).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:898:18 [INFO] [stderr] | [INFO] [stderr] 898 | let mut h = if red == max { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:900:13 [INFO] [stderr] | [INFO] [stderr] 900 | } else if green == max { [INFO] [stderr] | ^^^^^^^^^^^^ help: consider comparing them within some error: `(green - max).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:900:13 [INFO] [stderr] | [INFO] [stderr] 900 | } else if green == max { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: doomed comparison with NAN, use `std::{f32,f64}::is_nan()` instead [INFO] [stderr] --> src/lib.rs:910:6 [INFO] [stderr] | [INFO] [stderr] 910 | if h == std::f64::NAN { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::cmp_nan)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_nan [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:936:11 [INFO] [stderr] | [INFO] [stderr] 936 | let r = self.red as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(self.red)` [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:937:11 [INFO] [stderr] | [INFO] [stderr] 937 | let g = self.green as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.green)` [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:938:11 [INFO] [stderr] | [INFO] [stderr] 938 | let b = self.blue as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(self.blue)` [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: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:955:14 [INFO] [stderr] | [INFO] [stderr] 955 | let f = if r == white { [INFO] [stderr] | ^^^^^^^^^^ help: consider comparing them within some error: `(r - white).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:955:14 [INFO] [stderr] | [INFO] [stderr] 955 | let f = if r == white { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:957:13 [INFO] [stderr] | [INFO] [stderr] 957 | } else if g == white { [INFO] [stderr] | ^^^^^^^^^^ help: consider comparing them within some error: `(g - white).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:957:13 [INFO] [stderr] | [INFO] [stderr] 957 | } else if g == white { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:962:14 [INFO] [stderr] | [INFO] [stderr] 962 | let i = if r == white { [INFO] [stderr] | ^^^^^^^^^^ help: consider comparing them within some error: `(r - white).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:962:14 [INFO] [stderr] | [INFO] [stderr] 962 | let i = if r == white { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:964:13 [INFO] [stderr] | [INFO] [stderr] 964 | } else if g == white { [INFO] [stderr] | ^^^^^^^^^^ help: consider comparing them within some error: `(g - white).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:964:13 [INFO] [stderr] | [INFO] [stderr] 964 | } else if g == white { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:971:6 [INFO] [stderr] | [INFO] [stderr] 971 | if h == 360.0 { [INFO] [stderr] | ^^^^^^^^^^ help: consider comparing them within some error: `(h - 360.0).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:971:6 [INFO] [stderr] | [INFO] [stderr] 971 | if h == 360.0 { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:976:22 [INFO] [stderr] | [INFO] [stderr] 976 | let alpha = (self.alpha as f64 / 255.0 * 100.0).round() / 100.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.alpha)` [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:1000:22 [INFO] [stderr] | [INFO] [stderr] 1000 | let alpha = (self.alpha as f64 / 255.0 * 100.0).round() / 100.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.alpha)` [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:1002:4 [INFO] [stderr] | [INFO] [stderr] 1002 | (self.red as f64 / 255.0, self.green as f64 / 255.0, self.blue as f64 / 255.0, alpha) [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(self.red)` [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:1002:29 [INFO] [stderr] | [INFO] [stderr] 1002 | (self.red as f64 / 255.0, self.green as f64 / 255.0, self.blue as f64 / 255.0, alpha) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.green)` [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:1002:56 [INFO] [stderr] | [INFO] [stderr] 1002 | (self.red as f64 / 255.0, self.green as f64 / 255.0, self.blue as f64 / 255.0, alpha) [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(self.blue)` [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:1006:17 [INFO] [stderr] | [INFO] [stderr] 1006 | let mut red = self.red as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(self.red)` [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:1007:19 [INFO] [stderr] | [INFO] [stderr] 1007 | let mut green = self.green as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.green)` [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:1008:18 [INFO] [stderr] | [INFO] [stderr] 1008 | let mut blue = self.blue as f64 / 255.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(self.blue)` [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: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:1121:32 [INFO] [stderr] | [INFO] [stderr] 1121 | if (h >= 0.0 && h < 60.0) || h == 360.0 { [INFO] [stderr] | ^^^^^^^^^^ help: consider comparing them within some error: `(h - 360.0).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:1121:32 [INFO] [stderr] | [INFO] [stderr] 1121 | if (h >= 0.0 && h < 60.0) || h == 360.0 { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:1170:32 [INFO] [stderr] | [INFO] [stderr] 1170 | if (h >= 0.0 && h < 60.0) || h == 360.0 { [INFO] [stderr] | ^^^^^^^^^^ help: consider comparing them within some error: `(h - 360.0).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:1170:32 [INFO] [stderr] | [INFO] [stderr] 1170 | if (h >= 0.0 && h < 60.0) || h == 360.0 { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u16 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:1207:12 [INFO] [stderr] | [INFO] [stderr] 1207 | alpha: (self.alpha as u16 * color.alpha as u16 / 255) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u16::from(self.alpha)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:1207:32 [INFO] [stderr] | [INFO] [stderr] 1207 | alpha: (self.alpha as u16 * color.alpha as u16 / 255) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `u16::from(color.alpha)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:1208:10 [INFO] [stderr] | [INFO] [stderr] 1208 | red: (self.red as u16 * color.red as u16 / 255) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u16::from(self.red)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:1208:28 [INFO] [stderr] | [INFO] [stderr] 1208 | red: (self.red as u16 * color.red as u16 / 255) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `u16::from(color.red)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:1209:12 [INFO] [stderr] | [INFO] [stderr] 1209 | green: (self.green as u16 * color.green as u16 / 255) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u16::from(self.green)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:1209:32 [INFO] [stderr] | [INFO] [stderr] 1209 | green: (self.green as u16 * color.green as u16 / 255) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `u16::from(color.green)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:1210:11 [INFO] [stderr] | [INFO] [stderr] 1210 | blue: (self.blue as u16 * color.blue as u16 / 255) as u8 [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `u16::from(self.blue)` [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 u16 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:1210:30 [INFO] [stderr] | [INFO] [stderr] 1210 | blue: (self.blue as u16 * color.blue as u16 / 255) as u8 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u16::from(color.blue)` [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:1239:21 [INFO] [stderr] | [INFO] [stderr] 1239 | let gray_value = (self.red as f64 * 0.299 + self.green as f64 * 0.587 + self.blue as f64 * 0.114).round() as u8; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(self.red)` [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:1239:47 [INFO] [stderr] | [INFO] [stderr] 1239 | let gray_value = (self.red as f64 * 0.299 + self.green as f64 * 0.587 + self.blue as f64 * 0.114).round() as u8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.green)` [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:1239:75 [INFO] [stderr] | [INFO] [stderr] 1239 | let gray_value = (self.red as f64 * 0.299 + self.green as f64 * 0.587 + self.blue as f64 * 0.114).round() as u8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(self.blue)` [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:1266:21 [INFO] [stderr] | [INFO] [stderr] 1266 | let gray_value = (self.red as f64 * 0.2126 + self.green as f64 * 0.7152 + self.blue as f64 * 0.0722).round() as u8; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(self.red)` [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:1266:48 [INFO] [stderr] | [INFO] [stderr] 1266 | let gray_value = (self.red as f64 * 0.2126 + self.green as f64 * 0.7152 + self.blue as f64 * 0.0722).round() as u8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.green)` [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:1266:77 [INFO] [stderr] | [INFO] [stderr] 1266 | let gray_value = (self.red as f64 * 0.2126 + self.green as f64 * 0.7152 + self.blue as f64 * 0.0722).round() as u8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(self.blue)` [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:1293:21 [INFO] [stderr] | [INFO] [stderr] 1293 | let gray_value = (self.red as f64 * 0.2627 + self.green as f64 * 0.678 + self.blue as f64 * 0.0593).round() as u8; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(self.red)` [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:1293:48 [INFO] [stderr] | [INFO] [stderr] 1293 | let gray_value = (self.red as f64 * 0.2627 + self.green as f64 * 0.678 + self.blue as f64 * 0.0593).round() as u8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.green)` [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:1293:76 [INFO] [stderr] | [INFO] [stderr] 1293 | let gray_value = (self.red as f64 * 0.2627 + self.green as f64 * 0.678 + self.blue as f64 * 0.0593).round() as u8; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(self.blue)` [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: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:1442:6 [INFO] [stderr] | [INFO] [stderr] 1442 | if hsva.3 != 1.0 { [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider comparing them within some error: `(hsva.3 - 1.0).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:1442:6 [INFO] [stderr] | [INFO] [stderr] 1442 | if hsva.3 != 1.0 { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/lib.rs:1447:6 [INFO] [stderr] | [INFO] [stderr] 1447 | if hsva.3 != 1.0 { [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider comparing them within some error: `(hsva.3 - 1.0).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/lib.rs:1447:6 [INFO] [stderr] | [INFO] [stderr] 1447 | if hsva.3 != 1.0 { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f64 may become silently lossy if types change [INFO] [stderr] --> src/lib.rs:1505:34 [INFO] [stderr] | [INFO] [stderr] 1505 | rgb.push_str(format!(", {}", ((self.alpha as f64) / 255.0 * 100.0).round() / 100.0).as_str()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.alpha)` [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:1522:10 [INFO] [stderr] | [INFO] [stderr] 1522 | red: (self.red as f64 + (color.red - self.red) as f64 * i).round() as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(self.red)` [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:1522:28 [INFO] [stderr] | [INFO] [stderr] 1522 | red: (self.red as f64 + (color.red - self.red) as f64 * i).round() as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(color.red - self.red)` [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:1523:12 [INFO] [stderr] | [INFO] [stderr] 1523 | green: (self.green as f64 + (color.green - self.green) as f64 * i).round() as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.green)` [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:1523:32 [INFO] [stderr] | [INFO] [stderr] 1523 | green: (self.green as f64 + (color.green - self.green) as f64 * i).round() as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(color.green - self.green)` [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:1524:11 [INFO] [stderr] | [INFO] [stderr] 1524 | blue: (self.blue as f64 + (color.blue - self.blue) as f64 * i).round() as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(self.blue)` [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:1524:30 [INFO] [stderr] | [INFO] [stderr] 1524 | blue: (self.blue as f64 + (color.blue - self.blue) as f64 * i).round() as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(color.blue - self.blue)` [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:1525:21 [INFO] [stderr] | [INFO] [stderr] 1525 | alpha: (self.alpha as f64 + (color.alpha - self.alpha) as f64 * i).round() as u8 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `f64::from(self.alpha)` [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:1525:41 [INFO] [stderr] | [INFO] [stderr] 1525 | alpha: (self.alpha as f64 + (color.alpha - self.alpha) as f64 * i).round() as u8 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(color.alpha - self.alpha)` [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 if-then-else expression returns a bool literal [INFO] [stderr] --> src/lib.rs:1564:21 [INFO] [stderr] | [INFO] [stderr] 1564 | let has_alpha = if cap[1].len() == 4 || cap[1].len() == 8 { [INFO] [stderr] | _________________________________^ [INFO] [stderr] 1565 | | true [INFO] [stderr] 1566 | | } else { [INFO] [stderr] 1567 | | false [INFO] [stderr] 1568 | | }; [INFO] [stderr] | |_________________^ help: you can reduce it to: `cap[1].len() == 4 || cap[1].len() == 8` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] [INFO] [stderr] warning: this if-then-else expression returns a bool literal [INFO] [stderr] --> src/lib.rs:1569:37 [INFO] [stderr] | [INFO] [stderr] 1569 | let expand_values = if cap[1].len() == 3 || cap[1].len() == 4 { [INFO] [stderr] | _____________________________________^ [INFO] [stderr] 1570 | | true [INFO] [stderr] 1571 | | } else { [INFO] [stderr] 1572 | | false [INFO] [stderr] 1573 | | }; [INFO] [stderr] | |_________________^ help: you can reduce it to: `cap[1].len() == 3 || cap[1].len() == 4` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 32 [INFO] [stderr] --> src/lib.rs:1617:5 [INFO] [stderr] | [INFO] [stderr] 1617 | / fn try_parse_css_function(string: &str) -> Option { [INFO] [stderr] 1618 | | lazy_static! { [INFO] [stderr] 1619 | | // cap[1] -> css-function [INFO] [stderr] 1620 | | // cap[2] -> 1. value [INFO] [stderr] ... | [INFO] [stderr] 1883 | | } [INFO] [stderr] 1884 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cyclomatic_complexity)] on by default [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] warning: this block may be rewritten with the `?` operator [INFO] [stderr] --> src/lib.rs:1638:9 [INFO] [stderr] | [INFO] [stderr] 1638 | / if caps.is_none() { [INFO] [stderr] 1639 | | return None; [INFO] [stderr] 1640 | | } [INFO] [stderr] | |_________^ help: replace_it_with: `caps?;` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::question_mark)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/lib.rs:1673:54 [INFO] [stderr] | [INFO] [stderr] 1673 | let value_2_opt = if cap.get(6).is_some() && cap[6].len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!cap[6].is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/lib.rs:1679:55 [INFO] [stderr] | [INFO] [stderr] 1679 | let value_3_opt = if cap.get(10).is_some() && cap[10].len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!cap[10].is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/lib.rs:1685:55 [INFO] [stderr] | [INFO] [stderr] 1685 | let value_4_opt = if cap.get(14).is_some() && cap[14].len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!cap[14].is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: this if-then-else expression returns a bool literal [INFO] [stderr] --> src/lib.rs:1740:45 [INFO] [stderr] | [INFO] [stderr] 1740 | let is_in_percentage_mode = if cap.get(4).is_some() && &cap[4] == "%" { [INFO] [stderr] | _____________________________________________^ [INFO] [stderr] 1741 | | true [INFO] [stderr] 1742 | | } else { [INFO] [stderr] 1743 | | false [INFO] [stderr] 1744 | | }; [INFO] [stderr] | |_________________^ help: you can reduce it to: `cap.get(4).is_some() && &cap[4] == "%"` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] [INFO] [stderr] warning: this block may be rewritten with the `?` operator [INFO] [stderr] --> src/lib.rs:1761:17 [INFO] [stderr] | [INFO] [stderr] 1761 | / if alpha_opt.is_none() { [INFO] [stderr] 1762 | | return None; [INFO] [stderr] 1763 | | } [INFO] [stderr] | |_________________^ help: replace_it_with: `alpha_opt?;` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stderr] [INFO] [stderr] warning: this block may be rewritten with the `?` operator [INFO] [stderr] --> src/lib.rs:1807:17 [INFO] [stderr] | [INFO] [stderr] 1807 | / if alpha_opt.is_none() { [INFO] [stderr] 1808 | | return None; [INFO] [stderr] 1809 | | } [INFO] [stderr] | |_________________^ help: replace_it_with: `alpha_opt?;` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stderr] [INFO] [stderr] warning: this block may be rewritten with the `?` operator [INFO] [stderr] --> src/lib.rs:1826:17 [INFO] [stderr] | [INFO] [stderr] 1826 | / if alpha_opt.is_none() { [INFO] [stderr] 1827 | | return None; [INFO] [stderr] 1828 | | } [INFO] [stderr] | |_________________^ help: replace_it_with: `alpha_opt?;` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stderr] [INFO] [stderr] warning: this block may be rewritten with the `?` operator [INFO] [stderr] --> src/lib.rs:1845:17 [INFO] [stderr] | [INFO] [stderr] 1845 | / if alpha_opt.is_none() { [INFO] [stderr] 1846 | | return None; [INFO] [stderr] 1847 | | } [INFO] [stderr] | |_________________^ help: replace_it_with: `alpha_opt?;` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stderr] [INFO] [stderr] warning: this if-then-else expression returns a bool literal [INFO] [stderr] --> src/lib.rs:1854:45 [INFO] [stderr] | [INFO] [stderr] 1854 | let is_in_percentage_mode = if cap.get(4).is_some() && &cap[4] == "%" { [INFO] [stderr] | _____________________________________________^ [INFO] [stderr] 1855 | | true [INFO] [stderr] 1856 | | } else { [INFO] [stderr] 1857 | | false [INFO] [stderr] 1858 | | }; [INFO] [stderr] | |_________________^ help: you can reduce it to: `cap.get(4).is_some() && &cap[4] == "%"` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] [INFO] [stderr] warning: this if-then-else expression returns a bool literal [INFO] [stderr] --> src/lib.rs:1859:51 [INFO] [stderr] | [INFO] [stderr] 1859 | let alpha_is_in_percentage_mode = if cap.get(8).is_some() && &cap[8] == "%" { [INFO] [stderr] | ___________________________________________________^ [INFO] [stderr] 1860 | | true [INFO] [stderr] 1861 | | } else { [INFO] [stderr] 1862 | | false [INFO] [stderr] 1863 | | }; [INFO] [stderr] | |_________________^ help: you can reduce it to: `cap.get(8).is_some() && &cap[8] == "%"` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 33 [INFO] [stderr] --> src/lib.rs:2295:2 [INFO] [stderr] | [INFO] [stderr] 2295 | fn color_new_cmyk() { [INFO] [stderr] | _____^ [INFO] [stderr] 2296 | | let red = Color::new_cmyk(0.0, 1.0, 1.0, 0.0); [INFO] [stderr] 2297 | | assert_eq!(red.red, 255); [INFO] [stderr] 2298 | | assert_eq!(red.green, 0); [INFO] [stderr] ... | [INFO] [stderr] 2342 | | assert_eq!(alternative_black_clipped.alpha, 255); [INFO] [stderr] 2343 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 57 [INFO] [stderr] --> src/lib.rs:2379:5 [INFO] [stderr] | [INFO] [stderr] 2379 | / fn color_new_hsl() { [INFO] [stderr] 2380 | | let red = Color::new_hsl(0.0, 1.0, 0.5); [INFO] [stderr] 2381 | | assert_eq!(red.red, 255); [INFO] [stderr] 2382 | | assert_eq!(red.green, 0); [INFO] [stderr] ... | [INFO] [stderr] 2462 | | assert_eq!(white_clipped.alpha, 255); [INFO] [stderr] 2463 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 49 [INFO] [stderr] --> src/lib.rs:2499:5 [INFO] [stderr] | [INFO] [stderr] 2499 | / fn color_new_hsv() { [INFO] [stderr] 2500 | | let red = Color::new_hsv(0.0, 1.0, 1.0); [INFO] [stderr] 2501 | | assert_eq!(red.red, 255); [INFO] [stderr] 2502 | | assert_eq!(red.green, 0); [INFO] [stderr] ... | [INFO] [stderr] 2570 | | assert_eq!(blue_normalized.alpha, 255); [INFO] [stderr] 2571 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 53 [INFO] [stderr] --> src/lib.rs:2607:5 [INFO] [stderr] | [INFO] [stderr] 2607 | / fn color_new_hwb() { [INFO] [stderr] 2608 | | let red = Color::new_hwb(0.0, 0.0, 0.0); [INFO] [stderr] 2609 | | assert_eq!(red.red, 255); [INFO] [stderr] 2610 | | assert_eq!(red.green, 0); [INFO] [stderr] ... | [INFO] [stderr] 2684 | | assert_eq!(blue_normalized.alpha, 255); [INFO] [stderr] 2685 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 33 [INFO] [stderr] --> src/lib.rs:2721:5 [INFO] [stderr] | [INFO] [stderr] 2721 | / fn color_new_string_known_color() { [INFO] [stderr] 2722 | | let red = Color::new_string("red").unwrap(); [INFO] [stderr] 2723 | | assert_eq!(red.red, 255); [INFO] [stderr] 2724 | | assert_eq!(red.green, 0); [INFO] [stderr] ... | [INFO] [stderr] 2768 | | assert_eq!(white.alpha, 255); [INFO] [stderr] 2769 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 29 [INFO] [stderr] --> src/lib.rs:2772:5 [INFO] [stderr] | [INFO] [stderr] 2772 | / fn color_new_string_abbr_color() { [INFO] [stderr] 2773 | | let red = Color::new_string("RD").unwrap(); [INFO] [stderr] 2774 | | assert_eq!(red.red, 255); [INFO] [stderr] 2775 | | assert_eq!(red.green, 0); [INFO] [stderr] ... | [INFO] [stderr] 2813 | | assert_eq!(white.alpha, 255); [INFO] [stderr] 2814 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 33 [INFO] [stderr] --> src/lib.rs:2924:5 [INFO] [stderr] | [INFO] [stderr] 2924 | / fn color_new_string_cmyk() { [INFO] [stderr] 2925 | | let red_color = Color::new_string("cmyk(0%, 100%, 100%, 0%)").unwrap(); [INFO] [stderr] 2926 | | assert_eq!(red_color.red, 255); [INFO] [stderr] 2927 | | assert_eq!(red_color.green, 0); [INFO] [stderr] ... | [INFO] [stderr] 2971 | | assert_eq!(yellow_color.alpha, 255); [INFO] [stderr] 2972 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 33 [INFO] [stderr] --> src/lib.rs:2975:5 [INFO] [stderr] | [INFO] [stderr] 2975 | / fn color_new_string_hsl() { [INFO] [stderr] 2976 | | let red_color = Color::new_string("hsl(0, 100%, 50%)").unwrap(); [INFO] [stderr] 2977 | | assert_eq!(red_color.red, 255); [INFO] [stderr] 2978 | | assert_eq!(red_color.green, 0); [INFO] [stderr] ... | [INFO] [stderr] 3022 | | assert_eq!(yellow_color.alpha, 255); [INFO] [stderr] 3023 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] error: aborting due to 15 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `color_processing`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "a39fad199e0972a588a999d321e910d357c39e8f5b7bff94d51600812cf190dd"` [INFO] running `"docker" "rm" "-f" "a39fad199e0972a588a999d321e910d357c39e8f5b7bff94d51600812cf190dd"` [INFO] [stdout] a39fad199e0972a588a999d321e910d357c39e8f5b7bff94d51600812cf190dd