[INFO] cloning repository https://github.com/danny270793/Git-Manager [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/danny270793/Git-Manager" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdanny270793%2FGit-Manager", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdanny270793%2FGit-Manager'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] c58473d245089ec4d46798cab83976b8332ed03a [INFO] linting danny270793/Git-Manager against nightly for clippy-nonminimal_bool-denied [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdanny270793%2FGit-Manager" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/danny270793/Git-Manager [INFO] finished tweaking git repo https://github.com/danny270793/Git-Manager [INFO] tweaked toml for git repo https://github.com/danny270793/Git-Manager written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/danny270793/Git-Manager 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/danny270793/Git-Manager 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] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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] 4e35d51cea72dd13d25137426bd6010893dd554b00a2332b890dd20ce693c21a [INFO] running `Command { std: "docker" "start" "-a" "4e35d51cea72dd13d25137426bd6010893dd554b00a2332b890dd20ce693c21a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "4e35d51cea72dd13d25137426bd6010893dd554b00a2332b890dd20ce693c21a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4e35d51cea72dd13d25137426bd6010893dd554b00a2332b890dd20ce693c21a", kill_on_drop: false }` [INFO] [stdout] 4e35d51cea72dd13d25137426bd6010893dd554b00a2332b890dd20ce693c21a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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] 9bc746b5e0c90497d9c89c560a157a2ce333c0fb6d7f75b40f40c25b0f281d24 [INFO] running `Command { std: "docker" "start" "-a" "9bc746b5e0c90497d9c89c560a157a2ce333c0fb6d7f75b40f40c25b0f281d24", kill_on_drop: false }` [INFO] [stderr] Checking git-manager v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: function `get_files` is never used [INFO] [stdout] --> src/directory.rs:60:8 [INFO] [stdout] | [INFO] [stdout] 60 | pub fn get_files(path: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print` is never used [INFO] [stdout] --> src/table.rs:44:8 [INFO] [stdout] | [INFO] [stdout] 44 | pub fn print(rows: &Vec>) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_headers_from` is never used [INFO] [stdout] --> src/table.rs:49:4 [INFO] [stdout] | [INFO] [stdout] 49 | fn get_headers_from(rows: &Vec>) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/directory.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | return format!("{:.2} b", size); [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] 7 - return format!("{:.2} b", size); [INFO] [stdout] 7 + format!("{:.2} b", size) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/directory.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | return format!("{:.2} Kb", size as f64 / 1024.0); [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] 9 - return format!("{:.2} Kb", size as f64 / 1024.0); [INFO] [stdout] 9 + format!("{:.2} Kb", size as f64 / 1024.0) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/directory.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | return format!("{:.2} Mb", size as f64 / 1024.0 / 1024.0); [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] 11 - return format!("{:.2} Mb", size as f64 / 1024.0 / 1024.0); [INFO] [stdout] 11 + format!("{:.2} Mb", size as f64 / 1024.0 / 1024.0) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/directory.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | return format!("{:.2} Gb", size as f64 / 1024.0 / 1024.0 / 1024.0); [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] 13 - return format!("{:.2} Gb", size as f64 / 1024.0 / 1024.0 / 1024.0); [INFO] [stdout] 13 + format!("{:.2} Gb", size as f64 / 1024.0 / 1024.0 / 1024.0) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/directory.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 15 | return format!("{:.2} Tb", size as f64 / 1024.0 / 1024.0 / 1024.0 / 1024.0); [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] 15 - return format!("{:.2} Tb", size as f64 / 1024.0 / 1024.0 / 1024.0 / 1024.0); [INFO] [stdout] 15 + format!("{:.2} Tb", size as f64 / 1024.0 / 1024.0 / 1024.0 / 1024.0) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_files` is never used [INFO] [stdout] --> src/directory.rs:60:8 [INFO] [stdout] | [INFO] [stdout] 60 | pub fn get_files(path: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print` is never used [INFO] [stdout] --> src/table.rs:44:8 [INFO] [stdout] | [INFO] [stdout] 44 | pub fn print(rows: &Vec>) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_headers_from` is never used [INFO] [stdout] --> src/table.rs:49:4 [INFO] [stdout] | [INFO] [stdout] 49 | fn get_headers_from(rows: &Vec>) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::fs::ReadDir` [INFO] [stdout] --> src/directory.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | / fs::read_dir(path) [INFO] [stdout] 45 | | .unwrap() [INFO] [stdout] 46 | | .into_iter() [INFO] [stdout] | |____________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] = note: `#[warn(clippy::useless_conversion)]` on by default [INFO] [stdout] help: consider removing `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 44 ~ fs::read_dir(path) [INFO] [stdout] 45 + .unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::fs::ReadDir` [INFO] [stdout] --> src/directory.rs:62:5 [INFO] [stdout] | [INFO] [stdout] 62 | / fs::read_dir(path) [INFO] [stdout] 63 | | .unwrap() [INFO] [stdout] 64 | | .into_iter() [INFO] [stdout] | |____________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] help: consider removing `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 62 ~ fs::read_dir(path) [INFO] [stdout] 63 + .unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/directory.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | return format!("{:.2} b", size); [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] 7 - return format!("{:.2} b", size); [INFO] [stdout] 7 + format!("{:.2} b", size) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/directory.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | return format!("{:.2} Kb", size as f64 / 1024.0); [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] 9 - return format!("{:.2} Kb", size as f64 / 1024.0); [INFO] [stdout] 9 + format!("{:.2} Kb", size as f64 / 1024.0) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/directory.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | return format!("{:.2} Mb", size as f64 / 1024.0 / 1024.0); [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] 11 - return format!("{:.2} Mb", size as f64 / 1024.0 / 1024.0); [INFO] [stdout] 11 + format!("{:.2} Mb", size as f64 / 1024.0 / 1024.0) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/directory.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | return format!("{:.2} Gb", size as f64 / 1024.0 / 1024.0 / 1024.0); [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] 13 - return format!("{:.2} Gb", size as f64 / 1024.0 / 1024.0 / 1024.0); [INFO] [stdout] 13 + format!("{:.2} Gb", size as f64 / 1024.0 / 1024.0 / 1024.0) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/directory.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 15 | return format!("{:.2} Tb", size as f64 / 1024.0 / 1024.0 / 1024.0 / 1024.0); [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] 15 - return format!("{:.2} Tb", size as f64 / 1024.0 / 1024.0 / 1024.0 / 1024.0); [INFO] [stdout] 15 + format!("{:.2} Tb", size as f64 / 1024.0 / 1024.0 / 1024.0 / 1024.0) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::fs::ReadDir` [INFO] [stdout] --> src/directory.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | / fs::read_dir(path) [INFO] [stdout] 81 | | .unwrap() [INFO] [stdout] 82 | | .into_iter() [INFO] [stdout] | |____________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] help: consider removing `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 80 ~ fs::read_dir(path) [INFO] [stdout] 81 + .unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/directory.rs:90:20 [INFO] [stdout] | [INFO] [stdout] 90 | if !link.is_ok() && metadata.is_dir() { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `link.is_err()` [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 `if` has identical blocks [INFO] [stdout] --> src/git.rs:56:56 [INFO] [stdout] | [INFO] [stdout] 56 | } else if output.contains("your branch is up") { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 57 | | return NOTHING_TO_COMMIT.to_string(); [INFO] [stdout] 58 | | } else if output.contains("nothing to commit") { [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] note: same as this [INFO] [stdout] --> src/git.rs:58:56 [INFO] [stdout] | [INFO] [stdout] 58 | } else if output.contains("nothing to commit") { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 59 | | return NOTHING_TO_COMMIT.to_string(); [INFO] [stdout] 60 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stdout] = note: `#[warn(clippy::if_same_then_else)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/table.rs:7:33 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn print_with_headers(rows: &Vec>, headers: &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] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 7 - pub fn print_with_headers(rows: &Vec>, headers: &Vec) { [INFO] [stdout] 7 + pub fn print_with_headers(rows: &[collections::HashMap], headers: &Vec) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/table.rs:34:21 [INFO] [stdout] | [INFO] [stdout] 34 | print_separator(&headers, &sizes); [INFO] [stdout] | ^^^^^^^^ help: change this to: `headers` [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: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/table.rs:35:16 [INFO] [stdout] | [INFO] [stdout] 35 | print_line(&headers, &sizes, &headers_map); [INFO] [stdout] | ^^^^^^^^ help: change this to: `headers` [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/table.rs:38:29 [INFO] [stdout] | [INFO] [stdout] 38 | print_separator(&headers, &sizes); [INFO] [stdout] | ^^^^^^^^ help: change this to: `headers` [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/table.rs:39:24 [INFO] [stdout] | [INFO] [stdout] 39 | print_line(&headers, &sizes, row); [INFO] [stdout] | ^^^^^^^^ help: change this to: `headers` [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/table.rs:41:21 [INFO] [stdout] | [INFO] [stdout] 41 | print_separator(&headers, &sizes); [INFO] [stdout] | ^^^^^^^^ help: change this to: `headers` [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/table.rs:45:49 [INFO] [stdout] | [INFO] [stdout] 45 | let headers: Vec = get_headers_from(&rows); [INFO] [stdout] | ^^^^^ help: change this to: `rows` [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/table.rs:46:24 [INFO] [stdout] | [INFO] [stdout] 46 | print_with_headers(&rows, &headers); [INFO] [stdout] | ^^^^^ help: change this to: `rows` [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/table.rs:49:27 [INFO] [stdout] | [INFO] [stdout] 49 | fn get_headers_from(rows: &Vec>) -> 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] 49 - fn get_headers_from(rows: &Vec>) -> Vec { [INFO] [stdout] 49 + fn get_headers_from(rows: &[collections::HashMap]) -> Vec { [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/table.rs:63:14 [INFO] [stdout] | [INFO] [stdout] 63 | headers: &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] 63 - headers: &Vec, [INFO] [stdout] 63 + headers: &[String], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::fs::ReadDir` [INFO] [stdout] --> src/directory.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | / fs::read_dir(path) [INFO] [stdout] 45 | | .unwrap() [INFO] [stdout] 46 | | .into_iter() [INFO] [stdout] | |____________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] = note: `#[warn(clippy::useless_conversion)]` on by default [INFO] [stdout] help: consider removing `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 44 ~ fs::read_dir(path) [INFO] [stdout] 45 + .unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::fs::ReadDir` [INFO] [stdout] --> src/directory.rs:62:5 [INFO] [stdout] | [INFO] [stdout] 62 | / fs::read_dir(path) [INFO] [stdout] 63 | | .unwrap() [INFO] [stdout] 64 | | .into_iter() [INFO] [stdout] | |____________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] help: consider removing `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 62 ~ fs::read_dir(path) [INFO] [stdout] 63 + .unwrap() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: empty string literal in `println!` [INFO] [stdout] --> src/table.rs:81:5 [INFO] [stdout] | [INFO] [stdout] 81 | println!(""); [INFO] [stdout] | ^^^^^^^^^--^ [INFO] [stdout] | | [INFO] [stdout] | help: remove the empty string [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stdout] = note: `#[warn(clippy::println_empty_string)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::fs::ReadDir` [INFO] [stdout] --> src/directory.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | / fs::read_dir(path) [INFO] [stdout] 81 | | .unwrap() [INFO] [stdout] 82 | | .into_iter() [INFO] [stdout] | |____________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] help: consider removing `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 80 ~ fs::read_dir(path) [INFO] [stdout] 81 + .unwrap() [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/table.rs:84:29 [INFO] [stdout] | [INFO] [stdout] 84 | fn print_separator(headers: &Vec, sizes: &collections::HashMap) { [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] 84 - fn print_separator(headers: &Vec, sizes: &collections::HashMap) { [INFO] [stdout] 84 + fn print_separator(headers: &[String], sizes: &collections::HashMap) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: empty string literal in `println!` [INFO] [stdout] --> src/table.rs:98:5 [INFO] [stdout] | [INFO] [stdout] 98 | println!(""); [INFO] [stdout] | ^^^^^^^^^--^ [INFO] [stdout] | | [INFO] [stdout] | help: remove the empty string [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/directory.rs:90:20 [INFO] [stdout] | [INFO] [stdout] 90 | if !link.is_ok() && metadata.is_dir() { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `link.is_err()` [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 `if` has identical blocks [INFO] [stdout] --> src/git.rs:56:56 [INFO] [stdout] | [INFO] [stdout] 56 | } else if output.contains("your branch is up") { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 57 | | return NOTHING_TO_COMMIT.to_string(); [INFO] [stdout] 58 | | } else if output.contains("nothing to commit") { [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] note: same as this [INFO] [stdout] --> src/git.rs:58:56 [INFO] [stdout] | [INFO] [stdout] 58 | } else if output.contains("nothing to commit") { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 59 | | return NOTHING_TO_COMMIT.to_string(); [INFO] [stdout] 60 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stdout] = note: `#[warn(clippy::if_same_then_else)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/table.rs:7:33 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn print_with_headers(rows: &Vec>, headers: &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] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 7 - pub fn print_with_headers(rows: &Vec>, headers: &Vec) { [INFO] [stdout] 7 + pub fn print_with_headers(rows: &[collections::HashMap], headers: &Vec) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/table.rs:34:21 [INFO] [stdout] | [INFO] [stdout] 34 | print_separator(&headers, &sizes); [INFO] [stdout] | ^^^^^^^^ help: change this to: `headers` [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: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/table.rs:35:16 [INFO] [stdout] | [INFO] [stdout] 35 | print_line(&headers, &sizes, &headers_map); [INFO] [stdout] | ^^^^^^^^ help: change this to: `headers` [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/table.rs:38:29 [INFO] [stdout] | [INFO] [stdout] 38 | print_separator(&headers, &sizes); [INFO] [stdout] | ^^^^^^^^ help: change this to: `headers` [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/table.rs:39:24 [INFO] [stdout] | [INFO] [stdout] 39 | print_line(&headers, &sizes, row); [INFO] [stdout] | ^^^^^^^^ help: change this to: `headers` [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/table.rs:41:21 [INFO] [stdout] | [INFO] [stdout] 41 | print_separator(&headers, &sizes); [INFO] [stdout] | ^^^^^^^^ help: change this to: `headers` [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/table.rs:45:49 [INFO] [stdout] | [INFO] [stdout] 45 | let headers: Vec = get_headers_from(&rows); [INFO] [stdout] | ^^^^^ help: change this to: `rows` [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/table.rs:46:24 [INFO] [stdout] | [INFO] [stdout] 46 | print_with_headers(&rows, &headers); [INFO] [stdout] | ^^^^^ help: change this to: `rows` [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/table.rs:49:27 [INFO] [stdout] | [INFO] [stdout] 49 | fn get_headers_from(rows: &Vec>) -> 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] 49 - fn get_headers_from(rows: &Vec>) -> Vec { [INFO] [stdout] 49 + fn get_headers_from(rows: &[collections::HashMap]) -> Vec { [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/table.rs:63:14 [INFO] [stdout] | [INFO] [stdout] 63 | headers: &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] 63 - headers: &Vec, [INFO] [stdout] 63 + headers: &[String], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: empty string literal in `println!` [INFO] [stdout] --> src/table.rs:81:5 [INFO] [stdout] | [INFO] [stdout] 81 | println!(""); [INFO] [stdout] | ^^^^^^^^^--^ [INFO] [stdout] | | [INFO] [stdout] | help: remove the empty string [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stdout] = note: `#[warn(clippy::println_empty_string)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/table.rs:84:29 [INFO] [stdout] | [INFO] [stdout] 84 | fn print_separator(headers: &Vec, sizes: &collections::HashMap) { [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] 84 - fn print_separator(headers: &Vec, sizes: &collections::HashMap) { [INFO] [stdout] 84 + fn print_separator(headers: &[String], sizes: &collections::HashMap) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: empty string literal in `println!` [INFO] [stdout] --> src/table.rs:98:5 [INFO] [stdout] | [INFO] [stdout] 98 | println!(""); [INFO] [stdout] | ^^^^^^^^^--^ [INFO] [stdout] | | [INFO] [stdout] | help: remove the empty string [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.25s [INFO] running `Command { std: "docker" "inspect" "9bc746b5e0c90497d9c89c560a157a2ce333c0fb6d7f75b40f40c25b0f281d24", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9bc746b5e0c90497d9c89c560a157a2ce333c0fb6d7f75b40f40c25b0f281d24", kill_on_drop: false }` [INFO] [stdout] 9bc746b5e0c90497d9c89c560a157a2ce333c0fb6d7f75b40f40c25b0f281d24