[INFO] updating cached repository linkstar0513/utk [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/linkstar0513/utk [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/linkstar0513/utk" "work/ex/clippy-test-run/sources/stable/gh/linkstar0513/utk"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/linkstar0513/utk'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/linkstar0513/utk" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/linkstar0513/utk"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/linkstar0513/utk'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 397f850cb343825d75fccb107b4f76edc3ed0dd1 [INFO] sha for GitHub repo linkstar0513/utk: 397f850cb343825d75fccb107b4f76edc3ed0dd1 [INFO] validating manifest of linkstar0513/utk 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 linkstar0513/utk 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 linkstar0513/utk [INFO] finished frobbing linkstar0513/utk [INFO] frobbed toml for linkstar0513/utk written to work/ex/clippy-test-run/sources/stable/gh/linkstar0513/utk/Cargo.toml [INFO] started frobbing linkstar0513/utk [INFO] finished frobbing linkstar0513/utk [INFO] frobbed toml for linkstar0513/utk written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/linkstar0513/utk/Cargo.toml [INFO] crate linkstar0513/utk has a lockfile. skipping [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting linkstar0513/utk against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-5/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/linkstar0513/utk:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+stable" "clippy" "--frozen" "--all" "--all-targets"` [INFO] [stdout] c450f6dbe66c6b7dd756d36fd356260491f3f38a7e790530ec22d96c045c8aa2 [INFO] running `"docker" "start" "-a" "c450f6dbe66c6b7dd756d36fd356260491f3f38a7e790530ec22d96c045c8aa2"` [INFO] [stderr] Compiling vulkano v0.10.0 [INFO] [stderr] Compiling log v0.4.5 [INFO] [stderr] Compiling sdl2-sys v0.31.0 [INFO] [stderr] Compiling glfw-sys v3.2.2 [INFO] [stderr] Compiling wayland-scanner v0.21.2 [INFO] [stderr] Checking num-complex v0.2.1 [INFO] [stderr] Checking wayland-commons v0.21.2 [INFO] [stderr] Checking crossbeam-epoch v0.3.1 [INFO] [stderr] Checking shared_library v0.1.9 [INFO] [stderr] Checking x11-dl v2.18.3 [INFO] [stderr] Compiling syn v0.15.15 [INFO] [stderr] Checking num-bigint v0.2.0 [INFO] [stderr] Checking wayland-sys v0.20.12 [INFO] [stderr] Compiling gl_generator v0.9.0 [INFO] [stderr] Checking crossbeam-deque v0.5.2 [INFO] [stderr] Checking num v0.1.42 [INFO] [stderr] Checking crossbeam-deque v0.2.0 [INFO] [stderr] Checking osmesa-sys v0.1.2 [INFO] [stderr] Checking ash v0.24.4 [INFO] [stderr] Compiling wayland-client v0.21.2 [INFO] [stderr] Checking wayland-commons v0.20.12 [INFO] [stderr] Checking rayon-core v1.4.1 [INFO] [stderr] Checking crossbeam-channel v0.2.6 [INFO] [stderr] Checking num-rational v0.2.1 [INFO] [stderr] Checking wayland-client v0.20.12 [INFO] [stderr] Compiling glutin v0.17.0 [INFO] [stderr] Compiling glium v0.22.0 [INFO] [stderr] Checking sdl2 v0.31.0 [INFO] [stderr] Compiling num-derive v0.2.3 [INFO] [stderr] Checking rayon v1.0.2 [INFO] [stderr] Checking num v0.2.0 [INFO] [stderr] Checking crossbeam v0.4.1 [INFO] [stderr] Checking wayland-protocols v0.20.12 [INFO] [stderr] Checking glfw v0.25.0 [INFO] [stderr] Checking tiff v0.2.1 [INFO] [stderr] Checking smithay-client-toolkit v0.2.6 [INFO] [stderr] Checking smithay-client-toolkit v0.3.0 [INFO] [stderr] Checking jpeg-decoder v0.1.15 [INFO] [stderr] Checking winit v0.16.2 [INFO] [stderr] Checking image v0.20.0 [INFO] [stderr] Checking winit v0.17.2 [INFO] [stderr] Checking utk v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/app/application.rs:34:13 [INFO] [stderr] | [INFO] [stderr] 34 | events: events, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `events` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/ui/wl_window.rs:77:17 [INFO] [stderr] | [INFO] [stderr] 77 | let b: u32 = min(((buf_x - x) * 0xFF) / buf_x, (y * 0xFF) / buf_y); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::many_single_char_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/ui/wl_window.rs:243:17 [INFO] [stderr] | [INFO] [stderr] 243 | let b: u32 = min(((buf_x - x) * 0xFF) / buf_x, (y * 0xFF) / buf_y); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/ui/wl_window.rs:391:17 [INFO] [stderr] | [INFO] [stderr] 391 | let b: u32 = min(((buf_x - x) * 0xFF) / buf_x, (y * 0xFF) / buf_y); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/ui/wl_window.rs:521:21 [INFO] [stderr] | [INFO] [stderr] 521 | let b: u32 = min(((buf_x - x) * 0xFF) / buf_x, (y * 0xFF) / buf_y); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/app/application.rs:34:13 [INFO] [stderr] | [INFO] [stderr] 34 | events: events, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `events` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/ui/wl_window.rs:77:17 [INFO] [stderr] | [INFO] [stderr] 77 | let b: u32 = min(((buf_x - x) * 0xFF) / buf_x, (y * 0xFF) / buf_y); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::many_single_char_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/ui/wl_window.rs:243:17 [INFO] [stderr] | [INFO] [stderr] 243 | let b: u32 = min(((buf_x - x) * 0xFF) / buf_x, (y * 0xFF) / buf_y); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/ui/wl_window.rs:391:17 [INFO] [stderr] | [INFO] [stderr] 391 | let b: u32 = min(((buf_x - x) * 0xFF) / buf_x, (y * 0xFF) / buf_y); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/ui/wl_window.rs:521:21 [INFO] [stderr] | [INFO] [stderr] 521 | let b: u32 = min(((buf_x - x) * 0xFF) / buf_x, (y * 0xFF) / buf_y); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: module has the same name as its containing module [INFO] [stderr] --> src/app/mod.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | pub mod app; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::module_inception)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stderr] [INFO] [stderr] warning: unused import: `glium` [INFO] [stderr] --> src/app/app.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use glium; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `sdl2::video::Window` [INFO] [stderr] --> src/app/context.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use sdl2::video::Window; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::sync::Arc` [INFO] [stderr] --> src/app/application.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::sync::Arc; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `WindowEvent` [INFO] [stderr] --> src/app/application.rs:10:13 [INFO] [stderr] | [INFO] [stderr] 10 | use winit::{WindowEvent, EventsLoop}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Mutex` [INFO] [stderr] --> src/ui/wl_window.rs:6:22 [INFO] [stderr] | [INFO] [stderr] 6 | use std::sync::{Arc, Mutex}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `wayland_client::protocol::wl_display::RequestsTrait as DisplayRequests` [INFO] [stderr] --> src/ui/wl_window.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use wayland_client::protocol::wl_display::RequestsTrait as DisplayRequests; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::path::Path` [INFO] [stderr] --> src/ui/image/mod.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::path::Path; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fs::File` [INFO] [stderr] --> src/ui/image/mod.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::fs::File; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: module has the same name as its containing module [INFO] [stderr] --> src/theme/mod.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | pub mod theme; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/theme/theme.rs:11:9 [INFO] [stderr] | [INFO] [stderr] 11 | theme [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::let_and_return)] on by default [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/theme/theme.rs:10:21 [INFO] [stderr] | [INFO] [stderr] 10 | let theme = Self::from_config("/etc/environment"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: module has the same name as its containing module [INFO] [stderr] --> src/app/mod.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | pub mod app; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::module_inception)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stderr] [INFO] [stderr] warning: unused import: `glium` [INFO] [stderr] --> src/app/app.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use glium; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `sdl2::video::Window` [INFO] [stderr] --> src/app/context.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use sdl2::video::Window; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::sync::Arc` [INFO] [stderr] --> src/app/application.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::sync::Arc; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `WindowEvent` [INFO] [stderr] --> src/app/application.rs:10:13 [INFO] [stderr] | [INFO] [stderr] 10 | use winit::{WindowEvent, EventsLoop}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Mutex` [INFO] [stderr] --> src/ui/wl_window.rs:6:22 [INFO] [stderr] | [INFO] [stderr] 6 | use std::sync::{Arc, Mutex}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `wayland_client::protocol::wl_display::RequestsTrait as DisplayRequests` [INFO] [stderr] --> src/ui/wl_window.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use wayland_client::protocol::wl_display::RequestsTrait as DisplayRequests; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::path::Path` [INFO] [stderr] --> src/ui/image/mod.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::path::Path; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fs::File` [INFO] [stderr] --> src/ui/image/mod.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::fs::File; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: module has the same name as its containing module [INFO] [stderr] --> src/theme/mod.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | pub mod theme; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/theme/theme.rs:11:9 [INFO] [stderr] | [INFO] [stderr] 11 | theme [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::let_and_return)] on by default [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/theme/theme.rs:10:21 [INFO] [stderr] | [INFO] [stderr] 10 | let theme = Self::from_config("/etc/environment"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: unused variable: `theme` [INFO] [stderr] --> src/app/app.rs:130:13 [INFO] [stderr] | [INFO] [stderr] 130 | let theme = Theme::new(); [INFO] [stderr] | ^^^^^ help: consider using `_theme` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `e` [INFO] [stderr] --> src/app/application.rs:100:42 [INFO] [stderr] | [INFO] [stderr] 100 | self.event_loop.run_forever(|e|{ [INFO] [stderr] | ^ help: consider using `_e` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `y` [INFO] [stderr] --> src/ui/window/imagewindow.rs:12:58 [INFO] [stderr] | [INFO] [stderr] 12 | let inner = ImageBuffer::from_fn(1920, 1080, |x, y| { [INFO] [stderr] | ^ help: consider using `_y` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `painter` [INFO] [stderr] --> src/ui/window/imagewindow.rs:40:13 [INFO] [stderr] | [INFO] [stderr] 40 | let painter = 10u32; [INFO] [stderr] | ^^^^^^^ help: consider using `_painter` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `globals` [INFO] [stderr] --> src/ui/wl_window.rs:39:13 [INFO] [stderr] | [INFO] [stderr] 39 | let globals = GlobalManager::new(&display); [INFO] [stderr] | ^^^^^^^ help: consider using `_globals` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `shms` [INFO] [stderr] --> src/ui/wl_window.rs:100:40 [INFO] [stderr] | [INFO] [stderr] 100 | shm.implement(|event , shms| [INFO] [stderr] | ^^^^ help: consider using `_shms` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/ui/image/mod.rs:19:13 [INFO] [stderr] | [INFO] [stderr] 19 | for i in 0..width*height { [INFO] [stderr] | ^ help: consider using `_i` instead [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/app/application.rs:53:13 [INFO] [stderr] | [INFO] [stderr] 53 | let mut ev = &mut self.events; [INFO] [stderr] | ----^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_mut)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `theme` [INFO] [stderr] --> src/app/app.rs:130:13 [INFO] [stderr] | [INFO] [stderr] 130 | let theme = Theme::new(); [INFO] [stderr] | ^^^^^ help: consider using `_theme` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `e` [INFO] [stderr] --> src/app/application.rs:100:42 [INFO] [stderr] | [INFO] [stderr] 100 | self.event_loop.run_forever(|e|{ [INFO] [stderr] | ^ help: consider using `_e` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `y` [INFO] [stderr] --> src/ui/window/imagewindow.rs:12:58 [INFO] [stderr] | [INFO] [stderr] 12 | let inner = ImageBuffer::from_fn(1920, 1080, |x, y| { [INFO] [stderr] | ^ help: consider using `_y` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `painter` [INFO] [stderr] --> src/ui/window/imagewindow.rs:40:13 [INFO] [stderr] | [INFO] [stderr] 40 | let painter = 10u32; [INFO] [stderr] | ^^^^^^^ help: consider using `_painter` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `globals` [INFO] [stderr] --> src/ui/wl_window.rs:39:13 [INFO] [stderr] | [INFO] [stderr] 39 | let globals = GlobalManager::new(&display); [INFO] [stderr] | ^^^^^^^ help: consider using `_globals` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `shms` [INFO] [stderr] --> src/ui/wl_window.rs:100:40 [INFO] [stderr] | [INFO] [stderr] 100 | shm.implement(|event , shms| [INFO] [stderr] | ^^^^ help: consider using `_shms` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/ui/image/mod.rs:19:13 [INFO] [stderr] | [INFO] [stderr] 19 | for i in 0..width*height { [INFO] [stderr] | ^ help: consider using `_i` instead [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/app/application.rs:53:13 [INFO] [stderr] | [INFO] [stderr] 53 | let mut ev = &mut self.events; [INFO] [stderr] | ----^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_mut)] on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/ui/wl_window.rs:53:13 [INFO] [stderr] | [INFO] [stderr] 53 | let mut running = Arc::new(Cell::new(true)); [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/ui/wl_window.rs:164:13 [INFO] [stderr] | [INFO] [stderr] 164 | let mut pointer_created = false; [INFO] [stderr] | ----^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/ui/wl_window.rs:314:13 [INFO] [stderr] | [INFO] [stderr] 314 | let mut pointer_created = false; [INFO] [stderr] | ----^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/ui/wl_window.rs:462:13 [INFO] [stderr] | [INFO] [stderr] 462 | let mut pointer_created = false; [INFO] [stderr] | ----^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/ui/wl_window.rs:53:13 [INFO] [stderr] | [INFO] [stderr] 53 | let mut running = Arc::new(Cell::new(true)); [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/ui/wl_window.rs:164:13 [INFO] [stderr] | [INFO] [stderr] 164 | let mut pointer_created = false; [INFO] [stderr] | ----^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: field is never used: `inner` [INFO] [stderr] --> src/ui/window/mod.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | inner: video::Window, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `BUTTON_SELECTOR` [INFO] [stderr] --> src/ui/widget/button.rs:7:1 [INFO] [stderr] | [INFO] [stderr] 7 | const BUTTON_SELECTOR: &str = "button"; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `rect` [INFO] [stderr] --> src/ui/widget/button.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | rect: Cell, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `name` [INFO] [stderr] --> src/theme/theme.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | name: String, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `app::app::App` [INFO] [stderr] --> src/app/app.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | / pub fn new() -> Self { [INFO] [stderr] 14 | | App { [INFO] [stderr] 15 | | context: AppContext::new(), [INFO] [stderr] 16 | | } [INFO] [stderr] 17 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] | [INFO] [stderr] --> src/ui/wl_window.rs:314:13 [INFO] [stderr] | [INFO] [stderr] 314 | let mut pointer_created = false; [INFO] [stderr] | ----^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [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] | [INFO] [stderr] 12 | impl Default for app::app::App { [INFO] [stderr] 13 | fn default() -> Self { [INFO] [stderr] 14 | Self::new() [INFO] [stderr] 15 | } [INFO] [stderr] 16 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/app/app.rs:70:21 [INFO] [stderr] | [INFO] [stderr] 70 | / match event { [INFO] [stderr] 71 | | WindowEvent::CloseRequested => { [INFO] [stderr] 72 | | return winit::ControlFlow::Break; [INFO] [stderr] 73 | | }, [INFO] [stderr] 74 | | _ => (), [INFO] [stderr] 75 | | } [INFO] [stderr] | |_____________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 70 | if let WindowEvent::CloseRequested = event { [INFO] [stderr] 71 | return winit::ControlFlow::Break; [INFO] [stderr] 72 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/ui/wl_window.rs:462:13 [INFO] [stderr] | [INFO] [stderr] 462 | let mut pointer_created = false; [INFO] [stderr] | ----^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: field is never used: `inner` [INFO] [stderr] --> src/ui/window/mod.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | inner: video::Window, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `BUTTON_SELECTOR` [INFO] [stderr] --> src/ui/widget/button.rs:7:1 [INFO] [stderr] | [INFO] [stderr] 7 | const BUTTON_SELECTOR: &str = "button"; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `rect` [INFO] [stderr] --> src/ui/widget/button.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | rect: Cell, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `name` [INFO] [stderr] --> src/theme/theme.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | name: String, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `app::app::App` [INFO] [stderr] --> src/app/app.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | / pub fn new() -> Self { [INFO] [stderr] 14 | | App { [INFO] [stderr] 15 | | context: AppContext::new(), [INFO] [stderr] 16 | | } [INFO] [stderr] 17 | | } [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] 12 | impl Default for app::app::App { [INFO] [stderr] 13 | fn default() -> Self { [INFO] [stderr] 14 | Self::new() [INFO] [stderr] 15 | } [INFO] [stderr] 16 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/app/app.rs:104:17 [INFO] [stderr] | [INFO] [stderr] 104 | / match ev { [INFO] [stderr] 105 | | event::Event::Quit {..} => { [INFO] [stderr] 106 | | application.events.push_back(Event::QuitEvent); [INFO] [stderr] 107 | | }, [INFO] [stderr] ... | [INFO] [stderr] 110 | | }, [INFO] [stderr] 111 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 104 | if let event::Event::Quit {..} = ev { [INFO] [stderr] 105 | application.events.push_back(Event::QuitEvent); [INFO] [stderr] 106 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `app::context::AppContext` [INFO] [stderr] --> src/app/context.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | / pub fn new() -> Self { [INFO] [stderr] 14 | | let context = sdl2::init().unwrap(); [INFO] [stderr] 15 | | let video = context.video().unwrap(); [INFO] [stderr] 16 | | AppContext { [INFO] [stderr] ... | [INFO] [stderr] 19 | | } [INFO] [stderr] 20 | | } [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] 11 | impl Default for app::context::AppContext { [INFO] [stderr] 12 | fn default() -> Self { [INFO] [stderr] 13 | Self::new() [INFO] [stderr] 14 | } [INFO] [stderr] 15 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/app/app.rs:70:21 [INFO] [stderr] | [INFO] [stderr] 70 | / match event { [INFO] [stderr] 71 | | WindowEvent::CloseRequested => { [INFO] [stderr] 72 | | return winit::ControlFlow::Break; [INFO] [stderr] 73 | | }, [INFO] [stderr] 74 | | _ => (), [INFO] [stderr] 75 | | } [INFO] [stderr] | |_____________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 70 | if let WindowEvent::CloseRequested = event { [INFO] [stderr] 71 | return winit::ControlFlow::Break; [INFO] [stderr] 72 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `app::application::Application` [INFO] [stderr] --> src/app/application.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | / pub fn new() -> Self { [INFO] [stderr] 25 | | const NANOS_PER_SEC: u32 = 1_000_000_000; [INFO] [stderr] 26 | | // setting the application's fps 60 [INFO] [stderr] 27 | | [INFO] [stderr] ... | [INFO] [stderr] 35 | | } [INFO] [stderr] 36 | | } [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] 23 | impl Default for app::application::Application { [INFO] [stderr] 24 | fn default() -> Self { [INFO] [stderr] 25 | Self::new() [INFO] [stderr] 26 | } [INFO] [stderr] 27 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: methods called `is_*` usually take self by reference or no self; consider choosing a less ambiguous name [INFO] [stderr] --> src/app/application.rs:39:23 [INFO] [stderr] | [INFO] [stderr] 39 | pub fn is_running(&mut self) -> bool { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::wrong_self_convention)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `ui::window::imagewindow::ImageWindow` [INFO] [stderr] --> src/ui/window/imagewindow.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | / pub fn new() -> Self { [INFO] [stderr] 11 | | //let img = ImageBuffer::new(500, 500); [INFO] [stderr] 12 | | let inner = ImageBuffer::from_fn(1920, 1080, |x, y| { [INFO] [stderr] 13 | | if x % 2 == 0 { [INFO] [stderr] ... | [INFO] [stderr] 25 | | [INFO] [stderr] 26 | | } [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] 9 | impl Default for ui::window::imagewindow::ImageWindow { [INFO] [stderr] 10 | fn default() -> Self { [INFO] [stderr] 11 | Self::new() [INFO] [stderr] 12 | } [INFO] [stderr] 13 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error: this `if` has identical blocks [INFO] [stderr] --> src/ui/window/imagewindow.rs:16:20 [INFO] [stderr] | [INFO] [stderr] 16 | } else { [INFO] [stderr] | ____________________^ [INFO] [stderr] 17 | | //image::RGBA(0) [INFO] [stderr] 18 | | image::Rgba([0u8,255u8, 255u8, 255u8]) [INFO] [stderr] 19 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::if_same_then_else)] on by default [INFO] [stderr] note: same as this [INFO] [stderr] --> src/ui/window/imagewindow.rs:13:27 [INFO] [stderr] | [INFO] [stderr] 13 | if x % 2 == 0 { [INFO] [stderr] | ___________________________^ [INFO] [stderr] 14 | | image::Rgba([0u8,255u8, 255u8, 255u8]) [INFO] [stderr] 15 | | //image::Luma([0u8]) [INFO] [stderr] 16 | | } else { [INFO] [stderr] | |_____________^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/ui/window/imagewindow.rs:28:9 [INFO] [stderr] | [INFO] [stderr] 28 | self.inner.save("hello.png"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_must_use)] on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/ui/window/imagewindow.rs:42:26 [INFO] [stderr] | [INFO] [stderr] 42 | let (m1, m2) = ((from.0 as f64, from.1 as f64), (to.0 as f64, to.1 as f64)); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(from.0)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/ui/window/imagewindow.rs:42:41 [INFO] [stderr] | [INFO] [stderr] 42 | let (m1, m2) = ((from.0 as f64, from.1 as f64), (to.0 as f64, to.1 as f64)); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(from.1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/ui/window/imagewindow.rs:42:58 [INFO] [stderr] | [INFO] [stderr] 42 | let (m1, m2) = ((from.0 as f64, from.1 as f64), (to.0 as f64, to.1 as f64)); [INFO] [stderr] | ^^^^^^^^^^^ help: try: `f64::from(to.0)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/ui/window/imagewindow.rs:42:71 [INFO] [stderr] | [INFO] [stderr] 42 | let (m1, m2) = ((from.0 as f64, from.1 as f64), (to.0 as f64, to.1 as f64)); [INFO] [stderr] | ^^^^^^^^^^^ help: try: `f64::from(to.1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/ui/window/imagewindow.rs:93:60 [INFO] [stderr] | [INFO] [stderr] 93 | let len = 1.0 + 0.5 * ::std::f64::consts::SQRT_2 * rad as f64; [INFO] [stderr] | ^^^^^^^^^^ help: try: `f64::from(rad)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/ui/window/imagewindow.rs:98:18 [INFO] [stderr] | [INFO] [stderr] 98 | py = ((r2 - x * x) as f64).sqrt() as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(r2 - x * x)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/ui/window/imagewindow.rs:113:60 [INFO] [stderr] | [INFO] [stderr] 113 | let len = 1.0 + 0.5 * ::std::f64::consts::SQRT_2 * rad as f64; [INFO] [stderr] | ^^^^^^^^^^ help: try: `f64::from(rad)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/ui/window/imagewindow.rs:118:17 [INFO] [stderr] | [INFO] [stderr] 118 | y = ((r2 - x * x) as f64).sqrt() as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(r2 - x * x)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/app/app.rs:104:17 [INFO] [stderr] | [INFO] [stderr] 104 | / match ev { [INFO] [stderr] 105 | | event::Event::Quit {..} => { [INFO] [stderr] 106 | | application.events.push_back(Event::QuitEvent); [INFO] [stderr] 107 | | }, [INFO] [stderr] ... | [INFO] [stderr] 110 | | }, [INFO] [stderr] 111 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 104 | if let event::Event::Quit {..} = ev { [INFO] [stderr] 105 | application.events.push_back(Event::QuitEvent); [INFO] [stderr] 106 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `app::context::AppContext` [INFO] [stderr] --> src/app/context.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | / pub fn new() -> Self { [INFO] [stderr] 14 | | let context = sdl2::init().unwrap(); [INFO] [stderr] 15 | | let video = context.video().unwrap(); [INFO] [stderr] 16 | | AppContext { [INFO] [stderr] ... | [INFO] [stderr] 19 | | } [INFO] [stderr] 20 | | } [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] 11 | impl Default for app::context::AppContext { [INFO] [stderr] 12 | fn default() -> Self { [INFO] [stderr] 13 | Self::new() [INFO] [stderr] 14 | } [INFO] [stderr] 15 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `ui::wl_window::WlWindow` [INFO] [stderr] --> src/ui/wl_window.rs:36:5 [INFO] [stderr] | [INFO] [stderr] 36 | / pub fn new() -> Self{ [INFO] [stderr] 37 | | [INFO] [stderr] 38 | | let (display, mut event_queue) = Display::connect_to_env().unwrap(); [INFO] [stderr] 39 | | let globals = GlobalManager::new(&display); [INFO] [stderr] ... | [INFO] [stderr] 48 | | } [INFO] [stderr] 49 | | } [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] 32 | impl Default for ui::wl_window::WlWindow { [INFO] [stderr] 33 | fn default() -> Self { [INFO] [stderr] 34 | Self::new() [INFO] [stderr] 35 | } [INFO] [stderr] 36 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `app::application::Application` [INFO] [stderr] --> src/app/application.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | / pub fn new() -> Self { [INFO] [stderr] 25 | | const NANOS_PER_SEC: u32 = 1_000_000_000; [INFO] [stderr] 26 | | // setting the application's fps 60 [INFO] [stderr] 27 | | [INFO] [stderr] ... | [INFO] [stderr] 35 | | } [INFO] [stderr] 36 | | } [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] 23 | impl Default for app::application::Application { [INFO] [stderr] 24 | fn default() -> Self { [INFO] [stderr] 25 | Self::new() [INFO] [stderr] 26 | } [INFO] [stderr] 27 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: methods called `is_*` usually take self by reference or no self; consider choosing a less ambiguous name [INFO] [stderr] --> src/app/application.rs:39:23 [INFO] [stderr] | [INFO] [stderr] 39 | pub fn is_running(&mut self) -> bool { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::wrong_self_convention)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stderr] [INFO] [stderr] warning: called `ok().expect()` on a Result value. You can call `expect` directly on the `Result` [INFO] [stderr] --> src/ui/wl_window.rs:70:23 [INFO] [stderr] | [INFO] [stderr] 70 | let mut tmp = ::tempfile::tempfile().ok().expect("Unable to create a tempfile."); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ok_expect)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ok_expect [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `ui::window::imagewindow::ImageWindow` [INFO] [stderr] --> src/ui/window/imagewindow.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | / pub fn new() -> Self { [INFO] [stderr] 11 | | //let img = ImageBuffer::new(500, 500); [INFO] [stderr] 12 | | let inner = ImageBuffer::from_fn(1920, 1080, |x, y| { [INFO] [stderr] 13 | | if x % 2 == 0 { [INFO] [stderr] ... | [INFO] [stderr] 25 | | [INFO] [stderr] 26 | | } [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] 9 | impl Default for ui::window::imagewindow::ImageWindow { [INFO] [stderr] 10 | fn default() -> Self { [INFO] [stderr] 11 | Self::new() [INFO] [stderr] 12 | } [INFO] [stderr] 13 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error: this `if` has identical blocks [INFO] [stderr] --> src/ui/window/imagewindow.rs:16:20 [INFO] [stderr] | [INFO] [stderr] 16 | } else { [INFO] [stderr] | ____________________^ [INFO] [stderr] 17 | | //image::RGBA(0) [INFO] [stderr] 18 | | image::Rgba([0u8,255u8, 255u8, 255u8]) [INFO] [stderr] 19 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::if_same_then_else)] on by default [INFO] [stderr] note: same as this [INFO] [stderr] --> src/ui/window/imagewindow.rs:13:27 [INFO] [stderr] | [INFO] [stderr] 13 | if x % 2 == 0 { [INFO] [stderr] | ___________________________^ [INFO] [stderr] 14 | | image::Rgba([0u8,255u8, 255u8, 255u8]) [INFO] [stderr] 15 | | //image::Luma([0u8]) [INFO] [stderr] 16 | | } else { [INFO] [stderr] | |_____________^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/ui/wl_window.rs:165:9 [INFO] [stderr] | [INFO] [stderr] 165 | / globals.instantiate_auto::(|seat| { [INFO] [stderr] 166 | | seat.implement( [INFO] [stderr] 167 | | move |event, seat: Proxy| { [INFO] [stderr] 168 | | // The capabilities of a seat are known at runtime and we retrieve [INFO] [stderr] ... | [INFO] [stderr] 209 | | ) [INFO] [stderr] 210 | | }); [INFO] [stderr] | |___________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/ui/window/imagewindow.rs:28:9 [INFO] [stderr] | [INFO] [stderr] 28 | self.inner.save("hello.png"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_must_use)] on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/ui/wl_window.rs:180:29 [INFO] [stderr] | [INFO] [stderr] 180 | / seat.get_pointer(|pointer| { [INFO] [stderr] 181 | | pointer.implement( [INFO] [stderr] 182 | | |event, _| match event { [INFO] [stderr] 183 | | PointerEvent::Enter { [INFO] [stderr] ... | [INFO] [stderr] 203 | | ) [INFO] [stderr] 204 | | }); [INFO] [stderr] | |_______________________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/ui/window/imagewindow.rs:42:26 [INFO] [stderr] | [INFO] [stderr] 42 | let (m1, m2) = ((from.0 as f64, from.1 as f64), (to.0 as f64, to.1 as f64)); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(from.0)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/ui/window/imagewindow.rs:42:41 [INFO] [stderr] | [INFO] [stderr] 42 | let (m1, m2) = ((from.0 as f64, from.1 as f64), (to.0 as f64, to.1 as f64)); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(from.1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/ui/window/imagewindow.rs:42:58 [INFO] [stderr] | [INFO] [stderr] 42 | let (m1, m2) = ((from.0 as f64, from.1 as f64), (to.0 as f64, to.1 as f64)); [INFO] [stderr] | ^^^^^^^^^^^ help: try: `f64::from(to.0)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/ui/window/imagewindow.rs:42:71 [INFO] [stderr] | [INFO] [stderr] 42 | let (m1, m2) = ((from.0 as f64, from.1 as f64), (to.0 as f64, to.1 as f64)); [INFO] [stderr] | ^^^^^^^^^^^ help: try: `f64::from(to.1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: called `ok().expect()` on a Result value. You can call `expect` directly on the `Result` [INFO] [stderr] --> src/ui/wl_window.rs:236:23 [INFO] [stderr] | [INFO] [stderr] 236 | let mut tmp = ::tempfile::tempfile().ok().expect("Unable to create a tempfile."); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ok_expect [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/ui/window/imagewindow.rs:93:60 [INFO] [stderr] | [INFO] [stderr] 93 | let len = 1.0 + 0.5 * ::std::f64::consts::SQRT_2 * rad as f64; [INFO] [stderr] | ^^^^^^^^^^ help: try: `f64::from(rad)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/ui/window/imagewindow.rs:98:18 [INFO] [stderr] | [INFO] [stderr] 98 | py = ((r2 - x * x) as f64).sqrt() as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(r2 - x * x)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/ui/wl_window.rs:315:9 [INFO] [stderr] | [INFO] [stderr] 315 | / globals.instantiate_auto::(|seat| { [INFO] [stderr] 316 | | seat.implement( [INFO] [stderr] 317 | | move |event, seat: Proxy| { [INFO] [stderr] 318 | | // The capabilities of a seat are known at runtime and we retrieve [INFO] [stderr] ... | [INFO] [stderr] 358 | | ) [INFO] [stderr] 359 | | }); [INFO] [stderr] | |___________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/ui/wl_window.rs:330:29 [INFO] [stderr] | [INFO] [stderr] 330 | / seat.get_pointer(|pointer| { [INFO] [stderr] 331 | | pointer.implement( [INFO] [stderr] 332 | | |event, _| match event { [INFO] [stderr] 333 | | PointerEvent::Enter { [INFO] [stderr] ... | [INFO] [stderr] 352 | | ) [INFO] [stderr] 353 | | }); [INFO] [stderr] | |_______________________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/ui/window/imagewindow.rs:113:60 [INFO] [stderr] | [INFO] [stderr] 113 | let len = 1.0 + 0.5 * ::std::f64::consts::SQRT_2 * rad as f64; [INFO] [stderr] | ^^^^^^^^^^ help: try: `f64::from(rad)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/ui/window/imagewindow.rs:118:17 [INFO] [stderr] | [INFO] [stderr] 118 | y = ((r2 - x * x) as f64).sqrt() as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(r2 - x * x)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `ui::wl_window::WlWindow` [INFO] [stderr] --> src/ui/wl_window.rs:36:5 [INFO] [stderr] | [INFO] [stderr] 36 | / pub fn new() -> Self{ [INFO] [stderr] 37 | | [INFO] [stderr] 38 | | let (display, mut event_queue) = Display::connect_to_env().unwrap(); [INFO] [stderr] 39 | | let globals = GlobalManager::new(&display); [INFO] [stderr] ... | [INFO] [stderr] 48 | | } [INFO] [stderr] 49 | | } [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] 32 | impl Default for ui::wl_window::WlWindow { [INFO] [stderr] 33 | fn default() -> Self { [INFO] [stderr] 34 | Self::new() [INFO] [stderr] 35 | } [INFO] [stderr] 36 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: called `ok().expect()` on a Result value. You can call `expect` directly on the `Result` [INFO] [stderr] --> src/ui/wl_window.rs:384:23 [INFO] [stderr] | [INFO] [stderr] 384 | let mut tmp = ::tempfile::tempfile().ok().expect("Unable to create a tempfile."); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ok_expect [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] warning: called `ok().expect()` on a Result value. You can call `expect` directly on the `Result` [INFO] [stderr] --> src/ui/wl_window.rs:70:23 [INFO] [stderr] | [INFO] [stderr] 70 | let mut tmp = ::tempfile::tempfile().ok().expect("Unable to create a tempfile."); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] --> src/ui/wl_window.rs:463:9 [INFO] [stderr] | [INFO] [stderr] 463 | / globals.instantiate_auto::(|seat| { [INFO] [stderr] 464 | | seat.implement( [INFO] [stderr] 465 | | move |event, seat: Proxy| { [INFO] [stderr] 466 | | // The capabilities of a seat are known at runtime and we retrieve [INFO] [stderr] ... | [INFO] [stderr] 506 | | ) [INFO] [stderr] 507 | | }); [INFO] [stderr] | |___________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ok_expect)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ok_expect [INFO] [stderr] [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/ui/wl_window.rs:478:29 [INFO] [stderr] | [INFO] [stderr] 478 | / seat.get_pointer(|pointer| { [INFO] [stderr] 479 | | pointer.implement( [INFO] [stderr] 480 | | |event, _| match event { [INFO] [stderr] 481 | | PointerEvent::Enter { [INFO] [stderr] ... | [INFO] [stderr] 500 | | ) [INFO] [stderr] 501 | | }); [INFO] [stderr] | |_______________________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: called `ok().expect()` on a Result value. You can call `expect` directly on the `Result` [INFO] [stderr] --> src/ui/wl_window.rs:513:19 [INFO] [stderr] | [INFO] [stderr] 513 | tmp = ::tempfile::tempfile().ok().expect("Unable to create a tempfile."); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ok_expect [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/ui/wl_window.rs:165:9 [INFO] [stderr] | [INFO] [stderr] 165 | / globals.instantiate_auto::(|seat| { [INFO] [stderr] 166 | | seat.implement( [INFO] [stderr] 167 | | move |event, seat: Proxy| { [INFO] [stderr] 168 | | // The capabilities of a seat are known at runtime and we retrieve [INFO] [stderr] ... | [INFO] [stderr] 209 | | ) [INFO] [stderr] 210 | | }); [INFO] [stderr] | |___________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/ui/wl_window.rs:180:29 [INFO] [stderr] | [INFO] [stderr] 180 | / seat.get_pointer(|pointer| { [INFO] [stderr] 181 | | pointer.implement( [INFO] [stderr] 182 | | |event, _| match event { [INFO] [stderr] 183 | | PointerEvent::Enter { [INFO] [stderr] ... | [INFO] [stderr] 203 | | ) [INFO] [stderr] 204 | | }); [INFO] [stderr] | |_______________________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: called `ok().expect()` on a Result value. You can call `expect` directly on the `Result` [INFO] [stderr] --> src/ui/wl_window.rs:236:23 [INFO] [stderr] | [INFO] [stderr] 236 | let mut tmp = ::tempfile::tempfile().ok().expect("Unable to create a tempfile."); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ok_expect [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `theme::theme::Theme` [INFO] [stderr] --> src/theme/theme.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | / pub fn new() -> Self { [INFO] [stderr] 10 | | let theme = Self::from_config("/etc/environment"); [INFO] [stderr] 11 | | theme [INFO] [stderr] 12 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default_derive)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 5 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/theme/theme.rs:21:9 [INFO] [stderr] | [INFO] [stderr] 21 | file.read_to_string(&mut theme); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/ui/wl_window.rs:315:9 [INFO] [stderr] | [INFO] [stderr] 315 | / globals.instantiate_auto::(|seat| { [INFO] [stderr] 316 | | seat.implement( [INFO] [stderr] 317 | | move |event, seat: Proxy| { [INFO] [stderr] 318 | | // The capabilities of a seat are known at runtime and we retrieve [INFO] [stderr] ... | [INFO] [stderr] 358 | | ) [INFO] [stderr] 359 | | }); [INFO] [stderr] | |___________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/ui/wl_window.rs:330:29 [INFO] [stderr] | [INFO] [stderr] 330 | / seat.get_pointer(|pointer| { [INFO] [stderr] 331 | | pointer.implement( [INFO] [stderr] 332 | | |event, _| match event { [INFO] [stderr] 333 | | PointerEvent::Enter { [INFO] [stderr] ... | [INFO] [stderr] 352 | | ) [INFO] [stderr] 353 | | }); [INFO] [stderr] | |_______________________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: called `ok().expect()` on a Result value. You can call `expect` directly on the `Result` [INFO] [stderr] --> src/ui/wl_window.rs:384:23 [INFO] [stderr] | [INFO] [stderr] 384 | let mut tmp = ::tempfile::tempfile().ok().expect("Unable to create a tempfile."); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ok_expect [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/ui/wl_window.rs:463:9 [INFO] [stderr] | [INFO] [stderr] 463 | / globals.instantiate_auto::(|seat| { [INFO] [stderr] 464 | | seat.implement( [INFO] [stderr] 465 | | move |event, seat: Proxy| { [INFO] [stderr] 466 | | // The capabilities of a seat are known at runtime and we retrieve [INFO] [stderr] ... | [INFO] [stderr] 506 | | ) [INFO] [stderr] 507 | | }); [INFO] [stderr] | |___________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/ui/wl_window.rs:478:29 [INFO] [stderr] | [INFO] [stderr] 478 | / seat.get_pointer(|pointer| { [INFO] [stderr] 479 | | pointer.implement( [INFO] [stderr] 480 | | |event, _| match event { [INFO] [stderr] 481 | | PointerEvent::Enter { [INFO] [stderr] ... | [INFO] [stderr] 500 | | ) [INFO] [stderr] 501 | | }); [INFO] [stderr] | |_______________________________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: called `ok().expect()` on a Result value. You can call `expect` directly on the `Result` [INFO] [stderr] --> src/ui/wl_window.rs:513:19 [INFO] [stderr] | [INFO] [stderr] 513 | tmp = ::tempfile::tempfile().ok().expect("Unable to create a tempfile."); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ok_expect [INFO] [stderr] [INFO] [stderr] error: Could not compile `utk`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `theme::theme::Theme` [INFO] [stderr] --> src/theme/theme.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | / pub fn new() -> Self { [INFO] [stderr] 10 | | let theme = Self::from_config("/etc/environment"); [INFO] [stderr] 11 | | theme [INFO] [stderr] 12 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default_derive)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 5 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/theme/theme.rs:21:9 [INFO] [stderr] | [INFO] [stderr] 21 | file.read_to_string(&mut theme); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] error: Could not compile `utk`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "c450f6dbe66c6b7dd756d36fd356260491f3f38a7e790530ec22d96c045c8aa2"` [INFO] running `"docker" "rm" "-f" "c450f6dbe66c6b7dd756d36fd356260491f3f38a7e790530ec22d96c045c8aa2"` [INFO] [stdout] c450f6dbe66c6b7dd756d36fd356260491f3f38a7e790530ec22d96c045c8aa2