[INFO] cloning repository https://github.com/drtino7/snake_game [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/drtino7/snake_game" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdrtino7%2Fsnake_game", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdrtino7%2Fsnake_game'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 278a57fa58c67e70b6c5ce8c2bed1a15acb86d25 [INFO] linting drtino7/snake_game against nightly for clippy-nonminimal_bool-denied [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdrtino7%2Fsnake_game" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/drtino7/snake_game [INFO] finished tweaking git repo https://github.com/drtino7/snake_game [INFO] tweaked toml for git repo https://github.com/drtino7/snake_game written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/drtino7/snake_game 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/drtino7/snake_game 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 parking_lot v0.12.2 [INFO] [stderr] Downloaded redox_syscall v0.5.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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] ce86769479b91b53e081514d6f453a3240b53ae8fa1c20de8499274a2f22b0d4 [INFO] running `Command { std: "docker" "start" "-a" "ce86769479b91b53e081514d6f453a3240b53ae8fa1c20de8499274a2f22b0d4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ce86769479b91b53e081514d6f453a3240b53ae8fa1c20de8499274a2f22b0d4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ce86769479b91b53e081514d6f453a3240b53ae8fa1c20de8499274a2f22b0d4", kill_on_drop: false }` [INFO] [stdout] ce86769479b91b53e081514d6f453a3240b53ae8fa1c20de8499274a2f22b0d4 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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] 085bcbb04393ed6579b0c57ce4438988be428205e7de4284eda719c316688055 [INFO] running `Command { std: "docker" "start" "-a" "085bcbb04393ed6579b0c57ce4438988be428205e7de4284eda719c316688055", kill_on_drop: false }` [INFO] [stderr] Checking bitflags v2.5.0 [INFO] [stderr] Compiling lock_api v0.4.12 [INFO] [stderr] Checking signal-hook-registry v1.4.2 [INFO] [stderr] Checking parking_lot_core v0.9.10 [INFO] [stderr] Checking mio v0.8.11 [INFO] [stderr] Checking signal-hook v0.3.17 [INFO] [stderr] Checking signal-hook-mio v0.2.3 [INFO] [stderr] Checking parking_lot v0.12.2 [INFO] [stderr] Checking crossterm v0.27.0 [INFO] [stderr] Checking snake_game v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/snake_movement.rs:19:28 [INFO] [stdout] | [INFO] [stdout] 19 | if !((i-1,j) == (i_,j_)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `((i-1,j) != (i_,j_))` [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 boolean expression can be simplified [INFO] [stdout] --> src/snake_movement.rs:44:28 [INFO] [stdout] | [INFO] [stdout] 44 | if !((i+1,j) == (i_,j_)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `((i+1,j) != (i_,j_))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/snake_movement.rs:69:28 [INFO] [stdout] | [INFO] [stdout] 69 | if !((i,j-1) == (i_,j_)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `((i,j-1) != (i_,j_))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/snake_movement.rs:93:28 [INFO] [stdout] | [INFO] [stdout] 93 | if !((i,j+1) == (i_,j_)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `((i,j+1) != (i_,j_))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: equality checks against false can be replaced by a negation [INFO] [stdout] --> src/snake_movement.rs:142:20 [INFO] [stdout] | [INFO] [stdout] 142 | if tail == false{ [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `!tail` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stdout] = note: `#[warn(clippy::bool_comparison)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: equality checks against false can be replaced by a negation [INFO] [stdout] --> src/snake_movement.rs:153:20 [INFO] [stdout] | [INFO] [stdout] 153 | if head == false{ [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `!head` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/snake_movement.rs:156:24 [INFO] [stdout] | [INFO] [stdout] 156 | if *card == "south".to_string() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ try implementing the comparison without allocating [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] = note: `#[warn(clippy::cmp_owned)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: equality checks against false can be replaced by a negation [INFO] [stdout] --> src/snake_movement.rs:170:44 [INFO] [stdout] | [INFO] [stdout] 170 | ... if flag == false{ [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `!flag` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/snake_movement.rs:188:49 [INFO] [stdout] | [INFO] [stdout] 188 | / ... match game_guard[i][j]{ [INFO] [stdout] 189 | | ... Definitions::Tail((i_,j_)) => { [INFO] [stdout] 190 | | ... game_guard[i][j] = Definitions::Snake((i_,j_)); [INFO] [stdout] 191 | | ... flag = true; [INFO] [stdout] 192 | | ... } , [INFO] [stdout] 193 | | ... _ => {}, [INFO] [stdout] 194 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] = note: `#[warn(clippy::single_match)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 188 ~ if let Definitions::Tail((i_,j_)) = game_guard[i][j] { [INFO] [stdout] 189 + game_guard[i][j] = Definitions::Snake((i_,j_)); [INFO] [stdout] 190 + flag = true; [INFO] [stdout] 191 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/snake_movement.rs:226:28 [INFO] [stdout] | [INFO] [stdout] 226 | if *card == "north".to_string() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ try implementing the comparison without allocating [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: equality checks against false can be replaced by a negation [INFO] [stdout] --> src/snake_movement.rs:238:44 [INFO] [stdout] | [INFO] [stdout] 238 | ... if flag == false{ [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `!flag` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/snake_movement.rs:257:49 [INFO] [stdout] | [INFO] [stdout] 257 | / ... match game_guard[i][j]{ [INFO] [stdout] 258 | | ... Definitions::Tail((i_,j_)) => {game_guard[i][j] = Definitions::Snake((i_,j_)); [INFO] [stdout] 259 | | ... flag = true; [INFO] [stdout] 260 | | ... }, [INFO] [stdout] 261 | | ... _ => {}, [INFO] [stdout] 262 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 257 ~ if let Definitions::Tail((i_,j_)) = game_guard[i][j] {game_guard[i][j] = Definitions::Snake((i_,j_)); [INFO] [stdout] 258 + flag = true; [INFO] [stdout] 259 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/snake_movement.rs:292:28 [INFO] [stdout] | [INFO] [stdout] 292 | if *card == "west".to_string() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ try implementing the comparison without allocating [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: equality checks against false can be replaced by a negation [INFO] [stdout] --> src/snake_movement.rs:302:44 [INFO] [stdout] | [INFO] [stdout] 302 | ... if flag == false{ [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `!flag` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/snake_movement.rs:320:49 [INFO] [stdout] | [INFO] [stdout] 320 | / ... match game_guard[i][j]{ [INFO] [stdout] 321 | | ... Definitions::Tail((i_,j_)) => {game_guard[i][j] = Definitions::Snake((i_,j_)); [INFO] [stdout] 322 | | ... flag = true; [INFO] [stdout] 323 | | ... }, [INFO] [stdout] 324 | | ... _ => {}, [INFO] [stdout] 325 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 320 ~ if let Definitions::Tail((i_,j_)) = game_guard[i][j] {game_guard[i][j] = Definitions::Snake((i_,j_)); [INFO] [stdout] 321 + flag = true; [INFO] [stdout] 322 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/snake_movement.rs:357:28 [INFO] [stdout] | [INFO] [stdout] 357 | if *card == "east".to_string() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ try implementing the comparison without allocating [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: equality checks against false can be replaced by a negation [INFO] [stdout] --> src/snake_movement.rs:371:44 [INFO] [stdout] | [INFO] [stdout] 371 | ... if flag == false { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `!flag` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/snake_movement.rs:388:49 [INFO] [stdout] | [INFO] [stdout] 388 | / ... match game_guard[i][j]{ [INFO] [stdout] 389 | | ... Definitions::Tail((i_,j_)) => {game_guard[i][j] = Definitions::Snake((i_,j_)); [INFO] [stdout] 390 | | ... flag = true; [INFO] [stdout] 391 | | ... }, [INFO] [stdout] 392 | | ... _ => {}, [INFO] [stdout] 393 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 388 ~ if let Definitions::Tail((i_,j_)) = game_guard[i][j] {game_guard[i][j] = Definitions::Snake((i_,j_)); [INFO] [stdout] 389 + flag = true; [INFO] [stdout] 390 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: empty string literal in `println!` [INFO] [stdout] --> src/snake_movement.rs:431:5 [INFO] [stdout] | [INFO] [stdout] 431 | 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: empty string literal in `println!` [INFO] [stdout] --> src/snake_movement.rs:432:5 [INFO] [stdout] | [INFO] [stdout] 432 | 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: empty string literal in `println!` [INFO] [stdout] --> src/snake_movement.rs:433:5 [INFO] [stdout] | [INFO] [stdout] 433 | 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: empty string literal in `println!` [INFO] [stdout] --> src/snake_movement.rs:434:5 [INFO] [stdout] | [INFO] [stdout] 434 | 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: empty string literal in `println!` [INFO] [stdout] --> src/snake_movement.rs:435:5 [INFO] [stdout] | [INFO] [stdout] 435 | 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: empty string literal in `println!` [INFO] [stdout] --> src/snake_movement.rs:437:5 [INFO] [stdout] | [INFO] [stdout] 437 | 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: empty string literal in `println!` [INFO] [stdout] --> src/snake_movement.rs:438:5 [INFO] [stdout] | [INFO] [stdout] 438 | 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: empty string literal in `println!` [INFO] [stdout] --> src/snake_movement.rs:439:5 [INFO] [stdout] | [INFO] [stdout] 439 | 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: empty string literal in `println!` [INFO] [stdout] --> src/snake_movement.rs:440:5 [INFO] [stdout] | [INFO] [stdout] 440 | 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: empty string literal in `println!` [INFO] [stdout] --> src/snake_movement.rs:441:5 [INFO] [stdout] | [INFO] [stdout] 441 | 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: empty string literal in `println!` [INFO] [stdout] --> src/print.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | 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/snake_movement.rs:19:28 [INFO] [stdout] | [INFO] [stdout] 19 | if !((i-1,j) == (i_,j_)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `((i-1,j) != (i_,j_))` [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 boolean expression can be simplified [INFO] [stdout] --> src/snake_movement.rs:44:28 [INFO] [stdout] | [INFO] [stdout] 44 | if !((i+1,j) == (i_,j_)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `((i+1,j) != (i_,j_))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/snake_movement.rs:69:28 [INFO] [stdout] | [INFO] [stdout] 69 | if !((i,j-1) == (i_,j_)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `((i,j-1) != (i_,j_))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/snake_movement.rs:93:28 [INFO] [stdout] | [INFO] [stdout] 93 | if !((i,j+1) == (i_,j_)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `((i,j+1) != (i_,j_))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: equality checks against false can be replaced by a negation [INFO] [stdout] --> src/snake_movement.rs:142:20 [INFO] [stdout] | [INFO] [stdout] 142 | if tail == false{ [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `!tail` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stdout] = note: `#[warn(clippy::bool_comparison)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: equality checks against false can be replaced by a negation [INFO] [stdout] --> src/snake_movement.rs:153:20 [INFO] [stdout] | [INFO] [stdout] 153 | if head == false{ [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `!head` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/snake_movement.rs:156:24 [INFO] [stdout] | [INFO] [stdout] 156 | if *card == "south".to_string() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ try implementing the comparison without allocating [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] = note: `#[warn(clippy::cmp_owned)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: equality checks against false can be replaced by a negation [INFO] [stdout] --> src/snake_movement.rs:170:44 [INFO] [stdout] | [INFO] [stdout] 170 | ... if flag == false{ [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `!flag` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/snake_movement.rs:188:49 [INFO] [stdout] | [INFO] [stdout] 188 | / ... match game_guard[i][j]{ [INFO] [stdout] 189 | | ... Definitions::Tail((i_,j_)) => { [INFO] [stdout] 190 | | ... game_guard[i][j] = Definitions::Snake((i_,j_)); [INFO] [stdout] 191 | | ... flag = true; [INFO] [stdout] 192 | | ... } , [INFO] [stdout] 193 | | ... _ => {}, [INFO] [stdout] 194 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] = note: `#[warn(clippy::single_match)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 188 ~ if let Definitions::Tail((i_,j_)) = game_guard[i][j] { [INFO] [stdout] 189 + game_guard[i][j] = Definitions::Snake((i_,j_)); [INFO] [stdout] 190 + flag = true; [INFO] [stdout] 191 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/snake_movement.rs:226:28 [INFO] [stdout] | [INFO] [stdout] 226 | if *card == "north".to_string() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ try implementing the comparison without allocating [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: equality checks against false can be replaced by a negation [INFO] [stdout] --> src/snake_movement.rs:238:44 [INFO] [stdout] | [INFO] [stdout] 238 | ... if flag == false{ [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `!flag` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/snake_movement.rs:257:49 [INFO] [stdout] | [INFO] [stdout] 257 | / ... match game_guard[i][j]{ [INFO] [stdout] 258 | | ... Definitions::Tail((i_,j_)) => {game_guard[i][j] = Definitions::Snake((i_,j_)); [INFO] [stdout] 259 | | ... flag = true; [INFO] [stdout] 260 | | ... }, [INFO] [stdout] 261 | | ... _ => {}, [INFO] [stdout] 262 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 257 ~ if let Definitions::Tail((i_,j_)) = game_guard[i][j] {game_guard[i][j] = Definitions::Snake((i_,j_)); [INFO] [stdout] 258 + flag = true; [INFO] [stdout] 259 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/snake_movement.rs:292:28 [INFO] [stdout] | [INFO] [stdout] 292 | if *card == "west".to_string() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ try implementing the comparison without allocating [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: equality checks against false can be replaced by a negation [INFO] [stdout] --> src/snake_movement.rs:302:44 [INFO] [stdout] | [INFO] [stdout] 302 | ... if flag == false{ [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `!flag` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/snake_movement.rs:320:49 [INFO] [stdout] | [INFO] [stdout] 320 | / ... match game_guard[i][j]{ [INFO] [stdout] 321 | | ... Definitions::Tail((i_,j_)) => {game_guard[i][j] = Definitions::Snake((i_,j_)); [INFO] [stdout] 322 | | ... flag = true; [INFO] [stdout] 323 | | ... }, [INFO] [stdout] 324 | | ... _ => {}, [INFO] [stdout] 325 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 320 ~ if let Definitions::Tail((i_,j_)) = game_guard[i][j] {game_guard[i][j] = Definitions::Snake((i_,j_)); [INFO] [stdout] 321 + flag = true; [INFO] [stdout] 322 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this creates an owned instance just for comparison [INFO] [stdout] --> src/snake_movement.rs:357:28 [INFO] [stdout] | [INFO] [stdout] 357 | if *card == "east".to_string() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ try implementing the comparison without allocating [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_owned [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: equality checks against false can be replaced by a negation [INFO] [stdout] --> src/snake_movement.rs:371:44 [INFO] [stdout] | [INFO] [stdout] 371 | ... if flag == false { [INFO] [stdout] | ^^^^^^^^^^^^^ help: try: `!flag` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> src/snake_movement.rs:388:49 [INFO] [stdout] | [INFO] [stdout] 388 | / ... match game_guard[i][j]{ [INFO] [stdout] 389 | | ... Definitions::Tail((i_,j_)) => {game_guard[i][j] = Definitions::Snake((i_,j_)); [INFO] [stdout] 390 | | ... flag = true; [INFO] [stdout] 391 | | ... }, [INFO] [stdout] 392 | | ... _ => {}, [INFO] [stdout] 393 | | ... } [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 388 ~ if let Definitions::Tail((i_,j_)) = game_guard[i][j] {game_guard[i][j] = Definitions::Snake((i_,j_)); [INFO] [stdout] 389 + flag = true; [INFO] [stdout] 390 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: empty string literal in `println!` [INFO] [stdout] --> src/snake_movement.rs:431:5 [INFO] [stdout] | [INFO] [stdout] 431 | 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: empty string literal in `println!` [INFO] [stdout] --> src/snake_movement.rs:432:5 [INFO] [stdout] | [INFO] [stdout] 432 | 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: empty string literal in `println!` [INFO] [stdout] --> src/snake_movement.rs:433:5 [INFO] [stdout] | [INFO] [stdout] 433 | 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: empty string literal in `println!` [INFO] [stdout] --> src/snake_movement.rs:434:5 [INFO] [stdout] | [INFO] [stdout] 434 | 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: empty string literal in `println!` [INFO] [stdout] --> src/snake_movement.rs:435:5 [INFO] [stdout] | [INFO] [stdout] 435 | 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: empty string literal in `println!` [INFO] [stdout] --> src/snake_movement.rs:437:5 [INFO] [stdout] | [INFO] [stdout] 437 | 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: empty string literal in `println!` [INFO] [stdout] --> src/snake_movement.rs:438:5 [INFO] [stdout] | [INFO] [stdout] 438 | 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: empty string literal in `println!` [INFO] [stdout] --> src/snake_movement.rs:439:5 [INFO] [stdout] | [INFO] [stdout] 439 | 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: empty string literal in `println!` [INFO] [stdout] --> src/snake_movement.rs:440:5 [INFO] [stdout] | [INFO] [stdout] 440 | 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: empty string literal in `println!` [INFO] [stdout] --> src/snake_movement.rs:441:5 [INFO] [stdout] | [INFO] [stdout] 441 | 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: empty string literal in `println!` [INFO] [stdout] --> src/print.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 13 | 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 2.16s [INFO] running `Command { std: "docker" "inspect" "085bcbb04393ed6579b0c57ce4438988be428205e7de4284eda719c316688055", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "085bcbb04393ed6579b0c57ce4438988be428205e7de4284eda719c316688055", kill_on_drop: false }` [INFO] [stdout] 085bcbb04393ed6579b0c57ce4438988be428205e7de4284eda719c316688055