[INFO] updating cached repository Tarv3/particle_filter [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/Tarv3/particle_filter [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/Tarv3/particle_filter" "work/ex/clippy-test-run/sources/stable/gh/Tarv3/particle_filter"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/Tarv3/particle_filter'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/Tarv3/particle_filter" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/Tarv3/particle_filter"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/Tarv3/particle_filter'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] bbed9e74065719e901aac90701a0a05305db7a3d [INFO] sha for GitHub repo Tarv3/particle_filter: bbed9e74065719e901aac90701a0a05305db7a3d [INFO] validating manifest of Tarv3/particle_filter 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 Tarv3/particle_filter 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 Tarv3/particle_filter [INFO] finished frobbing Tarv3/particle_filter [INFO] frobbed toml for Tarv3/particle_filter written to work/ex/clippy-test-run/sources/stable/gh/Tarv3/particle_filter/Cargo.toml [INFO] started frobbing Tarv3/particle_filter [INFO] finished frobbing Tarv3/particle_filter [INFO] frobbed toml for Tarv3/particle_filter written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/Tarv3/particle_filter/Cargo.toml [INFO] crate Tarv3/particle_filter 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 Tarv3/particle_filter against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-2/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/Tarv3/particle_filter:/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] 8c7a8fbd4fea6d6bb831c91475b006c49dfb422acad06b70970dcc2b6794f83d [INFO] running `"docker" "start" "-a" "8c7a8fbd4fea6d6bb831c91475b006c49dfb422acad06b70970dcc2b6794f83d"` [INFO] [stderr] Checking statrs v0.10.0 [INFO] [stderr] Checking crossbeam-epoch v0.3.1 [INFO] [stderr] Compiling glutin v0.17.0 [INFO] [stderr] Compiling glium v0.22.0 [INFO] [stderr] Compiling syn v0.15.20 [INFO] [stderr] Checking nalgebra v0.16.6 [INFO] [stderr] Checking smithay-client-toolkit v0.2.6 [INFO] [stderr] Checking crossbeam-deque v0.2.0 [INFO] [stderr] Checking rayon-core v1.4.1 [INFO] [stderr] Checking winit v0.16.2 [INFO] [stderr] Checking rayon v1.0.3 [INFO] [stderr] Compiling structopt-derive v0.2.13 [INFO] [stderr] Compiling serde_derive v1.0.80 [INFO] [stderr] Checking structopt v0.2.13 [INFO] [stderr] Checking nalgebra-glm v0.2.0 [INFO] [stderr] Checking particle_filter v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/main.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/measurement.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | value [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/measurement.rs:10:17 [INFO] [stderr] | [INFO] [stderr] 10 | let value = 1.0 - erf::erf((score.abs() * FRAC_1_SQRT_2) as f64) as f32; [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 `#[macro_use]` import [INFO] [stderr] --> src/main.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/measurement.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | value [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/measurement.rs:10:17 [INFO] [stderr] | [INFO] [stderr] 10 | let value = 1.0 - erf::erf((score.abs() * FRAC_1_SQRT_2) as f64) as f32; [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: `time` [INFO] [stderr] --> src/tracker.rs:30:85 [INFO] [stderr] | [INFO] [stderr] 30 | pub fn update_filter(&mut self, drone_pos: Vec2, measurement: f32, stddev: f32, time: f32) { [INFO] [stderr] | ^^^^ help: consider using `_time` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `time` [INFO] [stderr] --> src/tracker.rs:30:85 [INFO] [stderr] | [INFO] [stderr] 30 | pub fn update_filter(&mut self, drone_pos: Vec2, measurement: f32, stddev: f32, time: f32) { [INFO] [stderr] | ^^^^ help: consider using `_time` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_particles` [INFO] [stderr] --> src/filter.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | pub fn get_particles(&self) -> &[T] { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `populate_filter` [INFO] [stderr] --> src/filter.rs:38:5 [INFO] [stderr] | [INFO] [stderr] 38 | / pub fn populate_filter(&mut self, func: F) [INFO] [stderr] 39 | | where [INFO] [stderr] 40 | | F: FnOnce(&mut Vec), [INFO] [stderr] 41 | | { [INFO] [stderr] 42 | | func(&mut self.particles); [INFO] [stderr] 43 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `reset` [INFO] [stderr] --> src/filter.rs:68:5 [INFO] [stderr] | [INFO] [stderr] 68 | / pub fn reset(&mut self, mut resampler: F) [INFO] [stderr] 69 | | where [INFO] [stderr] 70 | | F: FnMut() -> T, [INFO] [stderr] 71 | | { [INFO] [stderr] ... | [INFO] [stderr] 76 | | } [INFO] [stderr] 77 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `sum_weights` [INFO] [stderr] --> src/filter.rs:101:5 [INFO] [stderr] | [INFO] [stderr] 101 | pub fn sum_weights(&self) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `reset_uniformly` [INFO] [stderr] --> src/filter.rs:145:5 [INFO] [stderr] | [INFO] [stderr] 145 | pub fn reset_uniformly(&mut self, h_range: Range, v_range: Range) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `write_particle_pos` [INFO] [stderr] --> src/filter.rs:176:5 [INFO] [stderr] | [INFO] [stderr] 176 | pub fn write_particle_pos(&self, buffer: &mut [[f32; 2]]) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `update_particles` [INFO] [stderr] --> src/renderer/particle.rs:27:5 [INFO] [stderr] | [INFO] [stderr] 27 | pub fn update_particles(&mut self, filter: &Filter) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `update_filter` [INFO] [stderr] --> src/util.rs:11:1 [INFO] [stderr] | [INFO] [stderr] 11 | pub fn update_filter(filter: &mut Filter, drone: Vec2, animal: Vec2, stddev: f32) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `elipse_motion` [INFO] [stderr] --> src/util.rs:20:1 [INFO] [stderr] | [INFO] [stderr] 20 | pub fn elipse_motion(elapsed: f32, time: f32, vert: f32, horiz: f32, rate: f32) -> Vec2 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `update_renderer` [INFO] [stderr] --> src/util.rs:26:1 [INFO] [stderr] | [INFO] [stderr] 26 | / pub fn update_renderer( [INFO] [stderr] 27 | | display: &Display, [INFO] [stderr] 28 | | renderer: &mut ShapeRenderer, [INFO] [stderr] 29 | | drone: Vec2, [INFO] [stderr] ... | [INFO] [stderr] 49 | | renderer.update_buffer(display).unwrap(); [INFO] [stderr] 50 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `save_default_config` [INFO] [stderr] --> src/util.rs:52:1 [INFO] [stderr] | [INFO] [stderr] 52 | pub fn save_default_config() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: casting f32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/measurement.rs:10:32 [INFO] [stderr] | [INFO] [stderr] 10 | let value = 1.0 - erf::erf((score.abs() * FRAC_1_SQRT_2) as f64) as f32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(score.abs() * FRAC_1_SQRT_2)` [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 f32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/measurement.rs:16:35 [INFO] [stderr] | [INFO] [stderr] 16 | let normal = Normal::new(0.0, stddev as f64); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(stddev)` [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 are using an explicit closure for cloning elements [INFO] [stderr] --> src/renderer/point.rs:36:27 [INFO] [stderr] | [INFO] [stderr] 36 | self.add_vertices(shape.iter().map(|x| *x)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `shape.iter().cloned()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::map_clone)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/util.rs:35:9 [INFO] [stderr] | [INFO] [stderr] 35 | / build_rectangle(drone, [0.2, 0.2], [0.0, 0.0, 1.0]) [INFO] [stderr] 36 | | .iter() [INFO] [stderr] 37 | | .map(|x| *x), [INFO] [stderr] | |________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] help: Consider calling the dedicated `cloned` method [INFO] [stderr] | [INFO] [stderr] 35 | build_rectangle(drone, [0.2, 0.2], [0.0, 0.0, 1.0]) [INFO] [stderr] 36 | .iter().cloned(), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/util.rs:40:9 [INFO] [stderr] | [INFO] [stderr] 40 | / build_rectangle(animal, [0.2, 0.2], [0.0, 1.0, 0.0]) [INFO] [stderr] 41 | | .iter() [INFO] [stderr] 42 | | .map(|x| *x), [INFO] [stderr] | |________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] help: Consider calling the dedicated `cloned` method [INFO] [stderr] | [INFO] [stderr] 40 | build_rectangle(animal, [0.2, 0.2], [0.0, 1.0, 0.0]) [INFO] [stderr] 41 | .iter().cloned(), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/util.rs:45:9 [INFO] [stderr] | [INFO] [stderr] 45 | / build_rectangle(guess, [0.2, 0.2], [1.0, 0.0, 1.0]) [INFO] [stderr] 46 | | .iter() [INFO] [stderr] 47 | | .map(|x| *x), [INFO] [stderr] | |________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] help: Consider calling the dedicated `cloned` method [INFO] [stderr] | [INFO] [stderr] 45 | build_rectangle(guess, [0.2, 0.2], [1.0, 0.0, 1.0]) [INFO] [stderr] 46 | .iter().cloned(), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this if-then-else expression returns a bool literal [INFO] [stderr] --> src/window.rs:37:21 [INFO] [stderr] | [INFO] [stderr] 37 | / if input.state == ElementState::Pressed [INFO] [stderr] 38 | | && input.virtual_keycode == Some(VirtualKeyCode::Escape) [INFO] [stderr] 39 | | { [INFO] [stderr] 40 | | false [INFO] [stderr] ... | [INFO] [stderr] 43 | | true [INFO] [stderr] 44 | | } [INFO] [stderr] | |_____________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] help: you can reduce it to [INFO] [stderr] | [INFO] [stderr] 37 | !(input.state == ElementState::Pressed [INFO] [stderr] 38 | && input.virtual_keycode == Some(VirtualKeyCode::Escape)) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_particles` [INFO] [stderr] --> src/filter.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | pub fn get_particles(&self) -> &[T] { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `populate_filter` [INFO] [stderr] --> src/filter.rs:38:5 [INFO] [stderr] | [INFO] [stderr] 38 | / pub fn populate_filter(&mut self, func: F) [INFO] [stderr] 39 | | where [INFO] [stderr] 40 | | F: FnOnce(&mut Vec), [INFO] [stderr] 41 | | { [INFO] [stderr] 42 | | func(&mut self.particles); [INFO] [stderr] 43 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `reset` [INFO] [stderr] --> src/filter.rs:68:5 [INFO] [stderr] | [INFO] [stderr] 68 | / pub fn reset(&mut self, mut resampler: F) [INFO] [stderr] 69 | | where [INFO] [stderr] 70 | | F: FnMut() -> T, [INFO] [stderr] 71 | | { [INFO] [stderr] ... | [INFO] [stderr] 76 | | } [INFO] [stderr] 77 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `sum_weights` [INFO] [stderr] --> src/filter.rs:101:5 [INFO] [stderr] | [INFO] [stderr] 101 | pub fn sum_weights(&self) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `reset_uniformly` [INFO] [stderr] --> src/filter.rs:145:5 [INFO] [stderr] | [INFO] [stderr] 145 | pub fn reset_uniformly(&mut self, h_range: Range, v_range: Range) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `write_particle_pos` [INFO] [stderr] --> src/filter.rs:176:5 [INFO] [stderr] | [INFO] [stderr] 176 | pub fn write_particle_pos(&self, buffer: &mut [[f32; 2]]) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `update_particles` [INFO] [stderr] --> src/renderer/particle.rs:27:5 [INFO] [stderr] | [INFO] [stderr] 27 | pub fn update_particles(&mut self, filter: &Filter) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `update_filter` [INFO] [stderr] --> src/util.rs:11:1 [INFO] [stderr] | [INFO] [stderr] 11 | pub fn update_filter(filter: &mut Filter, drone: Vec2, animal: Vec2, stddev: f32) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `elipse_motion` [INFO] [stderr] --> src/util.rs:20:1 [INFO] [stderr] | [INFO] [stderr] 20 | pub fn elipse_motion(elapsed: f32, time: f32, vert: f32, horiz: f32, rate: f32) -> Vec2 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `update_renderer` [INFO] [stderr] --> src/util.rs:26:1 [INFO] [stderr] | [INFO] [stderr] 26 | / pub fn update_renderer( [INFO] [stderr] 27 | | display: &Display, [INFO] [stderr] 28 | | renderer: &mut ShapeRenderer, [INFO] [stderr] 29 | | drone: Vec2, [INFO] [stderr] ... | [INFO] [stderr] 49 | | renderer.update_buffer(display).unwrap(); [INFO] [stderr] 50 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `save_default_config` [INFO] [stderr] --> src/util.rs:52:1 [INFO] [stderr] | [INFO] [stderr] 52 | pub fn save_default_config() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: casting f32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/measurement.rs:10:32 [INFO] [stderr] | [INFO] [stderr] 10 | let value = 1.0 - erf::erf((score.abs() * FRAC_1_SQRT_2) as f64) as f32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(score.abs() * FRAC_1_SQRT_2)` [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 f32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/measurement.rs:16:35 [INFO] [stderr] | [INFO] [stderr] 16 | let normal = Normal::new(0.0, stddev as f64); [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `f64::from(stddev)` [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 are using an explicit closure for cloning elements [INFO] [stderr] --> src/renderer/point.rs:36:27 [INFO] [stderr] | [INFO] [stderr] 36 | self.add_vertices(shape.iter().map(|x| *x)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `shape.iter().cloned()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::map_clone)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/util.rs:35:9 [INFO] [stderr] | [INFO] [stderr] 35 | / build_rectangle(drone, [0.2, 0.2], [0.0, 0.0, 1.0]) [INFO] [stderr] 36 | | .iter() [INFO] [stderr] 37 | | .map(|x| *x), [INFO] [stderr] | |________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] help: Consider calling the dedicated `cloned` method [INFO] [stderr] | [INFO] [stderr] 35 | build_rectangle(drone, [0.2, 0.2], [0.0, 0.0, 1.0]) [INFO] [stderr] 36 | .iter().cloned(), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/util.rs:40:9 [INFO] [stderr] | [INFO] [stderr] 40 | / build_rectangle(animal, [0.2, 0.2], [0.0, 1.0, 0.0]) [INFO] [stderr] 41 | | .iter() [INFO] [stderr] 42 | | .map(|x| *x), [INFO] [stderr] | |________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] help: Consider calling the dedicated `cloned` method [INFO] [stderr] | [INFO] [stderr] 40 | build_rectangle(animal, [0.2, 0.2], [0.0, 1.0, 0.0]) [INFO] [stderr] 41 | .iter().cloned(), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/util.rs:45:9 [INFO] [stderr] | [INFO] [stderr] 45 | / build_rectangle(guess, [0.2, 0.2], [1.0, 0.0, 1.0]) [INFO] [stderr] 46 | | .iter() [INFO] [stderr] 47 | | .map(|x| *x), [INFO] [stderr] | |________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] help: Consider calling the dedicated `cloned` method [INFO] [stderr] | [INFO] [stderr] 45 | build_rectangle(guess, [0.2, 0.2], [1.0, 0.0, 1.0]) [INFO] [stderr] 46 | .iter().cloned(), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this if-then-else expression returns a bool literal [INFO] [stderr] --> src/window.rs:37:21 [INFO] [stderr] | [INFO] [stderr] 37 | / if input.state == ElementState::Pressed [INFO] [stderr] 38 | | && input.virtual_keycode == Some(VirtualKeyCode::Escape) [INFO] [stderr] 39 | | { [INFO] [stderr] 40 | | false [INFO] [stderr] ... | [INFO] [stderr] 43 | | true [INFO] [stderr] 44 | | } [INFO] [stderr] | |_____________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_bool [INFO] [stderr] help: you can reduce it to [INFO] [stderr] | [INFO] [stderr] 37 | !(input.state == ElementState::Pressed [INFO] [stderr] 38 | && input.virtual_keycode == Some(VirtualKeyCode::Escape)) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1m 11s [INFO] running `"docker" "inspect" "8c7a8fbd4fea6d6bb831c91475b006c49dfb422acad06b70970dcc2b6794f83d"` [INFO] running `"docker" "rm" "-f" "8c7a8fbd4fea6d6bb831c91475b006c49dfb422acad06b70970dcc2b6794f83d"` [INFO] [stdout] 8c7a8fbd4fea6d6bb831c91475b006c49dfb422acad06b70970dcc2b6794f83d