[INFO] cloning repository https://github.com/lzolyak/rock_paper_scisors [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/lzolyak/rock_paper_scisors" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flzolyak%2Frock_paper_scisors", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flzolyak%2Frock_paper_scisors'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 882f3c6dabdd97fa2b4706a5be574ac6d6c45ff5 [INFO] testing lzolyak/rock_paper_scisors against master#cdb45c87e2cd43495379f7e867e3cc15dcee9f93 for pr-145838-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flzolyak%2Frock_paper_scisors" "/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/lzolyak/rock_paper_scisors [INFO] finished tweaking git repo https://github.com/lzolyak/rock_paper_scisors [INFO] tweaked toml for git repo https://github.com/lzolyak/rock_paper_scisors written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/lzolyak/rock_paper_scisors on toolchain cdb45c87e2cd43495379f7e867e3cc15dcee9f93 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/lzolyak/rock_paper_scisors 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" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] c3cb2a67b9844b25ca6348edb1e3f8b7b7d30de1862334cf0219571605e90a2a [INFO] running `Command { std: "docker" "start" "-a" "c3cb2a67b9844b25ca6348edb1e3f8b7b7d30de1862334cf0219571605e90a2a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "c3cb2a67b9844b25ca6348edb1e3f8b7b7d30de1862334cf0219571605e90a2a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c3cb2a67b9844b25ca6348edb1e3f8b7b7d30de1862334cf0219571605e90a2a", kill_on_drop: false }` [INFO] [stdout] c3cb2a67b9844b25ca6348edb1e3f8b7b7d30de1862334cf0219571605e90a2a [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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c30f2160d61ef3a6e995c77eb6c2b428f5e4072de8cbc70a22944a42db240e78 [INFO] running `Command { std: "docker" "start" "-a" "c30f2160d61ef3a6e995c77eb6c2b428f5e4072de8cbc70a22944a42db240e78", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling libc v0.2.14 [INFO] [stderr] Compiling rand v0.3.14 [INFO] [stderr] Compiling rock_paper_scisors v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::cmp::Ordering` [INFO] [stdout] --> src/main.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::cmp::Ordering; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:43:7 [INFO] [stdout] | [INFO] [stdout] 43 | if(playerMove.len() == 2){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 43 - if(playerMove.len() == 2){ [INFO] [stdout] 43 + if playerMove.len() == 2 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:48:4 [INFO] [stdout] | [INFO] [stdout] 48 | if(playerMove != "q".to_string()){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 48 - if(playerMove != "q".to_string()){ [INFO] [stdout] 48 + if playerMove != "q".to_string() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:56:4 [INFO] [stdout] | [INFO] [stdout] 56 | if(win == 1){ println!("You win!");} [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 56 - if(win == 1){ println!("You win!");} [INFO] [stdout] 56 + if win == 1 { println!("You win!");} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | else if(win == 2){ println!("You lose!");} [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 57 - else if(win == 2){ println!("You lose!");} [INFO] [stdout] 57 + else if win == 2 { println!("You lose!");} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:58:4 [INFO] [stdout] | [INFO] [stdout] 58 | if(win == 3){ println!("You tied!");} [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 58 - if(win == 3){ println!("You tied!");} [INFO] [stdout] 58 + if win == 3 { println!("You tied!");} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:84:8 [INFO] [stdout] | [INFO] [stdout] 84 | if(rand_num == 1){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 84 - if(rand_num == 1){ [INFO] [stdout] 84 + if rand_num == 1 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:87:13 [INFO] [stdout] | [INFO] [stdout] 87 | else if(rand_num == 2){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 87 - else if(rand_num == 2){ [INFO] [stdout] 87 + else if rand_num == 2 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:90:13 [INFO] [stdout] | [INFO] [stdout] 90 | else if(rand_num == 3){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 90 - else if(rand_num == 3){ [INFO] [stdout] 90 + else if rand_num == 3 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:138:7 [INFO] [stdout] | [INFO] [stdout] 138 | if(comp == human){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 138 - if(comp == human){ [INFO] [stdout] 138 + if comp == human { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:163:7 [INFO] [stdout] | [INFO] [stdout] 163 | if(human_num == 1 && comp_num == 2){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 163 - if(human_num == 1 && comp_num == 2){ [INFO] [stdout] 163 + if human_num == 1 && comp_num == 2 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:168:12 [INFO] [stdout] | [INFO] [stdout] 168 | else if(human_num == 1 && comp_num == 3){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 168 - else if(human_num == 1 && comp_num == 3){ [INFO] [stdout] 168 + else if human_num == 1 && comp_num == 3 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:173:12 [INFO] [stdout] | [INFO] [stdout] 173 | else if(human_num == 2 && comp_num == 1){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 173 - else if(human_num == 2 && comp_num == 1){ [INFO] [stdout] 173 + else if human_num == 2 && comp_num == 1 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:178:12 [INFO] [stdout] | [INFO] [stdout] 178 | else if(human_num == 2 && comp_num == 3){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 178 - else if(human_num == 2 && comp_num == 3){ [INFO] [stdout] 178 + else if human_num == 2 && comp_num == 3 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:183:12 [INFO] [stdout] | [INFO] [stdout] 183 | else if(human_num == 3 && comp_num == 1){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 183 - else if(human_num == 3 && comp_num == 1){ [INFO] [stdout] 183 + else if human_num == 3 && comp_num == 1 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:188:12 [INFO] [stdout] | [INFO] [stdout] 188 | else if(human_num == 2 && comp_num == 3){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 188 - else if(human_num == 2 && comp_num == 3){ [INFO] [stdout] 188 + else if human_num == 2 && comp_num == 3 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:54:6 [INFO] [stdout] | [INFO] [stdout] 54 | let mut win = calculate_winner(compMove, mv, &mut score_board); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:62:7 [INFO] [stdout] | [INFO] [stdout] 62 | let mut w : f32 = (score_board.wins as f32/ score_board.games as f32) *100.0; [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:65:7 [INFO] [stdout] | [INFO] [stdout] 65 | let mut l : f32 = (score_board.losses as f32/ score_board.games as f32) * 100.0; [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:68:7 [INFO] [stdout] | [INFO] [stdout] 68 | let mut t : f32 = (score_board.ties as f32 / score_board.games as f32) * 100.0; [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:96:31 [INFO] [stdout] | [INFO] [stdout] 96 | fn parse_input(input: String, mut current_move: &mut Score )-> Move{ [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `human_num` is never read [INFO] [stdout] --> src/main.rs:142:13 [INFO] [stdout] | [INFO] [stdout] 142 | let mut human_num = 0; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `comp_num` is never read [INFO] [stdout] --> src/main.rs:152:13 [INFO] [stdout] | [INFO] [stdout] 152 | let mut comp_num = 0; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:137:46 [INFO] [stdout] | [INFO] [stdout] 137 | fn calculate_winner(comp: Move, human: Move, mut current_move: &mut Score) -> i32{ [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | io::stdin().read_line(&mut player); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 29 | let _ = io::stdin().read_line(&mut player); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `compMove` should have a snake case name [INFO] [stdout] --> src/main.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | let compMove = computer_move(); [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `comp_move` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `playerMove` should have a snake case name [INFO] [stdout] --> src/main.rs:38:13 [INFO] [stdout] | [INFO] [stdout] 38 | let mut playerMove = String::new(); [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `player_move` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | io::stdin().read_line(&mut playerMove); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 40 | let _ = io::stdin().read_line(&mut playerMove); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.30s [INFO] running `Command { std: "docker" "inspect" "c30f2160d61ef3a6e995c77eb6c2b428f5e4072de8cbc70a22944a42db240e78", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c30f2160d61ef3a6e995c77eb6c2b428f5e4072de8cbc70a22944a42db240e78", kill_on_drop: false }` [INFO] [stdout] c30f2160d61ef3a6e995c77eb6c2b428f5e4072de8cbc70a22944a42db240e78 [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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ee48ac83fee1dcdc64b03a8b853be0198fc9ff4734631a4d1ed7df3277f1af44 [INFO] running `Command { std: "docker" "start" "-a" "ee48ac83fee1dcdc64b03a8b853be0198fc9ff4734631a4d1ed7df3277f1af44", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling rock_paper_scisors v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::cmp::Ordering` [INFO] [stdout] --> src/main.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::cmp::Ordering; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:43:7 [INFO] [stdout] | [INFO] [stdout] 43 | if(playerMove.len() == 2){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 43 - if(playerMove.len() == 2){ [INFO] [stdout] 43 + if playerMove.len() == 2 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:48:4 [INFO] [stdout] | [INFO] [stdout] 48 | if(playerMove != "q".to_string()){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 48 - if(playerMove != "q".to_string()){ [INFO] [stdout] 48 + if playerMove != "q".to_string() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:56:4 [INFO] [stdout] | [INFO] [stdout] 56 | if(win == 1){ println!("You win!");} [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 56 - if(win == 1){ println!("You win!");} [INFO] [stdout] 56 + if win == 1 { println!("You win!");} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | else if(win == 2){ println!("You lose!");} [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 57 - else if(win == 2){ println!("You lose!");} [INFO] [stdout] 57 + else if win == 2 { println!("You lose!");} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:58:4 [INFO] [stdout] | [INFO] [stdout] 58 | if(win == 3){ println!("You tied!");} [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 58 - if(win == 3){ println!("You tied!");} [INFO] [stdout] 58 + if win == 3 { println!("You tied!");} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:84:8 [INFO] [stdout] | [INFO] [stdout] 84 | if(rand_num == 1){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 84 - if(rand_num == 1){ [INFO] [stdout] 84 + if rand_num == 1 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:87:13 [INFO] [stdout] | [INFO] [stdout] 87 | else if(rand_num == 2){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 87 - else if(rand_num == 2){ [INFO] [stdout] 87 + else if rand_num == 2 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:90:13 [INFO] [stdout] | [INFO] [stdout] 90 | else if(rand_num == 3){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 90 - else if(rand_num == 3){ [INFO] [stdout] 90 + else if rand_num == 3 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:138:7 [INFO] [stdout] | [INFO] [stdout] 138 | if(comp == human){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 138 - if(comp == human){ [INFO] [stdout] 138 + if comp == human { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:163:7 [INFO] [stdout] | [INFO] [stdout] 163 | if(human_num == 1 && comp_num == 2){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 163 - if(human_num == 1 && comp_num == 2){ [INFO] [stdout] 163 + if human_num == 1 && comp_num == 2 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:168:12 [INFO] [stdout] | [INFO] [stdout] 168 | else if(human_num == 1 && comp_num == 3){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 168 - else if(human_num == 1 && comp_num == 3){ [INFO] [stdout] 168 + else if human_num == 1 && comp_num == 3 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:173:12 [INFO] [stdout] | [INFO] [stdout] 173 | else if(human_num == 2 && comp_num == 1){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 173 - else if(human_num == 2 && comp_num == 1){ [INFO] [stdout] 173 + else if human_num == 2 && comp_num == 1 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:178:12 [INFO] [stdout] | [INFO] [stdout] 178 | else if(human_num == 2 && comp_num == 3){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 178 - else if(human_num == 2 && comp_num == 3){ [INFO] [stdout] 178 + else if human_num == 2 && comp_num == 3 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:183:12 [INFO] [stdout] | [INFO] [stdout] 183 | else if(human_num == 3 && comp_num == 1){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 183 - else if(human_num == 3 && comp_num == 1){ [INFO] [stdout] 183 + else if human_num == 3 && comp_num == 1 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:188:12 [INFO] [stdout] | [INFO] [stdout] 188 | else if(human_num == 2 && comp_num == 3){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 188 - else if(human_num == 2 && comp_num == 3){ [INFO] [stdout] 188 + else if human_num == 2 && comp_num == 3 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:54:6 [INFO] [stdout] | [INFO] [stdout] 54 | let mut win = calculate_winner(compMove, mv, &mut score_board); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:62:7 [INFO] [stdout] | [INFO] [stdout] 62 | let mut w : f32 = (score_board.wins as f32/ score_board.games as f32) *100.0; [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:65:7 [INFO] [stdout] | [INFO] [stdout] 65 | let mut l : f32 = (score_board.losses as f32/ score_board.games as f32) * 100.0; [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:68:7 [INFO] [stdout] | [INFO] [stdout] 68 | let mut t : f32 = (score_board.ties as f32 / score_board.games as f32) * 100.0; [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:96:31 [INFO] [stdout] | [INFO] [stdout] 96 | fn parse_input(input: String, mut current_move: &mut Score )-> Move{ [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `human_num` is never read [INFO] [stdout] --> src/main.rs:142:13 [INFO] [stdout] | [INFO] [stdout] 142 | let mut human_num = 0; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `comp_num` is never read [INFO] [stdout] --> src/main.rs:152:13 [INFO] [stdout] | [INFO] [stdout] 152 | let mut comp_num = 0; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:137:46 [INFO] [stdout] | [INFO] [stdout] 137 | fn calculate_winner(comp: Move, human: Move, mut current_move: &mut Score) -> i32{ [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | io::stdin().read_line(&mut player); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 29 | let _ = io::stdin().read_line(&mut player); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `compMove` should have a snake case name [INFO] [stdout] --> src/main.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | let compMove = computer_move(); [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `comp_move` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `playerMove` should have a snake case name [INFO] [stdout] --> src/main.rs:38:13 [INFO] [stdout] | [INFO] [stdout] 38 | let mut playerMove = String::new(); [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `player_move` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | io::stdin().read_line(&mut playerMove); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 40 | let _ = io::stdin().read_line(&mut playerMove); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.34s [INFO] running `Command { std: "docker" "inspect" "ee48ac83fee1dcdc64b03a8b853be0198fc9ff4734631a4d1ed7df3277f1af44", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ee48ac83fee1dcdc64b03a8b853be0198fc9ff4734631a4d1ed7df3277f1af44", kill_on_drop: false }` [INFO] [stdout] ee48ac83fee1dcdc64b03a8b853be0198fc9ff4734631a4d1ed7df3277f1af44 [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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] b182f56515657606f7bcd48b1a2c7f5ef943274451f9a951adf1a60bdecbeb24 [INFO] running `Command { std: "docker" "start" "-a" "b182f56515657606f7bcd48b1a2c7f5ef943274451f9a951adf1a60bdecbeb24", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] warning: unused import: `std::cmp::Ordering` [INFO] [stderr] --> src/main.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use std::cmp::Ordering; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:43:7 [INFO] [stderr] | [INFO] [stderr] 43 | if(playerMove.len() == 2){ [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 43 - if(playerMove.len() == 2){ [INFO] [stderr] 43 + if playerMove.len() == 2 { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:48:4 [INFO] [stderr] | [INFO] [stderr] 48 | if(playerMove != "q".to_string()){ [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 48 - if(playerMove != "q".to_string()){ [INFO] [stderr] 48 + if playerMove != "q".to_string() { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:56:4 [INFO] [stderr] | [INFO] [stderr] 56 | if(win == 1){ println!("You win!");} [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 56 - if(win == 1){ println!("You win!");} [INFO] [stderr] 56 + if win == 1 { println!("You win!");} [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:57:9 [INFO] [stderr] | [INFO] [stderr] 57 | else if(win == 2){ println!("You lose!");} [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 57 - else if(win == 2){ println!("You lose!");} [INFO] [stderr] 57 + else if win == 2 { println!("You lose!");} [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:58:4 [INFO] [stderr] | [INFO] [stderr] 58 | if(win == 3){ println!("You tied!");} [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 58 - if(win == 3){ println!("You tied!");} [INFO] [stderr] 58 + if win == 3 { println!("You tied!");} [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:84:8 [INFO] [stderr] | [INFO] [stderr] 84 | if(rand_num == 1){ [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 84 - if(rand_num == 1){ [INFO] [stderr] 84 + if rand_num == 1 { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:87:13 [INFO] [stderr] | [INFO] [stderr] 87 | else if(rand_num == 2){ [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 87 - else if(rand_num == 2){ [INFO] [stderr] 87 + else if rand_num == 2 { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:90:13 [INFO] [stderr] | [INFO] [stderr] 90 | else if(rand_num == 3){ [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 90 - else if(rand_num == 3){ [INFO] [stderr] 90 + else if rand_num == 3 { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:138:7 [INFO] [stderr] | [INFO] [stderr] 138 | if(comp == human){ [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 138 - if(comp == human){ [INFO] [stderr] 138 + if comp == human { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:163:7 [INFO] [stderr] | [INFO] [stderr] 163 | if(human_num == 1 && comp_num == 2){ [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 163 - if(human_num == 1 && comp_num == 2){ [INFO] [stderr] 163 + if human_num == 1 && comp_num == 2 { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:168:12 [INFO] [stderr] | [INFO] [stderr] 168 | else if(human_num == 1 && comp_num == 3){ [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 168 - else if(human_num == 1 && comp_num == 3){ [INFO] [stderr] 168 + else if human_num == 1 && comp_num == 3 { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:173:12 [INFO] [stderr] | [INFO] [stderr] 173 | else if(human_num == 2 && comp_num == 1){ [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 173 - else if(human_num == 2 && comp_num == 1){ [INFO] [stderr] 173 + else if human_num == 2 && comp_num == 1 { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:178:12 [INFO] [stderr] | [INFO] [stderr] 178 | else if(human_num == 2 && comp_num == 3){ [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 178 - else if(human_num == 2 && comp_num == 3){ [INFO] [stderr] 178 + else if human_num == 2 && comp_num == 3 { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:183:12 [INFO] [stderr] | [INFO] [stderr] 183 | else if(human_num == 3 && comp_num == 1){ [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 183 - else if(human_num == 3 && comp_num == 1){ [INFO] [stderr] 183 + else if human_num == 3 && comp_num == 1 { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:188:12 [INFO] [stderr] | [INFO] [stderr] 188 | else if(human_num == 2 && comp_num == 3){ [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 188 - else if(human_num == 2 && comp_num == 3){ [INFO] [stderr] 188 + else if human_num == 2 && comp_num == 3 { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:54:6 [INFO] [stderr] | [INFO] [stderr] 54 | let mut win = calculate_winner(compMove, mv, &mut score_board); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:62:7 [INFO] [stderr] | [INFO] [stderr] 62 | let mut w : f32 = (score_board.wins as f32/ score_board.games as f32) *100.0; [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:65:7 [INFO] [stderr] | [INFO] [stderr] 65 | let mut l : f32 = (score_board.losses as f32/ score_board.games as f32) * 100.0; [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:68:7 [INFO] [stderr] | [INFO] [stderr] 68 | let mut t : f32 = (score_board.ties as f32 / score_board.games as f32) * 100.0; [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:96:31 [INFO] [stderr] | [INFO] [stderr] 96 | fn parse_input(input: String, mut current_move: &mut Score )-> Move{ [INFO] [stderr] | ----^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `human_num` is never read [INFO] [stderr] --> src/main.rs:142:13 [INFO] [stderr] | [INFO] [stderr] 142 | let mut human_num = 0; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: value assigned to `comp_num` is never read [INFO] [stderr] --> src/main.rs:152:13 [INFO] [stderr] | [INFO] [stderr] 152 | let mut comp_num = 0; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:137:46 [INFO] [stderr] | [INFO] [stderr] 137 | fn calculate_winner(comp: Move, human: Move, mut current_move: &mut Score) -> i32{ [INFO] [stderr] | ----^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/main.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | io::stdin().read_line(&mut player); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 29 | let _ = io::stdin().read_line(&mut player); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: variable `compMove` should have a snake case name [INFO] [stderr] --> src/main.rs:36:9 [INFO] [stderr] | [INFO] [stderr] 36 | let compMove = computer_move(); [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `comp_move` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: variable `playerMove` should have a snake case name [INFO] [stderr] --> src/main.rs:38:13 [INFO] [stderr] | [INFO] [stderr] 38 | let mut playerMove = String::new(); [INFO] [stderr] | ^^^^^^^^^^ help: convert the identifier to snake case: `player_move` [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/main.rs:40:5 [INFO] [stderr] | [INFO] [stderr] 40 | io::stdin().read_line(&mut playerMove); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 40 | let _ = io::stdin().read_line(&mut playerMove); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: `rock_paper_scisors` (bin "rock_paper_scisors" test) generated 28 warnings (run `cargo fix --bin "rock_paper_scisors" --tests` to apply 22 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.11s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/rock_paper_scisors-a432e5eadd0fc925) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "b182f56515657606f7bcd48b1a2c7f5ef943274451f9a951adf1a60bdecbeb24", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b182f56515657606f7bcd48b1a2c7f5ef943274451f9a951adf1a60bdecbeb24", kill_on_drop: false }` [INFO] [stdout] b182f56515657606f7bcd48b1a2c7f5ef943274451f9a951adf1a60bdecbeb24