[INFO] cloning repository https://github.com/joaopsramos/graph-n1 [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/joaopsramos/graph-n1" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjoaopsramos%2Fgraph-n1", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjoaopsramos%2Fgraph-n1'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 161a6e77ecf0b9fef585b6473f557d06e98f4ff4 [INFO] linting joaopsramos/graph-n1 against nightly for clippy-nonminimal_bool-denied [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjoaopsramos%2Fgraph-n1" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/joaopsramos/graph-n1 [INFO] finished tweaking git repo https://github.com/joaopsramos/graph-n1 [INFO] tweaked toml for git repo https://github.com/joaopsramos/graph-n1 written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/joaopsramos/graph-n1 on toolchain nightly [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/joaopsramos/graph-n1 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded petgraph v0.6.2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 982ed0ab17045709278a652958cc6110e3f3abc6c6d445463c0310bbe9638fad [INFO] running `Command { std: "docker" "start" "-a" "982ed0ab17045709278a652958cc6110e3f3abc6c6d445463c0310bbe9638fad", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "982ed0ab17045709278a652958cc6110e3f3abc6c6d445463c0310bbe9638fad", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "982ed0ab17045709278a652958cc6110e3f3abc6c6d445463c0310bbe9638fad", kill_on_drop: false }` [INFO] [stdout] 982ed0ab17045709278a652958cc6110e3f3abc6c6d445463c0310bbe9638fad [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "clippy" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 49696ad2d8e0cceedb126d5575703c0e50717c89d5d5d02f6eaa3f7208151951 [INFO] running `Command { std: "docker" "start" "-a" "49696ad2d8e0cceedb126d5575703c0e50717c89d5d5d02f6eaa3f7208151951", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.43 [INFO] [stderr] Compiling unicode-ident v1.0.4 [INFO] [stderr] Compiling syn v1.0.100 [INFO] [stderr] Compiling libc v0.2.132 [INFO] [stderr] Compiling serde_derive v1.0.144 [INFO] [stderr] Compiling serde v1.0.144 [INFO] [stderr] Compiling serde_json v1.0.85 [INFO] [stderr] Checking itoa v1.0.3 [INFO] [stderr] Checking ryu v1.0.11 [INFO] [stderr] Compiling indexmap v1.9.1 [INFO] [stderr] Checking petgraph v0.6.2 [INFO] [stderr] Compiling quote v1.0.21 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking colored v2.0.0 [INFO] [stderr] Checking n1_project v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/feedback.rs:16:30 [INFO] [stdout] | [INFO] [stdout] 16 | pub fn cycle_read(cycle: &Vec) -> String { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 16 - pub fn cycle_read(cycle: &Vec) -> String { [INFO] [stdout] 16 + pub fn cycle_read(cycle: &[usize]) -> String { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/feedback.rs:91:9 [INFO] [stdout] | [INFO] [stdout] 91 | format!("Vértices disponíveis:") [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"Vértices disponíveis:".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] = note: `#[warn(clippy::useless_format)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/feedback.rs:192:9 [INFO] [stdout] | [INFO] [stdout] 192 | format!("A aresta informada não existe") [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"A aresta informada não existe".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/feedback.rs:16:30 [INFO] [stdout] | [INFO] [stdout] 16 | pub fn cycle_read(cycle: &Vec) -> String { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 16 - pub fn cycle_read(cycle: &Vec) -> String { [INFO] [stdout] 16 + pub fn cycle_read(cycle: &[usize]) -> String { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/feedback.rs:91:9 [INFO] [stdout] | [INFO] [stdout] 91 | format!("Vértices disponíveis:") [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"Vértices disponíveis:".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] = note: `#[warn(clippy::useless_format)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/feedback.rs:192:9 [INFO] [stdout] | [INFO] [stdout] 192 | format!("A aresta informada não existe") [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"A aresta informada não existe".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/graph.rs:90:35 [INFO] [stdout] | [INFO] [stdout] 90 | fn get_by_codes(&self, codes: &Vec) -> Vec<&Node> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 90 - fn get_by_codes(&self, codes: &Vec) -> Vec<&Node> { [INFO] [stdout] 90 + fn get_by_codes(&self, codes: &[usize]) -> Vec<&Node> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/graph.rs:140:9 [INFO] [stdout] | [INFO] [stdout] 140 | return None; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 140 - return None; [INFO] [stdout] 140 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/graph.rs:129:64 [INFO] [stdout] | [INFO] [stdout] 129 | let current_node_edges = self.find_connected_nodes(¤t_node); [INFO] [stdout] | ^^^^^^^^^^^^^ help: change this to: `current_node` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/graph.rs:158:9 [INFO] [stdout] | [INFO] [stdout] 158 | return true; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 158 - return true; [INFO] [stdout] 158 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/graph.rs:143:28 [INFO] [stdout] | [INFO] [stdout] 143 | pub fn is_cycle(codes: &Vec) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 143 ~ pub fn is_cycle(codes: &[usize]) -> bool { [INFO] [stdout] 144 | if codes.len() <= 2 || codes.first().unwrap() != codes.last().unwrap() { [INFO] [stdout] ... [INFO] [stdout] 147 | [INFO] [stdout] 148 ~ let mut unique_codes = codes.to_owned(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/graph.rs:181:16 [INFO] [stdout] | [INFO] [stdout] 181 | if !current_node_edges.iter().find(|c| *c == code).is_some() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `current_node_edges.iter().find(|c| *c == code).is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/graph.rs:162:28 [INFO] [stdout] | [INFO] [stdout] 162 | if !Self::is_cycle(&codes) { [INFO] [stdout] | ^^^^^^ help: change this to: `codes` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `match` expression can be replaced with `?` [INFO] [stdout] --> src/graph.rs:169:26 [INFO] [stdout] | [INFO] [stdout] 169 | let first_node = match self.find_by_code(*codes_iter.next().unwrap()) { [INFO] [stdout] | __________________________^ [INFO] [stdout] 170 | | Some(node) => node, [INFO] [stdout] 171 | | None => return None, [INFO] [stdout] 172 | | }; [INFO] [stdout] | |_________^ help: try instead: `self.find_by_code(*codes_iter.next().unwrap())?` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stdout] = note: `#[warn(clippy::question_mark)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `for` loop [INFO] [stdout] --> src/graph.rs:178:9 [INFO] [stdout] | [INFO] [stdout] 178 | while let Some(code) = codes_iter.next() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `for code in codes_iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_on_iterator [INFO] [stdout] = note: `#[warn(clippy::while_let_on_iterator)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/graph.rs:258:9 [INFO] [stdout] | [INFO] [stdout] 258 | return true; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 258 - return true; [INFO] [stdout] 258 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/graph.rs:236:37 [INFO] [stdout] | [INFO] [stdout] 236 | if !self.nodes.contains(&sub_node) { [INFO] [stdout] | ^^^^^^^^^ help: change this to: `sub_node` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/graph.rs:245:53 [INFO] [stdout] | [INFO] [stdout] 245 | if subgraph_node_codes.contains(&edge) { [INFO] [stdout] | ^^^^^ help: change this to: `edge` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/graph.rs:252:41 [INFO] [stdout] | [INFO] [stdout] 252 | if !node_edges.contains(&sub_node_edge) { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: change this to: `sub_node_edge` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/graph.rs:271:26 [INFO] [stdout] | [INFO] [stdout] 271 | string = format!("{string}"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `string.to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/graph.rs:286:40 [INFO] [stdout] | [INFO] [stdout] 286 | fn format_edges(weighted: bool, edges: &Vec) -> String { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 286 - fn format_edges(weighted: bool, edges: &Vec) -> String { [INFO] [stdout] 286 + fn format_edges(weighted: bool, edges: &[Edge]) -> String { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/graph.rs:90:35 [INFO] [stdout] | [INFO] [stdout] 90 | fn get_by_codes(&self, codes: &Vec) -> Vec<&Node> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 90 - fn get_by_codes(&self, codes: &Vec) -> Vec<&Node> { [INFO] [stdout] 90 + fn get_by_codes(&self, codes: &[usize]) -> Vec<&Node> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/graph.rs:301:18 [INFO] [stdout] | [INFO] [stdout] 301 | string = format!("{string}"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `string.to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/graph.rs:307:5 [INFO] [stdout] | [INFO] [stdout] 307 | format!("{string}") [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `string.to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/graph.rs:140:9 [INFO] [stdout] | [INFO] [stdout] 140 | return None; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 140 - return None; [INFO] [stdout] 140 + None [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/graph.rs:129:64 [INFO] [stdout] | [INFO] [stdout] 129 | let current_node_edges = self.find_connected_nodes(¤t_node); [INFO] [stdout] | ^^^^^^^^^^^^^ help: change this to: `current_node` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/graph.rs:158:9 [INFO] [stdout] | [INFO] [stdout] 158 | return true; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 158 - return true; [INFO] [stdout] 158 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/graph.rs:143:28 [INFO] [stdout] | [INFO] [stdout] 143 | pub fn is_cycle(codes: &Vec) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 143 ~ pub fn is_cycle(codes: &[usize]) -> bool { [INFO] [stdout] 144 | if codes.len() <= 2 || codes.first().unwrap() != codes.last().unwrap() { [INFO] [stdout] ... [INFO] [stdout] 147 | [INFO] [stdout] 148 ~ let mut unique_codes = codes.to_owned(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/graph.rs:181:16 [INFO] [stdout] | [INFO] [stdout] 181 | if !current_node_edges.iter().find(|c| *c == code).is_some() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `current_node_edges.iter().find(|c| *c == code).is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/graph.rs:162:28 [INFO] [stdout] | [INFO] [stdout] 162 | if !Self::is_cycle(&codes) { [INFO] [stdout] | ^^^^^^ help: change this to: `codes` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `match` expression can be replaced with `?` [INFO] [stdout] --> src/graph.rs:169:26 [INFO] [stdout] | [INFO] [stdout] 169 | let first_node = match self.find_by_code(*codes_iter.next().unwrap()) { [INFO] [stdout] | __________________________^ [INFO] [stdout] 170 | | Some(node) => node, [INFO] [stdout] 171 | | None => return None, [INFO] [stdout] 172 | | }; [INFO] [stdout] | |_________^ help: try instead: `self.find_by_code(*codes_iter.next().unwrap())?` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stdout] = note: `#[warn(clippy::question_mark)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `for` loop [INFO] [stdout] --> src/graph.rs:178:9 [INFO] [stdout] | [INFO] [stdout] 178 | while let Some(code) = codes_iter.next() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `for code in codes_iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_on_iterator [INFO] [stdout] = note: `#[warn(clippy::while_let_on_iterator)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/graph_builder.rs:63:45 [INFO] [stdout] | [INFO] [stdout] 63 | println!("{}", Feedback::value_read(&value, "Valor digitado")); [INFO] [stdout] | ^^^^^^ help: change this to: `value` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/graph.rs:258:9 [INFO] [stdout] | [INFO] [stdout] 258 | return true; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 258 - return true; [INFO] [stdout] 258 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/graph.rs:236:37 [INFO] [stdout] | [INFO] [stdout] 236 | if !self.nodes.contains(&sub_node) { [INFO] [stdout] | ^^^^^^^^^ help: change this to: `sub_node` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/graph.rs:245:53 [INFO] [stdout] | [INFO] [stdout] 245 | if subgraph_node_codes.contains(&edge) { [INFO] [stdout] | ^^^^^ help: change this to: `edge` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/graph.rs:252:41 [INFO] [stdout] | [INFO] [stdout] 252 | if !node_edges.contains(&sub_node_edge) { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: change this to: `sub_node_edge` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/graph.rs:271:26 [INFO] [stdout] | [INFO] [stdout] 271 | string = format!("{string}"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `string.to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/graph.rs:286:40 [INFO] [stdout] | [INFO] [stdout] 286 | fn format_edges(weighted: bool, edges: &Vec) -> String { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 286 - fn format_edges(weighted: bool, edges: &Vec) -> String { [INFO] [stdout] 286 + fn format_edges(weighted: bool, edges: &[Edge]) -> String { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/graph.rs:301:18 [INFO] [stdout] | [INFO] [stdout] 301 | string = format!("{string}"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `string.to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `print!()` with a format string that ends in a single newline [INFO] [stdout] --> src/graph_builder.rs:177:9 [INFO] [stdout] | [INFO] [stdout] 177 | print!("-----------------\n"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#print_with_newline [INFO] [stdout] = note: `#[warn(clippy::print_with_newline)]` on by default [INFO] [stdout] help: use `println!` instead [INFO] [stdout] | [INFO] [stdout] 177 - print!("-----------------\n"); [INFO] [stdout] 177 + println!("-----------------"); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/graph.rs:307:5 [INFO] [stdout] | [INFO] [stdout] 307 | format!("{string}") [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `string.to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/graph_builder.rs:63:45 [INFO] [stdout] | [INFO] [stdout] 63 | println!("{}", Feedback::value_read(&value, "Valor digitado")); [INFO] [stdout] | ^^^^^^ help: change this to: `value` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/graph_builder.rs:276:23 [INFO] [stdout] | [INFO] [stdout] 276 | fn node_exists(nodes: &Vec, code: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 276 - fn node_exists(nodes: &Vec, code: usize) -> bool { [INFO] [stdout] 276 + fn node_exists(nodes: &[Node], code: usize) -> bool { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/graph_builder.rs:280:23 [INFO] [stdout] | [INFO] [stdout] 280 | fn print_nodes(nodes: &Vec) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 280 - fn print_nodes(nodes: &Vec) { [INFO] [stdout] 280 + fn print_nodes(nodes: &[Node]) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/graph_exporter.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | f.push_str("}"); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `f.push('}')` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_add_str [INFO] [stdout] = note: `#[warn(clippy::single_char_add_str)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `print!()` with a format string that ends in a single newline [INFO] [stdout] --> src/graph_builder.rs:177:9 [INFO] [stdout] | [INFO] [stdout] 177 | print!("-----------------\n"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#print_with_newline [INFO] [stdout] = note: `#[warn(clippy::print_with_newline)]` on by default [INFO] [stdout] help: use `println!` instead [INFO] [stdout] | [INFO] [stdout] 177 - print!("-----------------\n"); [INFO] [stdout] 177 + println!("-----------------"); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/graph_builder.rs:276:23 [INFO] [stdout] | [INFO] [stdout] 276 | fn node_exists(nodes: &Vec, code: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 276 - fn node_exists(nodes: &Vec, code: usize) -> bool { [INFO] [stdout] 276 + fn node_exists(nodes: &[Node], code: usize) -> bool { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/graph_builder.rs:280:23 [INFO] [stdout] | [INFO] [stdout] 280 | fn print_nodes(nodes: &Vec) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 280 - fn print_nodes(nodes: &Vec) { [INFO] [stdout] 280 + fn print_nodes(nodes: &[Node]) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/menu.rs:117:28 [INFO] [stdout] | [INFO] [stdout] 117 | match parse_option(&option.trim()) { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: change this to: `option.trim()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/menu.rs:168:17 [INFO] [stdout] | [INFO] [stdout] 168 | _ => Ok(format!("i")), [INFO] [stdout] | ^^^^^^^^^^^^ help: consider using `.to_string()`: `"i".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling `push_str()` using a single-character string literal [INFO] [stdout] --> src/graph_exporter.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | f.push_str("}"); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: consider using `push` with a character literal: `f.push('}')` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_add_str [INFO] [stdout] = note: `#[warn(clippy::single_char_add_str)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/menu.rs:200:25 [INFO] [stdout] | [INFO] [stdout] 200 | if graph.has_buckle(&node) { [INFO] [stdout] | ^^^^^ help: change this to: `node` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/menu.rs:221:17 [INFO] [stdout] | [INFO] [stdout] 221 | None => return Ok(Feedback::no_path_found(node1.code, node2.code)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 221 - None => return Ok(Feedback::no_path_found(node1.code, node2.code)), [INFO] [stdout] 221 + None => Ok(Feedback::no_path_found(node1.code, node2.code)), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `print!()` with a format string that ends in a single newline [INFO] [stdout] --> src/menu.rs:214:5 [INFO] [stdout] | [INFO] [stdout] 214 | print!("\n"); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#print_with_newline [INFO] [stdout] help: use `println!` instead [INFO] [stdout] | [INFO] [stdout] 214 - print!("\n"); [INFO] [stdout] 214 + println!(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `print!()` with a format string that ends in a single newline [INFO] [stdout] --> src/menu.rs:227:5 [INFO] [stdout] | [INFO] [stdout] 227 | print!("\n"); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#print_with_newline [INFO] [stdout] help: use `println!` instead [INFO] [stdout] | [INFO] [stdout] 227 - print!("\n"); [INFO] [stdout] 227 + println!(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/menu.rs:117:28 [INFO] [stdout] | [INFO] [stdout] 117 | match parse_option(&option.trim()) { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: change this to: `option.trim()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/menu.rs:241:43 [INFO] [stdout] | [INFO] [stdout] 241 | .map(|x| format!("[{}] {}", x.code.to_string(), x.name)) [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] = note: `#[warn(clippy::to_string_in_format_args)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/menu.rs:168:17 [INFO] [stdout] | [INFO] [stdout] 168 | _ => Ok(format!("i")), [INFO] [stdout] | ^^^^^^^^^^^^ help: consider using `.to_string()`: `"i".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/menu.rs:200:25 [INFO] [stdout] | [INFO] [stdout] 200 | if graph.has_buckle(&node) { [INFO] [stdout] | ^^^^^ help: change this to: `node` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `print!()` with a format string that ends in a single newline [INFO] [stdout] --> src/menu.rs:296:5 [INFO] [stdout] | [INFO] [stdout] 296 | print!("\n"); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#print_with_newline [INFO] [stdout] help: use `println!` instead [INFO] [stdout] | [INFO] [stdout] 296 - print!("\n"); [INFO] [stdout] 296 + println!(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/menu.rs:221:17 [INFO] [stdout] | [INFO] [stdout] 221 | None => return Ok(Feedback::no_path_found(node1.code, node2.code)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 221 - None => return Ok(Feedback::no_path_found(node1.code, node2.code)), [INFO] [stdout] 221 + None => Ok(Feedback::no_path_found(node1.code, node2.code)), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `print!()` with a format string that ends in a single newline [INFO] [stdout] --> src/menu.rs:214:5 [INFO] [stdout] | [INFO] [stdout] 214 | print!("\n"); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#print_with_newline [INFO] [stdout] help: use `println!` instead [INFO] [stdout] | [INFO] [stdout] 214 - print!("\n"); [INFO] [stdout] 214 + println!(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `print!()` with a format string that ends in a single newline [INFO] [stdout] --> src/menu.rs:227:5 [INFO] [stdout] | [INFO] [stdout] 227 | print!("\n"); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#print_with_newline [INFO] [stdout] help: use `println!` instead [INFO] [stdout] | [INFO] [stdout] 227 - print!("\n"); [INFO] [stdout] 227 + println!(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `to_string` applied to a type that implements `Display` in `format!` args [INFO] [stdout] --> src/menu.rs:241:43 [INFO] [stdout] | [INFO] [stdout] 241 | .map(|x| format!("[{}] {}", x.code.to_string(), x.name)) [INFO] [stdout] | ^^^^^^^^^^^^ help: remove this [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args [INFO] [stdout] = note: `#[warn(clippy::to_string_in_format_args)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `print!()` with a format string that ends in a single newline [INFO] [stdout] --> src/menu.rs:317:9 [INFO] [stdout] | [INFO] [stdout] 317 | print!("\n") [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#print_with_newline [INFO] [stdout] help: use `println!` instead [INFO] [stdout] | [INFO] [stdout] 317 - print!("\n") [INFO] [stdout] 317 + println!() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `print!()` with a format string that ends in a single newline [INFO] [stdout] --> src/menu.rs:352:5 [INFO] [stdout] | [INFO] [stdout] 352 | print!("\n"); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#print_with_newline [INFO] [stdout] help: use `println!` instead [INFO] [stdout] | [INFO] [stdout] 352 - print!("\n"); [INFO] [stdout] 352 + println!(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `print!()` with a format string that ends in a single newline [INFO] [stdout] --> src/menu.rs:296:5 [INFO] [stdout] | [INFO] [stdout] 296 | print!("\n"); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#print_with_newline [INFO] [stdout] help: use `println!` instead [INFO] [stdout] | [INFO] [stdout] 296 - print!("\n"); [INFO] [stdout] 296 + println!(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `print!()` with a format string that ends in a single newline [INFO] [stdout] --> src/menu.rs:317:9 [INFO] [stdout] | [INFO] [stdout] 317 | print!("\n") [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#print_with_newline [INFO] [stdout] help: use `println!` instead [INFO] [stdout] | [INFO] [stdout] 317 - print!("\n") [INFO] [stdout] 317 + println!() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `print!()` with a format string that ends in a single newline [INFO] [stdout] --> src/menu.rs:352:5 [INFO] [stdout] | [INFO] [stdout] 352 | print!("\n"); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#print_with_newline [INFO] [stdout] help: use `println!` instead [INFO] [stdout] | [INFO] [stdout] 352 - print!("\n"); [INFO] [stdout] 352 + println!(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `print!()` with a format string that ends in a single newline [INFO] [stdout] --> src/main.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | print!("\n"); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#print_with_newline [INFO] [stdout] help: use `println!` instead [INFO] [stdout] | [INFO] [stdout] 36 - print!("\n"); [INFO] [stdout] 36 + println!(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `print!()` with a format string that ends in a single newline [INFO] [stdout] --> src/main.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | print!("\n"); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#print_with_newline [INFO] [stdout] help: use `println!` instead [INFO] [stdout] | [INFO] [stdout] 36 - print!("\n"); [INFO] [stdout] 36 + println!(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 15.39s [INFO] running `Command { std: "docker" "inspect" "49696ad2d8e0cceedb126d5575703c0e50717c89d5d5d02f6eaa3f7208151951", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "49696ad2d8e0cceedb126d5575703c0e50717c89d5d5d02f6eaa3f7208151951", kill_on_drop: false }` [INFO] [stdout] 49696ad2d8e0cceedb126d5575703c0e50717c89d5d5d02f6eaa3f7208151951