[INFO] crate raui 0.1.1 is already in cache [INFO] extracting crate raui 0.1.1 into work/ex/clippy-test-run/sources/stable/reg/raui/0.1.1 [INFO] extracting crate raui 0.1.1 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/raui/0.1.1 [INFO] validating manifest of raui-0.1.1 on toolchain stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of raui-0.1.1 on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing raui-0.1.1 [INFO] finished frobbing raui-0.1.1 [INFO] frobbed toml for raui-0.1.1 written to work/ex/clippy-test-run/sources/stable/reg/raui/0.1.1/Cargo.toml [INFO] started frobbing raui-0.1.1 [INFO] finished frobbing raui-0.1.1 [INFO] frobbed toml for raui-0.1.1 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/raui/0.1.1/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting raui-0.1.1 against stable+rustflags=-Dclippy::into_iter_on_array for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-4/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/raui/0.1.1:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dclippy::into_iter_on_array" "-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] 493876f3edd9fdbcbd60e1019f3d917b993c6e81b17e711af716e757224b69ee [INFO] running `"docker" "start" "-a" "493876f3edd9fdbcbd60e1019f3d917b993c6e81b17e711af716e757224b69ee"` [INFO] [stderr] Checking petgraph v0.4.13 [INFO] [stderr] Checking raui v0.1.1 (/opt/crater/workdir) [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/components/container.rs:215:9 [INFO] [stderr] | [INFO] [stderr] 215 | return area; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `area` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/data/rect.rs:34:9 [INFO] [stderr] | [INFO] [stderr] 34 | return x >= self.begin.x && x < self.end.x && y >= self.begin.y && y < self.end.y; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `x >= self.begin.x && x < self.end.x && y >= self.begin.y && y < self.end.y` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/data/color.rs:46:21 [INFO] [stderr] | [INFO] [stderr] 46 | ((hex & 0xFF000000) >> 24) as u8, [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0xFF00_0000` [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/data/color.rs:47:21 [INFO] [stderr] | [INFO] [stderr] 47 | ((hex & 0xFF0000) >> 16) as u8, [INFO] [stderr] | ^^^^^^^^ help: consider: `0x00FF_0000` [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/data/theme.rs:72:51 [INFO] [stderr] | [INFO] [stderr] 72 | pub fn deep_gray() -> Color { Color::from_hex(0x303030FF) } [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x3030_30FF` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/components/container.rs:215:9 [INFO] [stderr] | [INFO] [stderr] 215 | return area; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `area` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/data/rect.rs:34:9 [INFO] [stderr] | [INFO] [stderr] 34 | return x >= self.begin.x && x < self.end.x && y >= self.begin.y && y < self.end.y; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `x >= self.begin.x && x < self.end.x && y >= self.begin.y && y < self.end.y` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/data/color.rs:46:21 [INFO] [stderr] | [INFO] [stderr] 46 | ((hex & 0xFF000000) >> 24) as u8, [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0xFF00_0000` [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/data/color.rs:47:21 [INFO] [stderr] | [INFO] [stderr] 47 | ((hex & 0xFF0000) >> 16) as u8, [INFO] [stderr] | ^^^^^^^^ help: consider: `0x00FF_0000` [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/data/theme.rs:72:51 [INFO] [stderr] | [INFO] [stderr] 72 | pub fn deep_gray() -> Color { Color::from_hex(0x303030FF) } [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x3030_30FF` [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: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/components/container.rs:39:27 [INFO] [stderr] | [INFO] [stderr] 39 | const CS_LOCAL = 1 << 0; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::identity_op)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/components/container.rs:86:40 [INFO] [stderr] | [INFO] [stderr] 86 | pub fn set_color(&mut self, color: &Color) { [INFO] [stderr] | ^^^^^^ help: consider passing by value instead: `Color` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/components/image.rs:33:40 [INFO] [stderr] | [INFO] [stderr] 33 | pub fn set_color(&mut self, color: &Color) { [INFO] [stderr] | ^^^^^^ help: consider passing by value instead: `Color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/components/text.rs:37:40 [INFO] [stderr] | [INFO] [stderr] 37 | pub fn set_color(&mut self, color: &Color) { [INFO] [stderr] | ^^^^^^ help: consider passing by value instead: `Color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/data/rect.rs:23:24 [INFO] [stderr] | [INFO] [stderr] 23 | pub fn from(begin: &Vec2, end: &Vec2) -> Rect { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/data/rect.rs:23:36 [INFO] [stderr] | [INFO] [stderr] 23 | pub fn from(begin: &Vec2, end: &Vec2) -> Rect { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/data/rect.rs:30:35 [INFO] [stderr] | [INFO] [stderr] 30 | pub fn contains(&self, point: &Vec2) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/data/color.rs:53:17 [INFO] [stderr] | [INFO] [stderr] 53 | pub fn fade(&self, factor: f32) -> Color { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:57:14 [INFO] [stderr] | [INFO] [stderr] 57 | (self.r as f32 * factor) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.r)` [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 f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:58:14 [INFO] [stderr] | [INFO] [stderr] 58 | (self.g as f32 * factor) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.g)` [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 f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:59:14 [INFO] [stderr] | [INFO] [stderr] 59 | (self.b as f32 * factor) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:60:14 [INFO] [stderr] | [INFO] [stderr] 60 | (self.a as f32 * factor) as u8 [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.a)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/data/color.rs:64:21 [INFO] [stderr] | [INFO] [stderr] 64 | pub fn fade_rgb(&self, factor: f32) -> Color { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:68:14 [INFO] [stderr] | [INFO] [stderr] 68 | (self.r as f32 * factor) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.r)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:69:14 [INFO] [stderr] | [INFO] [stderr] 69 | (self.g as f32 * factor) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.g)` [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 f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:70:14 [INFO] [stderr] | [INFO] [stderr] 70 | (self.b as f32 * factor) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/data/color.rs:75:19 [INFO] [stderr] | [INFO] [stderr] 75 | pub fn fade_a(&self, factor: f32) -> Color { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:82:14 [INFO] [stderr] | [INFO] [stderr] 82 | (self.a as f32 * factor) as u8 [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.a)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:166:15 [INFO] [stderr] | [INFO] [stderr] 166 | ((self.r as f32 / 255.0) * (other.r as f32 / 255.0) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.r)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:166:41 [INFO] [stderr] | [INFO] [stderr] 166 | ((self.r as f32 / 255.0) * (other.r as f32 / 255.0) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.r)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:167:15 [INFO] [stderr] | [INFO] [stderr] 167 | ((self.g as f32 / 255.0) * (other.g as f32 / 255.0) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.g)` [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 f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:167:41 [INFO] [stderr] | [INFO] [stderr] 167 | ((self.g as f32 / 255.0) * (other.g as f32 / 255.0) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.g)` [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 f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:168:15 [INFO] [stderr] | [INFO] [stderr] 168 | ((self.b as f32 / 255.0) * (other.b as f32 / 255.0) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:168:41 [INFO] [stderr] | [INFO] [stderr] 168 | ((self.b as f32 / 255.0) * (other.b as f32 / 255.0) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:169:15 [INFO] [stderr] | [INFO] [stderr] 169 | ((self.a as f32 / 255.0) * (other.a as f32 / 255.0) * 255.0) as u8 [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.a)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:169:41 [INFO] [stderr] | [INFO] [stderr] 169 | ((self.a as f32 / 255.0) * (other.a as f32 / 255.0) * 255.0) as u8 [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.a)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:181:15 [INFO] [stderr] | [INFO] [stderr] 181 | ((self.r as f32 / 255.0) * other * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.r)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:182:15 [INFO] [stderr] | [INFO] [stderr] 182 | ((self.g as f32 / 255.0) * other * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.g)` [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 f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:183:15 [INFO] [stderr] | [INFO] [stderr] 183 | ((self.b as f32 / 255.0) * other * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:184:15 [INFO] [stderr] | [INFO] [stderr] 184 | ((self.a as f32 / 255.0) * other * 255.0) as u8 [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.a)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:196:22 [INFO] [stderr] | [INFO] [stderr] 196 | (self * (other.r as f32 / 255.0) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.r)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:197:22 [INFO] [stderr] | [INFO] [stderr] 197 | (self * (other.g as f32 / 255.0) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.g)` [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 f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:198:22 [INFO] [stderr] | [INFO] [stderr] 198 | (self * (other.b as f32 / 255.0) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:199:22 [INFO] [stderr] | [INFO] [stderr] 199 | (self * (other.a as f32 / 255.0) * 255.0) as u8 [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.a)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:211:16 [INFO] [stderr] | [INFO] [stderr] 211 | (((self.r as f32 / 255.0) / (other.r as f32 / 255.0)) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.r)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:211:42 [INFO] [stderr] | [INFO] [stderr] 211 | (((self.r as f32 / 255.0) / (other.r as f32 / 255.0)) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.r)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:212:16 [INFO] [stderr] | [INFO] [stderr] 212 | (((self.g as f32 / 255.0) / (other.g as f32 / 255.0)) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.g)` [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 f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:212:42 [INFO] [stderr] | [INFO] [stderr] 212 | (((self.g as f32 / 255.0) / (other.g as f32 / 255.0)) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.g)` [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 f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:213:16 [INFO] [stderr] | [INFO] [stderr] 213 | (((self.b as f32 / 255.0) / (other.b as f32 / 255.0)) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:213:42 [INFO] [stderr] | [INFO] [stderr] 213 | (((self.b as f32 / 255.0) / (other.b as f32 / 255.0)) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:214:16 [INFO] [stderr] | [INFO] [stderr] 214 | (((self.a as f32 / 255.0) / (other.a as f32 / 255.0)) * 255.0) as u8 [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.a)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:214:42 [INFO] [stderr] | [INFO] [stderr] 214 | (((self.a as f32 / 255.0) / (other.a as f32 / 255.0)) * 255.0) as u8 [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.a)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:226:16 [INFO] [stderr] | [INFO] [stderr] 226 | (((self.r as f32 / 255.0) / other) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.r)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:227:16 [INFO] [stderr] | [INFO] [stderr] 227 | (((self.g as f32 / 255.0) / other) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.g)` [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 f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:228:16 [INFO] [stderr] | [INFO] [stderr] 228 | (((self.b as f32 / 255.0) / other) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:229:16 [INFO] [stderr] | [INFO] [stderr] 229 | (((self.a as f32 / 255.0) / other) * 255.0) as u8 [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.a)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:241:23 [INFO] [stderr] | [INFO] [stderr] 241 | ((self / (other.r as f32 / 255.0)) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.r)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:242:23 [INFO] [stderr] | [INFO] [stderr] 242 | ((self / (other.g as f32 / 255.0)) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.g)` [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 f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:243:23 [INFO] [stderr] | [INFO] [stderr] 243 | ((self / (other.b as f32 / 255.0)) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:244:23 [INFO] [stderr] | [INFO] [stderr] 244 | ((self / (other.a as f32 / 255.0)) * 255.0) as u8 [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.a)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `data::render_state::RenderState` [INFO] [stderr] --> src/data/render_state.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | / pub fn new() -> RenderState { [INFO] [stderr] 11 | | RenderState { [INFO] [stderr] 12 | | client_rect: Rect::zero() [INFO] [stderr] 13 | | } [INFO] [stderr] 14 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 8 | impl Default for data::render_state::RenderState { [INFO] [stderr] 9 | fn default() -> Self { [INFO] [stderr] 10 | Self::new() [INFO] [stderr] 11 | } [INFO] [stderr] 12 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/data/behaviour_flags.rs:5:39 [INFO] [stderr] | [INFO] [stderr] 5 | const BF_READING_MOUSE = 1 << 0; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/data/behaviour_flags.rs:21:19 [INFO] [stderr] | [INFO] [stderr] 21 | pub fn to_val(&self) -> u8 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/data/key_modifiers.rs:5:27 [INFO] [stderr] | [INFO] [stderr] 5 | const KM_CTRL = 1 << 0; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/data/key_modifiers.rs:22:19 [INFO] [stderr] | [INFO] [stderr] 22 | pub fn to_val(&self) -> u8 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `data::theme::Theme` [INFO] [stderr] --> src/data/theme.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 23 | / pub fn new() -> Theme { [INFO] [stderr] 24 | | Theme { [INFO] [stderr] 25 | | image_source: "".to_string(), [INFO] [stderr] 26 | | font_source: "".to_string(), [INFO] [stderr] ... | [INFO] [stderr] 41 | | } [INFO] [stderr] 42 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 21 | impl Default for data::theme::Theme { [INFO] [stderr] 22 | fn default() -> Self { [INFO] [stderr] 23 | Self::new() [INFO] [stderr] 24 | } [INFO] [stderr] 25 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `data::render_batch::RenderBatch` [INFO] [stderr] --> src/data/render_batch.rs:34:5 [INFO] [stderr] | [INFO] [stderr] 34 | / pub fn new() -> RenderBatch { [INFO] [stderr] 35 | | RenderBatch { [INFO] [stderr] 36 | | writer: BufWriter::new(Vec::new()), [INFO] [stderr] 37 | | write_lock: false, [INFO] [stderr] 38 | | read_lock: false [INFO] [stderr] 39 | | } [INFO] [stderr] 40 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 20 | impl Default for data::render_batch::RenderBatch { [INFO] [stderr] 21 | fn default() -> Self { [INFO] [stderr] 22 | Self::new() [INFO] [stderr] 23 | } [INFO] [stderr] 24 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/data/render_batch.rs:73:9 [INFO] [stderr] | [INFO] [stderr] 73 | / match self.write_lock { [INFO] [stderr] 74 | | true => write_atom!(self, value, 1), [INFO] [stderr] 75 | | false => Err(Error::new(ErrorKind::Other, "Render batch is not write-locked!")) [INFO] [stderr] 76 | | } [INFO] [stderr] | |_________^ help: consider using an if/else expression: `if self.write_lock { write_atom!(self, value, 1) } else { Err(Error::new(ErrorKind::Other, "Render batch is not write-locked!")) }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/data/render_batch.rs:80:9 [INFO] [stderr] | [INFO] [stderr] 80 | / match self.write_lock { [INFO] [stderr] 81 | | true => write_atom!(self, value, 2), [INFO] [stderr] 82 | | false => Err(Error::new(ErrorKind::Other, "Render batch is not write-locked!")) [INFO] [stderr] 83 | | } [INFO] [stderr] | |_________^ help: consider using an if/else expression: `if self.write_lock { write_atom!(self, value, 2) } else { Err(Error::new(ErrorKind::Other, "Render batch is not write-locked!")) }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/data/render_batch.rs:118:40 [INFO] [stderr] | [INFO] [stderr] 118 | pub fn write_str(&mut self, value: &String) -> Result { [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/data/batch_reader.rs:36:23 [INFO] [stderr] | [INFO] [stderr] 36 | pub fn from(data: &Vec) -> BatchReader { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] error: this public function dereferences a raw pointer but is not marked `unsafe` [INFO] [stderr] --> src/data/batch_reader.rs:49:57 [INFO] [stderr] | [INFO] [stderr] 49 | BatchReader::new(unsafe { slice::from_raw_parts(buffer, size) }) [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::not_unsafe_ptr_arg_deref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#not_unsafe_ptr_arg_deref [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/renderables/text.rs:11:30 [INFO] [stderr] | [INFO] [stderr] 11 | const VA_TOP = 1 << 0; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/renderables/text.rs:30:30 [INFO] [stderr] | [INFO] [stderr] 30 | const HA_LEFT = 1 << 0; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/component.rs:46:45 [INFO] [stderr] | [INFO] [stderr] 46 | fn on_mouse_down(&mut self, screen_pos: &Vec2) {} [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/component.rs:48:43 [INFO] [stderr] | [INFO] [stderr] 48 | fn on_mouse_up(&mut self, screen_pos: &Vec2) {} [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/component.rs:50:45 [INFO] [stderr] | [INFO] [stderr] 50 | fn on_mouse_move(&mut self, screen_pos: &Vec2) {} [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/component.rs:53:59 [INFO] [stderr] | [INFO] [stderr] 53 | fn on_key_pressed(&mut self, code: u8, key_modifiers: &KeyModifiers) {} [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider passing by value instead: `KeyModifiers` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/component.rs:55:60 [INFO] [stderr] | [INFO] [stderr] 55 | fn on_key_released(&mut self, code: u8, key_modifiers: &KeyModifiers) {} [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider passing by value instead: `KeyModifiers` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `server::Server` [INFO] [stderr] --> src/server.rs:51:5 [INFO] [stderr] | [INFO] [stderr] 51 | / pub fn new() -> Server { [INFO] [stderr] 52 | | Server { [INFO] [stderr] 53 | | on_signal_event: None, [INFO] [stderr] 54 | | on_render_event: None, [INFO] [stderr] ... | [INFO] [stderr] 60 | | } [INFO] [stderr] 61 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 49 | impl Default for server::Server { [INFO] [stderr] 50 | fn default() -> Self { [INFO] [stderr] 51 | Self::new() [INFO] [stderr] 52 | } [INFO] [stderr] 53 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_some()` [INFO] [stderr] --> src/server.rs:85:16 [INFO] [stderr] | [INFO] [stderr] 85 | if let Some(_) = root { [INFO] [stderr] | _________- ^^^^^^^ [INFO] [stderr] 86 | | if let Some(n) = self.focused { [INFO] [stderr] 87 | | self.blur_component(n); [INFO] [stderr] 88 | | } [INFO] [stderr] 89 | | } [INFO] [stderr] | |_________- help: try this: `if root.is_some()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_pattern_matching)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_none()` [INFO] [stderr] --> src/server.rs:161:16 [INFO] [stderr] | [INFO] [stderr] 161 | if let None = self.graph.node_weight_mut(node) { [INFO] [stderr] | _________- ^^^^ [INFO] [stderr] 162 | | return Err(Error::new( [INFO] [stderr] 163 | | ErrorKind::Other, [INFO] [stderr] 164 | | "Given node does not belongs to this server!" [INFO] [stderr] 165 | | )); [INFO] [stderr] 166 | | } [INFO] [stderr] | |_________- help: try this: `if self.graph.node_weight_mut(node).is_none()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/components/container.rs:39:27 [INFO] [stderr] | [INFO] [stderr] 39 | const CS_LOCAL = 1 << 0; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::identity_op)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/server.rs:336:54 [INFO] [stderr] | [INFO] [stderr] 336 | pub fn trigger_mouse_down(&mut self, screen_pos: &Vec2) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_ok()` [INFO] [stderr] --> src/server.rs:341:20 [INFO] [stderr] | [INFO] [stderr] 341 | if let Ok(_) = self.perform_action::<_>(f, &mut |c| { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 341 | if self.perform_action::<_>(f, &mut |c| { [INFO] [stderr] 342 | c.on_mouse_down(screen_pos); [INFO] [stderr] 343 | c.on_click(); [INFO] [stderr] 344 | Ok(()) [INFO] [stderr] 345 | }).is_ok() [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/server.rs:353:52 [INFO] [stderr] | [INFO] [stderr] 353 | pub fn trigger_mouse_up(&mut self, screen_pos: &Vec2) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_ok()` [INFO] [stderr] --> src/server.rs:360:24 [INFO] [stderr] | [INFO] [stderr] 360 | if let Ok(_) = self.perform_action::<_>(f, &mut |c| { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 360 | if self.perform_action::<_>(f, &mut |c| { [INFO] [stderr] 361 | c.on_mouse_up(screen_pos); [INFO] [stderr] 362 | Ok(()) [INFO] [stderr] 363 | }).is_ok() [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/server.rs:372:54 [INFO] [stderr] | [INFO] [stderr] 372 | pub fn trigger_mouse_move(&mut self, screen_pos: &Vec2) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_ok()` [INFO] [stderr] --> src/server.rs:379:24 [INFO] [stderr] | [INFO] [stderr] 379 | if let Ok(_) = self.perform_action::<_>(f, &mut |c| { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 379 | if self.perform_action::<_>(f, &mut |c| { [INFO] [stderr] 380 | c.on_mouse_move(screen_pos); [INFO] [stderr] 381 | Ok(()) [INFO] [stderr] 382 | }).is_ok() [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/server.rs:391:55 [INFO] [stderr] | [INFO] [stderr] 391 | pub fn trigger_mouse_click(&mut self, screen_pos: &Vec2) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/server.rs:395:64 [INFO] [stderr] | [INFO] [stderr] 395 | pub fn trigger_key_pressed(&mut self, code: u8, modifiers: &KeyModifiers) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider passing by value instead: `KeyModifiers` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_ok()` [INFO] [stderr] --> src/server.rs:397:20 [INFO] [stderr] | [INFO] [stderr] 397 | if let Ok(_) = self.perform_action::<_>(f, &mut |c| { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 397 | if self.perform_action::<_>(f, &mut |c| { [INFO] [stderr] 398 | c.on_key_pressed(code, modifiers); [INFO] [stderr] 399 | Ok(()) [INFO] [stderr] 400 | }).is_ok() [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/server.rs:408:65 [INFO] [stderr] | [INFO] [stderr] 408 | pub fn trigger_key_released(&mut self, code: u8, modifiers: &KeyModifiers) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider passing by value instead: `KeyModifiers` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_ok()` [INFO] [stderr] --> src/server.rs:410:20 [INFO] [stderr] | [INFO] [stderr] 410 | if let Ok(_) = self.perform_action::<_>(f, &mut |c| { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 410 | if self.perform_action::<_>(f, &mut |c| { [INFO] [stderr] 411 | c.on_key_released(code, modifiers); [INFO] [stderr] 412 | Ok(()) [INFO] [stderr] 413 | }).is_ok() [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/server.rs:421:60 [INFO] [stderr] | [INFO] [stderr] 421 | pub fn trigger_key_tap(&mut self, code: u8, modifiers: &KeyModifiers) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider passing by value instead: `KeyModifiers` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/server.rs:456:21 [INFO] [stderr] | [INFO] [stderr] 456 | screen_pos: &Vec2, [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/server.rs:470:21 [INFO] [stderr] | [INFO] [stderr] 470 | screen_pos: &Vec2, [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/components/container.rs:86:40 [INFO] [stderr] | [INFO] [stderr] 86 | pub fn set_color(&mut self, color: &Color) { [INFO] [stderr] | ^^^^^^ help: consider passing by value instead: `Color` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] error: Could not compile `raui`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/components/image.rs:33:40 [INFO] [stderr] | [INFO] [stderr] 33 | pub fn set_color(&mut self, color: &Color) { [INFO] [stderr] | ^^^^^^ help: consider passing by value instead: `Color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/components/text.rs:37:40 [INFO] [stderr] | [INFO] [stderr] 37 | pub fn set_color(&mut self, color: &Color) { [INFO] [stderr] | ^^^^^^ help: consider passing by value instead: `Color` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/data/rect.rs:23:24 [INFO] [stderr] | [INFO] [stderr] 23 | pub fn from(begin: &Vec2, end: &Vec2) -> Rect { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/data/rect.rs:23:36 [INFO] [stderr] | [INFO] [stderr] 23 | pub fn from(begin: &Vec2, end: &Vec2) -> Rect { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/data/rect.rs:30:35 [INFO] [stderr] | [INFO] [stderr] 30 | pub fn contains(&self, point: &Vec2) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/data/color.rs:53:17 [INFO] [stderr] | [INFO] [stderr] 53 | pub fn fade(&self, factor: f32) -> Color { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:57:14 [INFO] [stderr] | [INFO] [stderr] 57 | (self.r as f32 * factor) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.r)` [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 f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:58:14 [INFO] [stderr] | [INFO] [stderr] 58 | (self.g as f32 * factor) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.g)` [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 f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:59:14 [INFO] [stderr] | [INFO] [stderr] 59 | (self.b as f32 * factor) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:60:14 [INFO] [stderr] | [INFO] [stderr] 60 | (self.a as f32 * factor) as u8 [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.a)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/data/color.rs:64:21 [INFO] [stderr] | [INFO] [stderr] 64 | pub fn fade_rgb(&self, factor: f32) -> Color { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:68:14 [INFO] [stderr] | [INFO] [stderr] 68 | (self.r as f32 * factor) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.r)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:69:14 [INFO] [stderr] | [INFO] [stderr] 69 | (self.g as f32 * factor) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.g)` [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 f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:70:14 [INFO] [stderr] | [INFO] [stderr] 70 | (self.b as f32 * factor) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/data/color.rs:75:19 [INFO] [stderr] | [INFO] [stderr] 75 | pub fn fade_a(&self, factor: f32) -> Color { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:82:14 [INFO] [stderr] | [INFO] [stderr] 82 | (self.a as f32 * factor) as u8 [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.a)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:166:15 [INFO] [stderr] | [INFO] [stderr] 166 | ((self.r as f32 / 255.0) * (other.r as f32 / 255.0) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.r)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:166:41 [INFO] [stderr] | [INFO] [stderr] 166 | ((self.r as f32 / 255.0) * (other.r as f32 / 255.0) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.r)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:167:15 [INFO] [stderr] | [INFO] [stderr] 167 | ((self.g as f32 / 255.0) * (other.g as f32 / 255.0) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.g)` [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 f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:167:41 [INFO] [stderr] | [INFO] [stderr] 167 | ((self.g as f32 / 255.0) * (other.g as f32 / 255.0) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.g)` [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 f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:168:15 [INFO] [stderr] | [INFO] [stderr] 168 | ((self.b as f32 / 255.0) * (other.b as f32 / 255.0) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:168:41 [INFO] [stderr] | [INFO] [stderr] 168 | ((self.b as f32 / 255.0) * (other.b as f32 / 255.0) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:169:15 [INFO] [stderr] | [INFO] [stderr] 169 | ((self.a as f32 / 255.0) * (other.a as f32 / 255.0) * 255.0) as u8 [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.a)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:169:41 [INFO] [stderr] | [INFO] [stderr] 169 | ((self.a as f32 / 255.0) * (other.a as f32 / 255.0) * 255.0) as u8 [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.a)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:181:15 [INFO] [stderr] | [INFO] [stderr] 181 | ((self.r as f32 / 255.0) * other * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.r)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:182:15 [INFO] [stderr] | [INFO] [stderr] 182 | ((self.g as f32 / 255.0) * other * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.g)` [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 f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:183:15 [INFO] [stderr] | [INFO] [stderr] 183 | ((self.b as f32 / 255.0) * other * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:184:15 [INFO] [stderr] | [INFO] [stderr] 184 | ((self.a as f32 / 255.0) * other * 255.0) as u8 [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.a)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:196:22 [INFO] [stderr] | [INFO] [stderr] 196 | (self * (other.r as f32 / 255.0) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.r)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:197:22 [INFO] [stderr] | [INFO] [stderr] 197 | (self * (other.g as f32 / 255.0) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.g)` [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 f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:198:22 [INFO] [stderr] | [INFO] [stderr] 198 | (self * (other.b as f32 / 255.0) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:199:22 [INFO] [stderr] | [INFO] [stderr] 199 | (self * (other.a as f32 / 255.0) * 255.0) as u8 [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.a)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:211:16 [INFO] [stderr] | [INFO] [stderr] 211 | (((self.r as f32 / 255.0) / (other.r as f32 / 255.0)) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.r)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:211:42 [INFO] [stderr] | [INFO] [stderr] 211 | (((self.r as f32 / 255.0) / (other.r as f32 / 255.0)) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.r)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:212:16 [INFO] [stderr] | [INFO] [stderr] 212 | (((self.g as f32 / 255.0) / (other.g as f32 / 255.0)) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.g)` [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 f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:212:42 [INFO] [stderr] | [INFO] [stderr] 212 | (((self.g as f32 / 255.0) / (other.g as f32 / 255.0)) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.g)` [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 f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:213:16 [INFO] [stderr] | [INFO] [stderr] 213 | (((self.b as f32 / 255.0) / (other.b as f32 / 255.0)) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:213:42 [INFO] [stderr] | [INFO] [stderr] 213 | (((self.b as f32 / 255.0) / (other.b as f32 / 255.0)) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:214:16 [INFO] [stderr] | [INFO] [stderr] 214 | (((self.a as f32 / 255.0) / (other.a as f32 / 255.0)) * 255.0) as u8 [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.a)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:214:42 [INFO] [stderr] | [INFO] [stderr] 214 | (((self.a as f32 / 255.0) / (other.a as f32 / 255.0)) * 255.0) as u8 [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.a)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:226:16 [INFO] [stderr] | [INFO] [stderr] 226 | (((self.r as f32 / 255.0) / other) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.r)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:227:16 [INFO] [stderr] | [INFO] [stderr] 227 | (((self.g as f32 / 255.0) / other) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.g)` [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 f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:228:16 [INFO] [stderr] | [INFO] [stderr] 228 | (((self.b as f32 / 255.0) / other) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:229:16 [INFO] [stderr] | [INFO] [stderr] 229 | (((self.a as f32 / 255.0) / other) * 255.0) as u8 [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f32::from(self.a)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:241:23 [INFO] [stderr] | [INFO] [stderr] 241 | ((self / (other.r as f32 / 255.0)) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.r)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:242:23 [INFO] [stderr] | [INFO] [stderr] 242 | ((self / (other.g as f32 / 255.0)) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.g)` [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 f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:243:23 [INFO] [stderr] | [INFO] [stderr] 243 | ((self / (other.b as f32 / 255.0)) * 255.0) as u8, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.b)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to f32 may become silently lossy if types change [INFO] [stderr] --> src/data/color.rs:244:23 [INFO] [stderr] | [INFO] [stderr] 244 | ((self / (other.a as f32 / 255.0)) * 255.0) as u8 [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `f32::from(other.a)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `data::render_state::RenderState` [INFO] [stderr] --> src/data/render_state.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | / pub fn new() -> RenderState { [INFO] [stderr] 11 | | RenderState { [INFO] [stderr] 12 | | client_rect: Rect::zero() [INFO] [stderr] 13 | | } [INFO] [stderr] 14 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 8 | impl Default for data::render_state::RenderState { [INFO] [stderr] 9 | fn default() -> Self { [INFO] [stderr] 10 | Self::new() [INFO] [stderr] 11 | } [INFO] [stderr] 12 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/data/behaviour_flags.rs:5:39 [INFO] [stderr] | [INFO] [stderr] 5 | const BF_READING_MOUSE = 1 << 0; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/data/behaviour_flags.rs:21:19 [INFO] [stderr] | [INFO] [stderr] 21 | pub fn to_val(&self) -> u8 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/data/key_modifiers.rs:5:27 [INFO] [stderr] | [INFO] [stderr] 5 | const KM_CTRL = 1 << 0; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/data/key_modifiers.rs:22:19 [INFO] [stderr] | [INFO] [stderr] 22 | pub fn to_val(&self) -> u8 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `data::theme::Theme` [INFO] [stderr] --> src/data/theme.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 23 | / pub fn new() -> Theme { [INFO] [stderr] 24 | | Theme { [INFO] [stderr] 25 | | image_source: "".to_string(), [INFO] [stderr] 26 | | font_source: "".to_string(), [INFO] [stderr] ... | [INFO] [stderr] 41 | | } [INFO] [stderr] 42 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 21 | impl Default for data::theme::Theme { [INFO] [stderr] 22 | fn default() -> Self { [INFO] [stderr] 23 | Self::new() [INFO] [stderr] 24 | } [INFO] [stderr] 25 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `data::render_batch::RenderBatch` [INFO] [stderr] --> src/data/render_batch.rs:34:5 [INFO] [stderr] | [INFO] [stderr] 34 | / pub fn new() -> RenderBatch { [INFO] [stderr] 35 | | RenderBatch { [INFO] [stderr] 36 | | writer: BufWriter::new(Vec::new()), [INFO] [stderr] 37 | | write_lock: false, [INFO] [stderr] 38 | | read_lock: false [INFO] [stderr] 39 | | } [INFO] [stderr] 40 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 20 | impl Default for data::render_batch::RenderBatch { [INFO] [stderr] 21 | fn default() -> Self { [INFO] [stderr] 22 | Self::new() [INFO] [stderr] 23 | } [INFO] [stderr] 24 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/data/render_batch.rs:73:9 [INFO] [stderr] | [INFO] [stderr] 73 | / match self.write_lock { [INFO] [stderr] 74 | | true => write_atom!(self, value, 1), [INFO] [stderr] 75 | | false => Err(Error::new(ErrorKind::Other, "Render batch is not write-locked!")) [INFO] [stderr] 76 | | } [INFO] [stderr] | |_________^ help: consider using an if/else expression: `if self.write_lock { write_atom!(self, value, 1) } else { Err(Error::new(ErrorKind::Other, "Render batch is not write-locked!")) }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/data/render_batch.rs:80:9 [INFO] [stderr] | [INFO] [stderr] 80 | / match self.write_lock { [INFO] [stderr] 81 | | true => write_atom!(self, value, 2), [INFO] [stderr] 82 | | false => Err(Error::new(ErrorKind::Other, "Render batch is not write-locked!")) [INFO] [stderr] 83 | | } [INFO] [stderr] | |_________^ help: consider using an if/else expression: `if self.write_lock { write_atom!(self, value, 2) } else { Err(Error::new(ErrorKind::Other, "Render batch is not write-locked!")) }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/data/render_batch.rs:118:40 [INFO] [stderr] | [INFO] [stderr] 118 | pub fn write_str(&mut self, value: &String) -> Result { [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/data/batch_reader.rs:36:23 [INFO] [stderr] | [INFO] [stderr] 36 | pub fn from(data: &Vec) -> BatchReader { [INFO] [stderr] | ^^^^^^^^ help: change this to: `&[u8]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] error: this public function dereferences a raw pointer but is not marked `unsafe` [INFO] [stderr] --> src/data/batch_reader.rs:49:57 [INFO] [stderr] | [INFO] [stderr] 49 | BatchReader::new(unsafe { slice::from_raw_parts(buffer, size) }) [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::not_unsafe_ptr_arg_deref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#not_unsafe_ptr_arg_deref [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/renderables/text.rs:11:30 [INFO] [stderr] | [INFO] [stderr] 11 | const VA_TOP = 1 << 0; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/renderables/text.rs:30:30 [INFO] [stderr] | [INFO] [stderr] 30 | const HA_LEFT = 1 << 0; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/component.rs:46:45 [INFO] [stderr] | [INFO] [stderr] 46 | fn on_mouse_down(&mut self, screen_pos: &Vec2) {} [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/component.rs:48:43 [INFO] [stderr] | [INFO] [stderr] 48 | fn on_mouse_up(&mut self, screen_pos: &Vec2) {} [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/component.rs:50:45 [INFO] [stderr] | [INFO] [stderr] 50 | fn on_mouse_move(&mut self, screen_pos: &Vec2) {} [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/component.rs:53:59 [INFO] [stderr] | [INFO] [stderr] 53 | fn on_key_pressed(&mut self, code: u8, key_modifiers: &KeyModifiers) {} [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider passing by value instead: `KeyModifiers` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/component.rs:55:60 [INFO] [stderr] | [INFO] [stderr] 55 | fn on_key_released(&mut self, code: u8, key_modifiers: &KeyModifiers) {} [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider passing by value instead: `KeyModifiers` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `server::Server` [INFO] [stderr] --> src/server.rs:51:5 [INFO] [stderr] | [INFO] [stderr] 51 | / pub fn new() -> Server { [INFO] [stderr] 52 | | Server { [INFO] [stderr] 53 | | on_signal_event: None, [INFO] [stderr] 54 | | on_render_event: None, [INFO] [stderr] ... | [INFO] [stderr] 60 | | } [INFO] [stderr] 61 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 49 | impl Default for server::Server { [INFO] [stderr] 50 | fn default() -> Self { [INFO] [stderr] 51 | Self::new() [INFO] [stderr] 52 | } [INFO] [stderr] 53 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_some()` [INFO] [stderr] --> src/server.rs:85:16 [INFO] [stderr] | [INFO] [stderr] 85 | if let Some(_) = root { [INFO] [stderr] | _________- ^^^^^^^ [INFO] [stderr] 86 | | if let Some(n) = self.focused { [INFO] [stderr] 87 | | self.blur_component(n); [INFO] [stderr] 88 | | } [INFO] [stderr] 89 | | } [INFO] [stderr] | |_________- help: try this: `if root.is_some()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_pattern_matching)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_none()` [INFO] [stderr] --> src/server.rs:161:16 [INFO] [stderr] | [INFO] [stderr] 161 | if let None = self.graph.node_weight_mut(node) { [INFO] [stderr] | _________- ^^^^ [INFO] [stderr] 162 | | return Err(Error::new( [INFO] [stderr] 163 | | ErrorKind::Other, [INFO] [stderr] 164 | | "Given node does not belongs to this server!" [INFO] [stderr] 165 | | )); [INFO] [stderr] 166 | | } [INFO] [stderr] | |_________- help: try this: `if self.graph.node_weight_mut(node).is_none()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/server.rs:336:54 [INFO] [stderr] | [INFO] [stderr] 336 | pub fn trigger_mouse_down(&mut self, screen_pos: &Vec2) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_ok()` [INFO] [stderr] --> src/server.rs:341:20 [INFO] [stderr] | [INFO] [stderr] 341 | if let Ok(_) = self.perform_action::<_>(f, &mut |c| { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 341 | if self.perform_action::<_>(f, &mut |c| { [INFO] [stderr] 342 | c.on_mouse_down(screen_pos); [INFO] [stderr] 343 | c.on_click(); [INFO] [stderr] 344 | Ok(()) [INFO] [stderr] 345 | }).is_ok() [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/server.rs:353:52 [INFO] [stderr] | [INFO] [stderr] 353 | pub fn trigger_mouse_up(&mut self, screen_pos: &Vec2) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_ok()` [INFO] [stderr] --> src/server.rs:360:24 [INFO] [stderr] | [INFO] [stderr] 360 | if let Ok(_) = self.perform_action::<_>(f, &mut |c| { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 360 | if self.perform_action::<_>(f, &mut |c| { [INFO] [stderr] 361 | c.on_mouse_up(screen_pos); [INFO] [stderr] 362 | Ok(()) [INFO] [stderr] 363 | }).is_ok() [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/server.rs:372:54 [INFO] [stderr] | [INFO] [stderr] 372 | pub fn trigger_mouse_move(&mut self, screen_pos: &Vec2) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_ok()` [INFO] [stderr] --> src/server.rs:379:24 [INFO] [stderr] | [INFO] [stderr] 379 | if let Ok(_) = self.perform_action::<_>(f, &mut |c| { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 379 | if self.perform_action::<_>(f, &mut |c| { [INFO] [stderr] 380 | c.on_mouse_move(screen_pos); [INFO] [stderr] 381 | Ok(()) [INFO] [stderr] 382 | }).is_ok() [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/server.rs:391:55 [INFO] [stderr] | [INFO] [stderr] 391 | pub fn trigger_mouse_click(&mut self, screen_pos: &Vec2) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/server.rs:395:64 [INFO] [stderr] | [INFO] [stderr] 395 | pub fn trigger_key_pressed(&mut self, code: u8, modifiers: &KeyModifiers) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider passing by value instead: `KeyModifiers` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_ok()` [INFO] [stderr] --> src/server.rs:397:20 [INFO] [stderr] | [INFO] [stderr] 397 | if let Ok(_) = self.perform_action::<_>(f, &mut |c| { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 397 | if self.perform_action::<_>(f, &mut |c| { [INFO] [stderr] 398 | c.on_key_pressed(code, modifiers); [INFO] [stderr] 399 | Ok(()) [INFO] [stderr] 400 | }).is_ok() [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/server.rs:408:65 [INFO] [stderr] | [INFO] [stderr] 408 | pub fn trigger_key_released(&mut self, code: u8, modifiers: &KeyModifiers) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider passing by value instead: `KeyModifiers` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_ok()` [INFO] [stderr] --> src/server.rs:410:20 [INFO] [stderr] | [INFO] [stderr] 410 | if let Ok(_) = self.perform_action::<_>(f, &mut |c| { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 410 | if self.perform_action::<_>(f, &mut |c| { [INFO] [stderr] 411 | c.on_key_released(code, modifiers); [INFO] [stderr] 412 | Ok(()) [INFO] [stderr] 413 | }).is_ok() [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/server.rs:421:60 [INFO] [stderr] | [INFO] [stderr] 421 | pub fn trigger_key_tap(&mut self, code: u8, modifiers: &KeyModifiers) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider passing by value instead: `KeyModifiers` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/server.rs:456:21 [INFO] [stderr] | [INFO] [stderr] 456 | screen_pos: &Vec2, [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/server.rs:470:21 [INFO] [stderr] | [INFO] [stderr] 470 | screen_pos: &Vec2, [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] error: Could not compile `raui`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "493876f3edd9fdbcbd60e1019f3d917b993c6e81b17e711af716e757224b69ee"` [INFO] running `"docker" "rm" "-f" "493876f3edd9fdbcbd60e1019f3d917b993c6e81b17e711af716e757224b69ee"` [INFO] [stdout] 493876f3edd9fdbcbd60e1019f3d917b993c6e81b17e711af716e757224b69ee