[INFO] cloning repository https://github.com/aaarkid/coup [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/aaarkid/coup" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Faaarkid%2Fcoup", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Faaarkid%2Fcoup'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] a1a8e3421d687bd9c1e962d7412fcb2dcc4b6ef1 [INFO] testing aaarkid/coup against try#8de4c7234dd9b97c9d76b58671343fdbbc9a433e+target=x86_64-unknown-linux-musl for musl_upgrade_1_2_5_with_libc_patch_0 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Faaarkid%2Fcoup" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/aaarkid/coup [INFO] finished tweaking git repo https://github.com/aaarkid/coup [INFO] tweaked toml for git repo https://github.com/aaarkid/coup written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/aaarkid/coup on toolchain 8de4c7234dd9b97c9d76b58671343fdbbc9a433e [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/aaarkid/coup 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" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded ppv-lite86 v0.2.17 [INFO] [stderr] Downloaded rand v0.3.23 [INFO] [stderr] Downloaded rusty-machine v0.5.4 [INFO] [stderr] Downloaded rawpointer v0.1.0 [INFO] [stderr] Downloaded matrixmultiply v0.1.15 [INFO] [stderr] Downloaded rulinalg v0.3.7 [INFO] [stderr] Downloaded libc v0.2.140 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 942c85487bbd3007556a1d82da30f147d6f3ab066835e3ed8e06198b22d030f0 [INFO] running `Command { std: "docker" "start" "-a" "942c85487bbd3007556a1d82da30f147d6f3ab066835e3ed8e06198b22d030f0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "942c85487bbd3007556a1d82da30f147d6f3ab066835e3ed8e06198b22d030f0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "942c85487bbd3007556a1d82da30f147d6f3ab066835e3ed8e06198b22d030f0", kill_on_drop: false }` [INFO] [stdout] 942c85487bbd3007556a1d82da30f147d6f3ab066835e3ed8e06198b22d030f0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "build" "--frozen" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 843ba3aa276c5b0d45e679f13dd3dacda2c7a1b8a5d7067addd7073e7f032dae [INFO] running `Command { std: "docker" "start" "-a" "843ba3aa276c5b0d45e679f13dd3dacda2c7a1b8a5d7067addd7073e7f032dae", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v1.1.0 [INFO] [stderr] Compiling libc v0.2.140 [INFO] [stderr] Compiling matrixmultiply v0.1.15 [INFO] [stderr] Compiling rawpointer v0.1.0 [INFO] [stderr] Compiling ppv-lite86 v0.2.17 [INFO] [stderr] Compiling num-traits v0.2.15 [INFO] [stderr] Compiling num-integer v0.1.45 [INFO] [stderr] Compiling num-iter v0.1.43 [INFO] [stderr] Compiling getrandom v0.2.8 [INFO] [stderr] Compiling rand v0.4.6 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.3.23 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling num v0.1.42 [INFO] [stderr] Compiling rulinalg v0.3.7 [INFO] [stderr] Compiling rusty-machine v0.5.4 [INFO] [stderr] Compiling coup v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `ai::AIPlayer` [INFO] [stdout] --> src/main.rs:4:34 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::player::{HumanPlayer, ai::AIPlayer}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rusty_machine::prelude::Matrix` [INFO] [stdout] --> src/gameai.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use rusty_machine::prelude::Matrix; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Action`, `BlockAction`, and `ChallengeAction` [INFO] [stdout] --> src/gameai.rs:3:21 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::action::{Action, BlockAction, ChallengeAction}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::phase::Phase` [INFO] [stdout] --> src/gameai.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::phase::Phase; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::seq::SliceRandom` [INFO] [stdout] --> src/player/ai.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use rand::seq::SliceRandom; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `game_state` [INFO] [stdout] --> src/player/ai.rs:37:60 [INFO] [stdout] | [INFO] [stdout] 37 | fn choose_action(&self, possible_actions: Vec, game_state: &GameStateAI) -> Action { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_game_state` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `player_index` [INFO] [stdout] --> src/player/ai.rs:127:30 [INFO] [stdout] | [INFO] [stdout] 127 | let (action, player_index) = &game_state.history[search]; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_player_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `player` [INFO] [stdout] --> src/player/ai.rs:168:49 [INFO] [stdout] | [INFO] [stdout] 168 | Action::Block(block_action, player, char) => { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_player` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `char` [INFO] [stdout] --> src/player/ai.rs:168:57 [INFO] [stdout] | [INFO] [stdout] 168 | Action::Block(block_action, player, char) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_char` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `players_lives`, `players_coins`, `revealed_characters`, and `cards_in_hand` are never read [INFO] [stdout] --> src/gameai.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct GameStateAI { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 10 | pub players_lives: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 11 | pub players_coins: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 12 | pub revealed_characters: Vec>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 13 | pub cards_in_hand: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GameStateAI` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AIPlayer` is never constructed [INFO] [stdout] --> src/player/ai.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct AIPlayer { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AIPlayer` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/player/ai.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 24 | impl AIPlayer { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 25 | pub fn new(name: String, index: usize) -> AIPlayer { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `all` is never used [INFO] [stdout] --> src/character.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 10 | impl Character { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 11 | pub fn all() -> Vec { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Tax` is never constructed [INFO] [stdout] --> src/action.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 4 | pub enum Action { [INFO] [stdout] | ------ variant in this enum [INFO] [stdout] ... [INFO] [stdout] 7 | Tax, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Action` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `all_3players` is never used [INFO] [stdout] --> src/action.rs:107:12 [INFO] [stdout] | [INFO] [stdout] 76 | impl Action { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn all_3players(pos0: usize, pos1: usize, pos2:usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/game.rs:219:25 [INFO] [stdout] | [INFO] [stdout] 219 | self.players[current_player].lose_coins(7); [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)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 219 | let _ = self.players[current_player].lose_coins(7); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/game.rs:221:25 [INFO] [stdout] | [INFO] [stdout] 221 | self.players[target].remove_card_from_hand(card); [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] 221 | let _ = self.players[target].remove_card_from_hand(card); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/game.rs:228:25 [INFO] [stdout] | [INFO] [stdout] 228 | self.players[current_player].lose_coins(3); [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] 228 | let _ = self.players[current_player].lose_coins(3); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/game.rs:230:25 [INFO] [stdout] | [INFO] [stdout] 230 | self.players[target].remove_card_from_hand(card); [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] 230 | let _ = self.players[target].remove_card_from_hand(card); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/game.rs:240:25 [INFO] [stdout] | [INFO] [stdout] 240 | self.players[current_player].remove_card_from_hand(card1); [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] 240 | let _ = self.players[current_player].remove_card_from_hand(card1); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/game.rs:241:25 [INFO] [stdout] | [INFO] [stdout] 241 | self.players[current_player].remove_card_from_hand(card2); [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] 241 | let _ = self.players[current_player].remove_card_from_hand(card2); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/game.rs:246:25 [INFO] [stdout] | [INFO] [stdout] 246 | self.players[target].lose_coins(amount); [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] 246 | let _ = self.players[target].lose_coins(amount); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 9.31s [INFO] running `Command { std: "docker" "inspect" "843ba3aa276c5b0d45e679f13dd3dacda2c7a1b8a5d7067addd7073e7f032dae", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "843ba3aa276c5b0d45e679f13dd3dacda2c7a1b8a5d7067addd7073e7f032dae", kill_on_drop: false }` [INFO] [stdout] 843ba3aa276c5b0d45e679f13dd3dacda2c7a1b8a5d7067addd7073e7f032dae [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--no-run" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 8d86ec3b4fae64d5cb848302fe8598e7346d1dd98d04b3e5d7068d030bda6833 [INFO] running `Command { std: "docker" "start" "-a" "8d86ec3b4fae64d5cb848302fe8598e7346d1dd98d04b3e5d7068d030bda6833", kill_on_drop: false }` [INFO] [stderr] Compiling coup v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `ai::AIPlayer` [INFO] [stdout] --> src/main.rs:4:34 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::player::{HumanPlayer, ai::AIPlayer}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rusty_machine::prelude::Matrix` [INFO] [stdout] --> src/gameai.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use rusty_machine::prelude::Matrix; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Action`, `BlockAction`, and `ChallengeAction` [INFO] [stdout] --> src/gameai.rs:3:21 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::action::{Action, BlockAction, ChallengeAction}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::phase::Phase` [INFO] [stdout] --> src/gameai.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::phase::Phase; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::seq::SliceRandom` [INFO] [stdout] --> src/player/ai.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use rand::seq::SliceRandom; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `game_state` [INFO] [stdout] --> src/player/ai.rs:37:60 [INFO] [stdout] | [INFO] [stdout] 37 | fn choose_action(&self, possible_actions: Vec, game_state: &GameStateAI) -> Action { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_game_state` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `player_index` [INFO] [stdout] --> src/player/ai.rs:127:30 [INFO] [stdout] | [INFO] [stdout] 127 | let (action, player_index) = &game_state.history[search]; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_player_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `player` [INFO] [stdout] --> src/player/ai.rs:168:49 [INFO] [stdout] | [INFO] [stdout] 168 | Action::Block(block_action, player, char) => { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_player` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `char` [INFO] [stdout] --> src/player/ai.rs:168:57 [INFO] [stdout] | [INFO] [stdout] 168 | Action::Block(block_action, player, char) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_char` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `players_lives`, `players_coins`, `revealed_characters`, and `cards_in_hand` are never read [INFO] [stdout] --> src/gameai.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct GameStateAI { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 10 | pub players_lives: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 11 | pub players_coins: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 12 | pub revealed_characters: Vec>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 13 | pub cards_in_hand: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GameStateAI` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AIPlayer` is never constructed [INFO] [stdout] --> src/player/ai.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct AIPlayer { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AIPlayer` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/player/ai.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 24 | impl AIPlayer { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 25 | pub fn new(name: String, index: usize) -> AIPlayer { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `all` is never used [INFO] [stdout] --> src/character.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 10 | impl Character { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 11 | pub fn all() -> Vec { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Tax` is never constructed [INFO] [stdout] --> src/action.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 4 | pub enum Action { [INFO] [stdout] | ------ variant in this enum [INFO] [stdout] ... [INFO] [stdout] 7 | Tax, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Action` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `all_3players` is never used [INFO] [stdout] --> src/action.rs:107:12 [INFO] [stdout] | [INFO] [stdout] 76 | impl Action { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn all_3players(pos0: usize, pos1: usize, pos2:usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/game.rs:219:25 [INFO] [stdout] | [INFO] [stdout] 219 | self.players[current_player].lose_coins(7); [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)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 219 | let _ = self.players[current_player].lose_coins(7); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/game.rs:221:25 [INFO] [stdout] | [INFO] [stdout] 221 | self.players[target].remove_card_from_hand(card); [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] 221 | let _ = self.players[target].remove_card_from_hand(card); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/game.rs:228:25 [INFO] [stdout] | [INFO] [stdout] 228 | self.players[current_player].lose_coins(3); [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] 228 | let _ = self.players[current_player].lose_coins(3); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/game.rs:230:25 [INFO] [stdout] | [INFO] [stdout] 230 | self.players[target].remove_card_from_hand(card); [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] 230 | let _ = self.players[target].remove_card_from_hand(card); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/game.rs:240:25 [INFO] [stdout] | [INFO] [stdout] 240 | self.players[current_player].remove_card_from_hand(card1); [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] 240 | let _ = self.players[current_player].remove_card_from_hand(card1); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/game.rs:241:25 [INFO] [stdout] | [INFO] [stdout] 241 | self.players[current_player].remove_card_from_hand(card2); [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] 241 | let _ = self.players[current_player].remove_card_from_hand(card2); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/game.rs:246:25 [INFO] [stdout] | [INFO] [stdout] 246 | self.players[target].lose_coins(amount); [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] 246 | let _ = self.players[target].lose_coins(amount); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.82s [INFO] running `Command { std: "docker" "inspect" "8d86ec3b4fae64d5cb848302fe8598e7346d1dd98d04b3e5d7068d030bda6833", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8d86ec3b4fae64d5cb848302fe8598e7346d1dd98d04b3e5d7068d030bda6833", kill_on_drop: false }` [INFO] [stdout] 8d86ec3b4fae64d5cb848302fe8598e7346d1dd98d04b3e5d7068d030bda6833 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] d281d1e24022908ef4f51067c561faa4927aad53e5a9260bd7f9d468eb7a6c93 [INFO] running `Command { std: "docker" "start" "-a" "d281d1e24022908ef4f51067c561faa4927aad53e5a9260bd7f9d468eb7a6c93", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `ai::AIPlayer` [INFO] [stderr] --> src/main.rs:4:34 [INFO] [stderr] | [INFO] [stderr] 4 | use crate::player::{HumanPlayer, ai::AIPlayer}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `rusty_machine::prelude::Matrix` [INFO] [stderr] --> src/gameai.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use rusty_machine::prelude::Matrix; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Action`, `BlockAction`, and `ChallengeAction` [INFO] [stderr] --> src/gameai.rs:3:21 [INFO] [stderr] | [INFO] [stderr] 3 | use crate::action::{Action, BlockAction, ChallengeAction}; [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::phase::Phase` [INFO] [stderr] --> src/gameai.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use crate::phase::Phase; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rand::seq::SliceRandom` [INFO] [stderr] --> src/player/ai.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use rand::seq::SliceRandom; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `game_state` [INFO] [stderr] --> src/player/ai.rs:37:60 [INFO] [stderr] | [INFO] [stderr] 37 | fn choose_action(&self, possible_actions: Vec, game_state: &GameStateAI) -> Action { [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_game_state` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `player_index` [INFO] [stderr] --> src/player/ai.rs:127:30 [INFO] [stderr] | [INFO] [stderr] 127 | let (action, player_index) = &game_state.history[search]; [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_player_index` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `player` [INFO] [stderr] --> src/player/ai.rs:168:49 [INFO] [stderr] | [INFO] [stderr] 168 | Action::Block(block_action, player, char) => { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_player` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `char` [INFO] [stderr] --> src/player/ai.rs:168:57 [INFO] [stderr] | [INFO] [stderr] 168 | Action::Block(block_action, player, char) => { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_char` [INFO] [stderr] [INFO] [stderr] warning: fields `players_lives`, `players_coins`, `revealed_characters`, and `cards_in_hand` are never read [INFO] [stderr] --> src/gameai.rs:10:9 [INFO] [stderr] | [INFO] [stderr] 9 | pub struct GameStateAI { [INFO] [stderr] | ----------- fields in this struct [INFO] [stderr] 10 | pub players_lives: Vec, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] 11 | pub players_coins: Vec, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] 12 | pub revealed_characters: Vec>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 13 | pub cards_in_hand: Vec, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `GameStateAI` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: struct `AIPlayer` is never constructed [INFO] [stderr] --> src/player/ai.rs:16:12 [INFO] [stderr] | [INFO] [stderr] 16 | pub struct AIPlayer { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `AIPlayer` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> src/player/ai.rs:25:12 [INFO] [stderr] | [INFO] [stderr] 24 | impl AIPlayer { [INFO] [stderr] | ------------- associated function in this implementation [INFO] [stderr] 25 | pub fn new(name: String, index: usize) -> AIPlayer { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `all` is never used [INFO] [stderr] --> src/character.rs:11:12 [INFO] [stderr] | [INFO] [stderr] 10 | impl Character { [INFO] [stderr] | -------------- associated function in this implementation [INFO] [stderr] 11 | pub fn all() -> Vec { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `Tax` is never constructed [INFO] [stderr] --> src/action.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 4 | pub enum Action { [INFO] [stderr] | ------ variant in this enum [INFO] [stderr] ... [INFO] [stderr] 7 | Tax, [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Action` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: associated function `all_3players` is never used [INFO] [stderr] --> src/action.rs:107:12 [INFO] [stderr] | [INFO] [stderr] 76 | impl Action { [INFO] [stderr] | ----------- associated function in this implementation [INFO] [stderr] ... [INFO] [stderr] 107 | pub fn all_3players(pos0: usize, pos1: usize, pos2:usize) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/game.rs:219:25 [INFO] [stderr] | [INFO] [stderr] 219 | self.players[current_player].lose_coins(7); [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)]` on by default [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 219 | let _ = self.players[current_player].lose_coins(7); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/game.rs:221:25 [INFO] [stderr] | [INFO] [stderr] 221 | self.players[target].remove_card_from_hand(card); [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] 221 | let _ = self.players[target].remove_card_from_hand(card); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/game.rs:228:25 [INFO] [stderr] | [INFO] [stderr] 228 | self.players[current_player].lose_coins(3); [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] 228 | let _ = self.players[current_player].lose_coins(3); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/game.rs:230:25 [INFO] [stderr] | [INFO] [stderr] 230 | self.players[target].remove_card_from_hand(card); [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] 230 | let _ = self.players[target].remove_card_from_hand(card); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/game.rs:240:25 [INFO] [stderr] | [INFO] [stderr] 240 | self.players[current_player].remove_card_from_hand(card1); [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] 240 | let _ = self.players[current_player].remove_card_from_hand(card1); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/game.rs:241:25 [INFO] [stderr] | [INFO] [stderr] 241 | self.players[current_player].remove_card_from_hand(card2); [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] 241 | let _ = self.players[current_player].remove_card_from_hand(card2); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/game.rs:246:25 [INFO] [stderr] | [INFO] [stderr] 246 | self.players[target].lose_coins(amount); [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] 246 | let _ = self.players[target].lose_coins(amount); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: `coup` (bin "coup" test) generated 22 warnings (run `cargo fix --bin "coup" --tests` to apply 5 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.14s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/coup-7b36a788a789f7e4) [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" "d281d1e24022908ef4f51067c561faa4927aad53e5a9260bd7f9d468eb7a6c93", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d281d1e24022908ef4f51067c561faa4927aad53e5a9260bd7f9d468eb7a6c93", kill_on_drop: false }` [INFO] [stdout] d281d1e24022908ef4f51067c561faa4927aad53e5a9260bd7f9d468eb7a6c93