clippy
22 warnings
Details
Results
Message level | Amount |
---|---|
Internal compiler error | 0 |
Error | 0 |
Warning | 22 |
Note | 0 |
Help | 0 |
Versions
- rustc 1.72.0 (5680fa18f 2023-08-23)
- cargo 1.72.0 (103a7ff2e 2023-08-15)
- clippy 0.1.72 (5680fa1 2023-08-23)
Annotations
Check warning on line 1 in src/main.rs
github-actions / clippy
unused import: `std::env`
warning: unused import: `std::env`
--> src/main.rs:1:5
|
1 | use std::env;
| ^^^^^^^^
|
= note: `#[warn(unused_imports)]` on by default
Check warning on line 555 in src/lib.rs
github-actions / clippy
this function has too many lines (122/100)
warning: this function has too many lines (122/100)
--> src/lib.rs:411:1
|
411 | / pub fn run(config: &Config) -> Result<(), Box<dyn Error>> {
412 | | //Coloring function
413 | | let mut coloring_function = COLORING_FUNCTION;
414 | | //Color channel mapping
... |
554 | | Ok(())
555 | | }
| |_^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_lines
Check warning on line 345 in src/lib.rs
github-actions / clippy
consider adding a `;` to the last statement for consistent formatting
warning: consider adding a `;` to the last statement for consistent formatting
--> src/lib.rs:345:13
|
345 | self.previous.store(current, Ordering::Relaxed)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add a `;` here: `self.previous.store(current, Ordering::Relaxed);`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#semicolon_if_nothing_returned
Check warning on line 255 in src/lib.rs
github-actions / clippy
consider adding a `;` to the last statement for consistent formatting
warning: consider adding a `;` to the last statement for consistent formatting
--> src/lib.rs:255:17
|
255 | println!("translation_amount: {}", MandelbrotModel::get_instance().vars.translation_amount)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add a `;` here: `println!("translation_amount: {}", MandelbrotModel::get_instance().vars.translation_amount);`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#semicolon_if_nothing_returned
Check warning on line 241 in src/lib.rs
github-actions / clippy
consider adding a `;` to the last statement for consistent formatting
warning: consider adding a `;` to the last statement for consistent formatting
--> src/lib.rs:238:17
|
238 | / *coloring_function = pick_option(&[
239 | | ("HSV", TrueColor::new_from_hsv_colors),
240 | | ("Bernstein polynomials", TrueColor::new_from_bernstein_polynomials),
241 | | ])
| |__________________^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#semicolon_if_nothing_returned
= note: `#[warn(clippy::semicolon_if_nothing_returned)]` implied by `#[warn(clippy::pedantic)]`
help: add a `;` here
|
238 ~ *coloring_function = pick_option(&[
239 + ("HSV", TrueColor::new_from_hsv_colors),
240 + ("Bernstein polynomials", TrueColor::new_from_bernstein_polynomials),
241 + ]);
|
Check warning on line 213 in src/lib.rs
github-actions / clippy
strict comparison of `f32` or `f64`
warning: strict comparison of `f32` or `f64`
--> src/lib.rs:213:20
|
213 | if config.window_scale == 1.0 {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider comparing them within some margin of error: `(config.window_scale - 1.0).abs() < error_margin`
|
= note: `f32::EPSILON` and `f64::EPSILON` are available for the `error_margin`
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp
= note: `#[warn(clippy::float_cmp)]` implied by `#[warn(clippy::pedantic)]`
Check warning on line 287 in src/lib.rs
github-actions / clippy
this function has too many lines (143/100)
warning: this function has too many lines (143/100)
--> src/lib.rs:132:1
|
132 | / fn handle_key_events(
133 | | window: &Window,
134 | | c: &mut ComplexPlane,
135 | | p: &mut PixelBuffer,
... |
286 | | }
287 | | }
| |_^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_lines
= note: `#[warn(clippy::too_many_lines)]` implied by `#[warn(clippy::pedantic)]`
Check warning on line 143 in src/lib.rs
github-actions / clippy
this function has too many arguments (10/7)
warning: this function has too many arguments (10/7)
--> src/lib.rs:132:1
|
132 | / fn handle_key_events(
133 | | window: &Window,
134 | | c: &mut ComplexPlane,
135 | | p: &mut PixelBuffer,
... |
142 | | config: &Config,
143 | | ) {
| |__^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments
= note: `#[warn(clippy::too_many_arguments)]` implied by `#[warn(clippy::complexity)]`
Check warning on line 123 in src/view/coloring.rs
github-actions / clippy
docs for function which may panic missing `# Panics` section
warning: docs for function which may panic missing `# Panics` section
--> src/view/coloring.rs:123:5
|
123 | pub fn get_color(&self, color: char) -> u8 {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
note: first possible panic found here
--> src/view/coloring.rs:124:9
|
124 | / assert!(
125 | | color == 'R' || color == 'G' || color == 'B',
126 | | "Error: color should be equal to R, G, or B, color = {}",
127 | | color
128 | | );
| |_________^
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_panics_doc
Check warning on line 43 in src/view/coloring.rs
github-actions / clippy
docs for function returning `Result` missing `# Errors` section
warning: docs for function returning `Result` missing `# Errors` section
--> src/view/coloring.rs:43:5
|
43 | pub fn new(r_g_b: &str) -> Result<ColorChannelMapping, String> {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
= note: `#[warn(clippy::missing_errors_doc)]` implied by `#[warn(clippy::pedantic)]`
Check warning on line 10 in src/view/coloring.rs
github-actions / clippy
item in documentation is missing backticks
warning: item in documentation is missing backticks
--> src/view/coloring.rs:10:10
|
10 | /// E.g: Ok(ColorChannelMapping::BGR) means that red will get the value of blue, green the value of green, and blue the value of red:
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_markdown
help: try
|
10 | /// E.g: `Ok(ColorChannelMapping::BGR`) means that red will get the value of blue, green the value of green, and blue the value of red:
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Check warning on line 8 in src/view/coloring.rs
github-actions / clippy
item in documentation is missing backticks
warning: item in documentation is missing backticks
--> src/view/coloring.rs:8:19
|
8 | ///A mapping from ColorChannelMapping -> RGB, the first character denotes the new red channel, the second character the new green channel,
| ^^^^^^^^^^^^^^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_markdown
help: try
|
8 | ///A mapping from `ColorChannelMapping` -> RGB, the first character denotes the new red channel, the second character the new green channel,
| ~~~~~~~~~~~~~~~~~~~~~
Check warning on line 114 in src/model/rendering.rs
github-actions / clippy
the function has a cognitive complexity of (7/5)
warning: the function has a cognitive complexity of (7/5)
--> src/model/rendering.rs:114:41
|
114 | let handle = thread::spawn(move || {
| ^^
|
= help: you could split it up into multiple smaller functions
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cognitive_complexity
note: the lint level is defined here
--> src/lib.rs:4:5
|
4 | clippy::nursery,
| ^^^^^^^^^^^^^^^
= note: `#[warn(clippy::cognitive_complexity)]` implied by `#[warn(clippy::nursery)]`
Check warning on line 41 in src/model/mandelbrot_model.rs
github-actions / clippy
docs for function which may panic missing `# Panics` section
warning: docs for function which may panic missing `# Panics` section
--> src/model/mandelbrot_model.rs:41:5
|
41 | pub fn get_instance() -> MutexGuard<'static, MandelbrotModel> {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
note: first possible panic found here
--> src/model/mandelbrot_model.rs:42:9
|
42 | MANDELBROT_MODEL_INSTANCE.lock().unwrap()
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_panics_doc
Check warning on line 40 in src/model/mandelbrot_model.rs
github-actions / clippy
item in documentation is missing backticks
warning: item in documentation is missing backticks
--> src/model/mandelbrot_model.rs:40:31
|
40 | /// Returns the singleton MandelbrotModel instance.
| ^^^^^^^^^^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_markdown
= note: `#[warn(clippy::doc_markdown)]` implied by `#[warn(clippy::pedantic)]`
help: try
|
40 | /// Returns the singleton `MandelbrotModel` instance.
| ~~~~~~~~~~~~~~~~~
Check warning on line 31 in src/model/mandelbrot_model.rs
github-actions / clippy
using `clone` on type `Config` which implements the `Copy` trait
warning: using `clone` on type `Config` which implements the `Copy` trait
--> src/model/mandelbrot_model.rs:31:21
|
31 | config: config.clone(),
| ^^^^^^^^^^^^^^ help: try removing the `clone` call: `config`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy
note: the lint level is defined here
--> src/lib.rs:9:5
|
9 | clippy::complexity
| ^^^^^^^^^^^^^^^^^^
= note: `#[warn(clippy::clone_on_copy)]` implied by `#[warn(clippy::complexity)]`
Check warning on line 38 in src/model/mandelbrot_model.rs
github-actions / clippy
you should consider adding a `Default` implementation for `MandelbrotModel`
warning: you should consider adding a `Default` implementation for `MandelbrotModel`
--> src/model/mandelbrot_model.rs:25:5
|
25 | / pub fn new() -> MandelbrotModel {
26 | | let config = Config::build(env::args()).unwrap_or_else(|err| {
27 | | eprintln!("Problem parsing arguments: {}", err);
28 | | process::exit(1);
... |
37 | | }
38 | | }
| |_____^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default
help: try adding this
|
24 + impl Default for MandelbrotModel {
25 + fn default() -> Self {
26 + Self::new()
27 + }
28 + }
|
Check warning on line 31 in src/controller/user_input.rs
github-actions / clippy
docs for function which may panic missing `# Panics` section
warning: docs for function which may panic missing `# Panics` section
--> src/controller/user_input.rs:31:1
|
31 | pub fn get_user_input_untrimmed() -> String {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
note: first possible panic found here
--> src/controller/user_input.rs:34:5
|
34 | / io::stdin()
35 | | .read_line(&mut user_input)
36 | | .expect("Error: Failed to read the user's input from stdin.");
| |_____________________________________________________________________^
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_panics_doc
note: the lint level is defined here
--> src/lib.rs:3:5
|
3 | clippy::pedantic,
| ^^^^^^^^^^^^^^^^
= note: `#[warn(clippy::missing_panics_doc)]` implied by `#[warn(clippy::pedantic)]`
Check warning on line 43 in src/controller/config.rs
github-actions / clippy
you should consider adding a `Default` implementation for `Config`
warning: you should consider adding a `Default` implementation for `Config`
--> src/controller/config.rs:32:5
|
32 | / pub fn new() -> Config {
33 | | Config {
34 | | window_width: WIDTH,
35 | | window_height: HEIGHT,
... |
42 | | }
43 | | }
| |_____^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default
note: the lint level is defined here
--> src/lib.rs:2:5
|
2 | clippy::all,
| ^^^^^^^^^^^
= note: `#[warn(clippy::new_without_default)]` implied by `#[warn(clippy::all)]`
help: try adding this
|
31 + impl Default for Config {
32 + fn default() -> Self {
33 + Self::new()
34 + }
35 + }
|
Check warning on line 56 in src/lib.rs
github-actions / clippy
static `COLOR_CHANNEL_MAPPING` is never used
warning: static `COLOR_CHANNEL_MAPPING` is never used
--> src/lib.rs:56:8
|
56 | static COLOR_CHANNEL_MAPPING: ColorChannelMapping = ColorChannelMapping::RGB;
| ^^^^^^^^^^^^^^^^^^^^^
|
= note: `#[warn(dead_code)]` on by default
Check warning on line 293 in src/lib.rs
github-actions / clippy
unused variable: `c`
warning: unused variable: `c`
--> src/lib.rs:293:46
|
293 | fn handle_left_mouse_clicked(x: f32, y: f32, c: &ComplexPlane) {
| ^ help: if this is intentional, prefix it with an underscore: `_c`
Check warning on line 137 in src/lib.rs
github-actions / clippy
unused variable: `vars`
warning: unused variable: `vars`
--> src/lib.rs:137:5
|
137 | vars: &mut InteractionVariables,
| ^^^^ help: if this is intentional, prefix it with an underscore: `_vars`
|
= note: `#[warn(unused_variables)]` on by default