[INFO] cloning repository https://github.com/lkingsford/mon2y_rs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/lkingsford/mon2y_rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flkingsford%2Fmon2y_rs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flkingsford%2Fmon2y_rs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 3af6b2265feaf6d884c8ac63fb81afa0522000b2
[INFO] testing lkingsford/mon2y_rs against beta-2024-12-08 for beta-1.84.0-4-retry
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flkingsford%2Fmon2y_rs" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/lkingsford/mon2y_rs on toolchain beta-2024-12-08
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2024-12-08" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/lkingsford/mon2y_rs
[INFO] finished tweaking git repo https://github.com/lkingsford/mon2y_rs
[INFO] tweaked toml for git repo https://github.com/lkingsford/mon2y_rs written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/lkingsford/mon2y_rs 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" "+beta-2024-12-08" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-12-08" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 422ed35061c1110a9f9f056bc4e1e081003ac46d942ddf68224cafc2d3162fd0
[INFO] running `Command { std: "docker" "start" "-a" "422ed35061c1110a9f9f056bc4e1e081003ac46d942ddf68224cafc2d3162fd0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "422ed35061c1110a9f9f056bc4e1e081003ac46d942ddf68224cafc2d3162fd0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "422ed35061c1110a9f9f056bc4e1e081003ac46d942ddf68224cafc2d3162fd0", kill_on_drop: false }`
[INFO] [stdout] 422ed35061c1110a9f9f056bc4e1e081003ac46d942ddf68224cafc2d3162fd0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-12-08" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 855b16739cc13eb1c34d39b9ba47fcab4f6c6139b2e1c2d5766ebb2d014e78b0
[INFO] running `Command { std: "docker" "start" "-a" "855b16739cc13eb1c34d39b9ba47fcab4f6c6139b2e1c2d5766ebb2d014e78b0", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.92
[INFO] [stderr]    Compiling unicode-ident v1.0.14
[INFO] [stderr]    Compiling utf8parse v0.2.2
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling libc v0.2.164
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.1
[INFO] [stderr]    Compiling anstyle-query v1.1.2
[INFO] [stderr]    Compiling anstyle v1.0.10
[INFO] [stderr]    Compiling colorchoice v1.0.3
[INFO] [stderr]    Compiling regex-syntax v0.8.5
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling serde v1.0.215
[INFO] [stderr]    Compiling clap_lex v0.7.3
[INFO] [stderr]    Compiling log v0.4.22
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling anstyle-parse v0.2.6
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]    Compiling serde_json v1.0.133
[INFO] [stderr]    Compiling itoa v1.0.13
[INFO] [stderr]    Compiling ryu v1.0.18
[INFO] [stderr]    Compiling humantime v2.1.0
[INFO] [stderr]    Compiling anstream v0.6.18
[INFO] [stderr]    Compiling clap_builder v4.5.21
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]    Compiling syn v2.0.89
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling serde_derive v1.0.215
[INFO] [stderr]    Compiling clap_derive v4.5.18
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling zerocopy v0.7.35
[INFO] [stderr]    Compiling env_filter v0.1.2
[INFO] [stderr]    Compiling env_logger v0.11.5
[INFO] [stderr]    Compiling ppv-lite86 v0.2.20
[INFO] [stderr]    Compiling clap v4.5.21
[INFO] [stderr]    Compiling clap-verbosity-flag v3.0.0
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling mon2y_rs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Action`
[INFO] [stdout]  --> src/mon2y/mcts.rs:1:19
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::game::{Action, State};
[INFO] [stdout]   |                   ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/mon2y/node.rs:143:40
[INFO] [stdout]     |
[INFO] [stdout] 143 |                         let ucb: f64 = (q + constant * u + r);
[INFO] [stdout]     |                                        ^                    ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 143 -                         let ucb: f64 = (q + constant * u + r);
[INFO] [stdout] 143 +                         let ucb: f64 = q + constant * u + r;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: elided lifetime has a name
[INFO] [stdout]    --> src/mon2y/node.rs:193:59
[INFO] [stdout]     |
[INFO] [stdout] 193 |     pub fn get_child<'a>(&'a self, action: ActionType) -> &Node<StateType, ActionType> {
[INFO] [stdout]     |                      -- lifetime `'a` declared here       ^ this elided lifetime gets resolved as `'a`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(elided_named_lifetimes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `create_expanded_node`
[INFO] [stdout]  --> src/mon2y/tree.rs:2:19
[INFO] [stdout]   |
[INFO] [stdout] 2 | use super::node::{create_expanded_node, Node};
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/c4.rs:185:30
[INFO] [stdout]     |
[INFO] [stdout] 185 |     fn get_human_turn(&self, state: &Self::StateType) -> Self::ActionType {
[INFO] [stdout]     |                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/mon2y/mcts.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let mut root_node = create_expanded_node(state);
[INFO] [stdout]    |         ----^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]   --> src/mon2y/node.rs:24:17
[INFO] [stdout]    |
[INFO] [stdout] 24 |                 state, children, ..
[INFO] [stdout]    |                 ^^^^^-
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: try removing the field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cached_ucb`
[INFO] [stdout]   --> src/mon2y/node.rs:55:17
[INFO] [stdout]    |
[INFO] [stdout] 55 |                 cached_ucb,
[INFO] [stdout]    |                 ^^^^^^^^^^-
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: try removing the field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/mon2y/tree.rs:139:13
[INFO] [stdout]     |
[INFO] [stdout] 139 |             &self.iterate();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 139 |             let _ = &self.iterate();
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Action`
[INFO] [stdout]  --> src/mon2y/mcts.rs:1:19
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::game::{Action, State};
[INFO] [stdout]   |                   ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/mon2y/node.rs:143:40
[INFO] [stdout]     |
[INFO] [stdout] 143 |                         let ucb: f64 = (q + constant * u + r);
[INFO] [stdout]     |                                        ^                    ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 143 -                         let ucb: f64 = (q + constant * u + r);
[INFO] [stdout] 143 +                         let ucb: f64 = q + constant * u + r;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: elided lifetime has a name
[INFO] [stdout]    --> src/mon2y/node.rs:193:59
[INFO] [stdout]     |
[INFO] [stdout] 193 |     pub fn get_child<'a>(&'a self, action: ActionType) -> &Node<StateType, ActionType> {
[INFO] [stdout]     |                      -- lifetime `'a` declared here       ^ this elided lifetime gets resolved as `'a`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(elided_named_lifetimes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `create_expanded_node`
[INFO] [stdout]  --> src/mon2y/tree.rs:2:19
[INFO] [stdout]   |
[INFO] [stdout] 2 | use super::node::{create_expanded_node, Node};
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/c4.rs:185:30
[INFO] [stdout]     |
[INFO] [stdout] 185 |     fn get_human_turn(&self, state: &Self::StateType) -> Self::ActionType {
[INFO] [stdout]     |                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/mon2y/mcts.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let mut root_node = create_expanded_node(state);
[INFO] [stdout]    |         ----^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]   --> src/mon2y/node.rs:24:17
[INFO] [stdout]    |
[INFO] [stdout] 24 |                 state, children, ..
[INFO] [stdout]    |                 ^^^^^-
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: try removing the field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cached_ucb`
[INFO] [stdout]   --> src/mon2y/node.rs:55:17
[INFO] [stdout]    |
[INFO] [stdout] 55 |                 cached_ucb,
[INFO] [stdout]    |                 ^^^^^^^^^^-
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: try removing the field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `GameAction` is never constructed
[INFO] [stdout]   --> src/mon2y/game.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub enum Actor<ActionType> {
[INFO] [stdout]    |          ----- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 18 |     GameAction(ActionType),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Actor` 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: unused borrow that must be used
[INFO] [stdout]    --> src/mon2y/tree.rs:139:13
[INFO] [stdout]     |
[INFO] [stdout] 139 |             &self.iterate();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 139 |             let _ = &self.iterate();
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 30.35s
[INFO] running `Command { std: "docker" "inspect" "855b16739cc13eb1c34d39b9ba47fcab4f6c6139b2e1c2d5766ebb2d014e78b0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "855b16739cc13eb1c34d39b9ba47fcab4f6c6139b2e1c2d5766ebb2d014e78b0", kill_on_drop: false }`
[INFO] [stdout] 855b16739cc13eb1c34d39b9ba47fcab4f6c6139b2e1c2d5766ebb2d014e78b0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-12-08" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0dbf6909c60b3033174baa3918bf41667ebcb62b50ee9cc4cb8753b294a4a18f
[INFO] running `Command { std: "docker" "start" "-a" "0dbf6909c60b3033174baa3918bf41667ebcb62b50ee9cc4cb8753b294a4a18f", kill_on_drop: false }`
[INFO] [stderr]    Compiling mon2y_rs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Action`
[INFO] [stdout]  --> src/mon2y/mcts.rs:1:19
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::game::{Action, State};
[INFO] [stdout]   |                   ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/mon2y/node.rs:143:40
[INFO] [stdout]     |
[INFO] [stdout] 143 |                         let ucb: f64 = (q + constant * u + r);
[INFO] [stdout]     |                                        ^                    ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 143 -                         let ucb: f64 = (q + constant * u + r);
[INFO] [stdout] 143 +                         let ucb: f64 = q + constant * u + r;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: elided lifetime has a name
[INFO] [stdout]    --> src/mon2y/node.rs:193:59
[INFO] [stdout]     |
[INFO] [stdout] 193 |     pub fn get_child<'a>(&'a self, action: ActionType) -> &Node<StateType, ActionType> {
[INFO] [stdout]     |                      -- lifetime `'a` declared here       ^ this elided lifetime gets resolved as `'a`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(elided_named_lifetimes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `create_expanded_node`
[INFO] [stdout]  --> src/mon2y/tree.rs:2:19
[INFO] [stdout]   |
[INFO] [stdout] 2 | use super::node::{create_expanded_node, Node};
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/c4.rs:185:30
[INFO] [stdout]     |
[INFO] [stdout] 185 |     fn get_human_turn(&self, state: &Self::StateType) -> Self::ActionType {
[INFO] [stdout]     |                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/mon2y/mcts.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let mut root_node = create_expanded_node(state);
[INFO] [stdout]    |         ----^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]   --> src/mon2y/node.rs:24:17
[INFO] [stdout]    |
[INFO] [stdout] 24 |                 state, children, ..
[INFO] [stdout]    |                 ^^^^^-
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: try removing the field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cached_ucb`
[INFO] [stdout]   --> src/mon2y/node.rs:55:17
[INFO] [stdout]    |
[INFO] [stdout] 55 |                 cached_ucb,
[INFO] [stdout]    |                 ^^^^^^^^^^-
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: try removing the field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/mon2y/tree.rs:139:13
[INFO] [stdout]     |
[INFO] [stdout] 139 |             &self.iterate();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 139 |             let _ = &self.iterate();
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Action`
[INFO] [stdout]  --> src/mon2y/mcts.rs:1:19
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::game::{Action, State};
[INFO] [stdout]   |                   ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/mon2y/node.rs:143:40
[INFO] [stdout]     |
[INFO] [stdout] 143 |                         let ucb: f64 = (q + constant * u + r);
[INFO] [stdout]     |                                        ^                    ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 143 -                         let ucb: f64 = (q + constant * u + r);
[INFO] [stdout] 143 +                         let ucb: f64 = q + constant * u + r;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: elided lifetime has a name
[INFO] [stdout]    --> src/mon2y/node.rs:193:59
[INFO] [stdout]     |
[INFO] [stdout] 193 |     pub fn get_child<'a>(&'a self, action: ActionType) -> &Node<StateType, ActionType> {
[INFO] [stdout]     |                      -- lifetime `'a` declared here       ^ this elided lifetime gets resolved as `'a`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(elided_named_lifetimes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `create_expanded_node`
[INFO] [stdout]  --> src/mon2y/tree.rs:2:19
[INFO] [stdout]   |
[INFO] [stdout] 2 | use super::node::{create_expanded_node, Node};
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/c4.rs:185:30
[INFO] [stdout]     |
[INFO] [stdout] 185 |     fn get_human_turn(&self, state: &Self::StateType) -> Self::ActionType {
[INFO] [stdout]     |                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/mon2y/mcts.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let mut root_node = create_expanded_node(state);
[INFO] [stdout]    |         ----^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]   --> src/mon2y/node.rs:24:17
[INFO] [stdout]    |
[INFO] [stdout] 24 |                 state, children, ..
[INFO] [stdout]    |                 ^^^^^-
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: try removing the field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cached_ucb`
[INFO] [stdout]   --> src/mon2y/node.rs:55:17
[INFO] [stdout]    |
[INFO] [stdout] 55 |                 cached_ucb,
[INFO] [stdout]    |                 ^^^^^^^^^^-
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: try removing the field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `GameAction` is never constructed
[INFO] [stdout]   --> src/mon2y/game.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub enum Actor<ActionType> {
[INFO] [stdout]    |          ----- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 18 |     GameAction(ActionType),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Actor` 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: unused borrow that must be used
[INFO] [stdout]    --> src/mon2y/tree.rs:139:13
[INFO] [stdout]     |
[INFO] [stdout] 139 |             &self.iterate();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 139 |             let _ = &self.iterate();
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Action`
[INFO] [stdout]  --> src/mon2y/mcts.rs:1:19
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::game::{Action, State};
[INFO] [stdout]   |                   ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/mon2y/node.rs:143:40
[INFO] [stdout]     |
[INFO] [stdout] 143 |                         let ucb: f64 = (q + constant * u + r);
[INFO] [stdout]     |                                        ^                    ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 143 -                         let ucb: f64 = (q + constant * u + r);
[INFO] [stdout] 143 +                         let ucb: f64 = q + constant * u + r;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: elided lifetime has a name
[INFO] [stdout]    --> src/mon2y/node.rs:193:59
[INFO] [stdout]     |
[INFO] [stdout] 193 |     pub fn get_child<'a>(&'a self, action: ActionType) -> &Node<StateType, ActionType> {
[INFO] [stdout]     |                      -- lifetime `'a` declared here       ^ this elided lifetime gets resolved as `'a`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(elided_named_lifetimes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/mon2y/tree.rs:261:28
[INFO] [stdout]     |
[INFO] [stdout] 261 |                         if (*turns > 0) {
[INFO] [stdout]     |                            ^          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 261 -                         if (*turns > 0) {
[INFO] [stdout] 261 +                         if *turns > 0 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> tests/c4_sensible_turns.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 56 |     let mut root_node = create_expanded_node(c4_state);
[INFO] [stdout]    |         ----^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Action`
[INFO] [stdout]  --> src/mon2y/mcts.rs:1:19
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::game::{Action, State};
[INFO] [stdout]   |                   ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `player`
[INFO] [stdout]   --> tests/c4_sensible_turns.rs:76:53
[INFO] [stdout]    |
[INFO] [stdout] 76 |         if let mon2y_rs::mon2y::game::Actor::Player(player) = c4_state.next_actor() {
[INFO] [stdout]    |                                                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_player`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/mon2y/node.rs:143:40
[INFO] [stdout]     |
[INFO] [stdout] 143 |                         let ucb: f64 = (q + constant * u + r);
[INFO] [stdout]     |                                        ^                    ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 143 -                         let ucb: f64 = (q + constant * u + r);
[INFO] [stdout] 143 +                         let ucb: f64 = q + constant * u + r;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: elided lifetime has a name
[INFO] [stdout]    --> src/mon2y/node.rs:193:59
[INFO] [stdout]     |
[INFO] [stdout] 193 |     pub fn get_child<'a>(&'a self, action: ActionType) -> &Node<StateType, ActionType> {
[INFO] [stdout]     |                      -- lifetime `'a` declared here       ^ this elided lifetime gets resolved as `'a`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(elided_named_lifetimes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/mon2y/tree.rs:261:28
[INFO] [stdout]     |
[INFO] [stdout] 261 |                         if (*turns > 0) {
[INFO] [stdout]     |                            ^          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 261 -                         if (*turns > 0) {
[INFO] [stdout] 261 +                         if *turns > 0 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/c4.rs:185:30
[INFO] [stdout]     |
[INFO] [stdout] 185 |     fn get_human_turn(&self, state: &Self::StateType) -> Self::ActionType {
[INFO] [stdout]     |                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/mon2y/mcts.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let mut root_node = create_expanded_node(state);
[INFO] [stdout]    |         ----^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]   --> src/mon2y/node.rs:24:17
[INFO] [stdout]    |
[INFO] [stdout] 24 |                 state, children, ..
[INFO] [stdout]    |                 ^^^^^-
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: try removing the field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cached_ucb`
[INFO] [stdout]   --> src/mon2y/node.rs:55:17
[INFO] [stdout]    |
[INFO] [stdout] 55 |                 cached_ucb,
[INFO] [stdout]    |                 ^^^^^^^^^^-
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: try removing the field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/c4.rs:185:30
[INFO] [stdout]     |
[INFO] [stdout] 185 |     fn get_human_turn(&self, state: &Self::StateType) -> Self::ActionType {
[INFO] [stdout]     |                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/mon2y/tree.rs:139:13
[INFO] [stdout]     |
[INFO] [stdout] 139 |             &self.iterate();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 139 |             let _ = &self.iterate();
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/mon2y/mcts.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let mut root_node = create_expanded_node(state);
[INFO] [stdout]    |         ----^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]   --> src/mon2y/node.rs:24:17
[INFO] [stdout]    |
[INFO] [stdout] 24 |                 state, children, ..
[INFO] [stdout]    |                 ^^^^^-
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: try removing the field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cached_ucb`
[INFO] [stdout]   --> src/mon2y/node.rs:55:17
[INFO] [stdout]    |
[INFO] [stdout] 55 |                 cached_ucb,
[INFO] [stdout]    |                 ^^^^^^^^^^-
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: try removing the field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `GameAction` is never constructed
[INFO] [stdout]   --> src/mon2y/game.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub enum Actor<ActionType> {
[INFO] [stdout]    |          ----- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 18 |     GameAction(ActionType),
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Actor` 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: unused borrow that must be used
[INFO] [stdout]    --> src/mon2y/tree.rs:139:13
[INFO] [stdout]     |
[INFO] [stdout] 139 |             &self.iterate();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 139 |             let _ = &self.iterate();
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 3.06s
[INFO] running `Command { std: "docker" "inspect" "0dbf6909c60b3033174baa3918bf41667ebcb62b50ee9cc4cb8753b294a4a18f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0dbf6909c60b3033174baa3918bf41667ebcb62b50ee9cc4cb8753b294a4a18f", kill_on_drop: false }`
[INFO] [stdout] 0dbf6909c60b3033174baa3918bf41667ebcb62b50ee9cc4cb8753b294a4a18f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-12-08" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 319ea18d324ecedffb17d098e7a8a5b51c4374e593ea7906625cdb112123d6f4
[INFO] running `Command { std: "docker" "start" "-a" "319ea18d324ecedffb17d098e7a8a5b51c4374e593ea7906625cdb112123d6f4", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `Action`
[INFO] [stderr]  --> src/mon2y/mcts.rs:1:19
[INFO] [stderr]   |
[INFO] [stderr] 1 | use super::game::{Action, State};
[INFO] [stderr]   |                   ^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]    --> src/mon2y/node.rs:143:40
[INFO] [stderr]     |
[INFO] [stderr] 143 |                         let ucb: f64 = (q + constant * u + r);
[INFO] [stderr]     |                                        ^                    ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 143 -                         let ucb: f64 = (q + constant * u + r);
[INFO] [stderr] 143 +                         let ucb: f64 = q + constant * u + r;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: elided lifetime has a name
[INFO] [stderr]    --> src/mon2y/node.rs:193:59
[INFO] [stderr]     |
[INFO] [stderr] 193 |     pub fn get_child<'a>(&'a self, action: ActionType) -> &Node<StateType, ActionType> {
[INFO] [stderr]     |                      -- lifetime `'a` declared here       ^ this elided lifetime gets resolved as `'a`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(elided_named_lifetimes)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `create_expanded_node`
[INFO] [stderr]  --> src/mon2y/tree.rs:2:19
[INFO] [stderr]   |
[INFO] [stderr] 2 | use super::node::{create_expanded_node, Node};
[INFO] [stderr]   |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `state`
[INFO] [stderr]    --> src/c4.rs:185:30
[INFO] [stderr]     |
[INFO] [stderr] 185 |     fn get_human_turn(&self, state: &Self::StateType) -> Self::ActionType {
[INFO] [stderr]     |                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/mon2y/mcts.rs:14:9
[INFO] [stderr]    |
[INFO] [stderr] 14 |     let mut root_node = create_expanded_node(state);
[INFO] [stderr]    |         ----^^^^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `state`
[INFO] [stderr]   --> src/mon2y/node.rs:24:17
[INFO] [stderr]    |
[INFO] [stderr] 24 |                 state, children, ..
[INFO] [stderr]    |                 ^^^^^-
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 help: try removing the field
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `cached_ucb`
[INFO] [stderr]   --> src/mon2y/node.rs:55:17
[INFO] [stderr]    |
[INFO] [stderr] 55 |                 cached_ucb,
[INFO] [stderr]    |                 ^^^^^^^^^^-
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 help: try removing the field
[INFO] [stderr] 
[INFO] [stderr] warning: unused borrow that must be used
[INFO] [stderr]    --> src/mon2y/tree.rs:139:13
[INFO] [stderr]     |
[INFO] [stderr] 139 |             &self.iterate();
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 139 |             let _ = &self.iterate();
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `mon2y_rs` (lib) generated 9 warnings (run `cargo fix --lib -p mon2y_rs` to apply 6 suggestions)
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/mon2y/tree.rs:261:28
[INFO] [stderr]     |
[INFO] [stderr] 261 |                         if (*turns > 0) {
[INFO] [stderr]     |                            ^          ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 261 -                         if (*turns > 0) {
[INFO] [stderr] 261 +                         if *turns > 0 {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: variant `GameAction` is never constructed
[INFO] [stderr]   --> src/mon2y/game.rs:18:5
[INFO] [stderr]    |
[INFO] [stderr] 14 | pub enum Actor<ActionType> {
[INFO] [stderr]    |          ----- variant in this enum
[INFO] [stderr] ...
[INFO] [stderr] 18 |     GameAction(ActionType),
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Actor` 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: `mon2y_rs` (bin "mon2y_rs" test) generated 10 warnings (8 duplicates) (run `cargo fix --bin "mon2y_rs" --tests` to apply 1 suggestion)
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> tests/c4_sensible_turns.rs:56:9
[INFO] [stderr]    |
[INFO] [stderr] 56 |     let mut root_node = create_expanded_node(c4_state);
[INFO] [stderr]    |         ----^^^^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `player`
[INFO] [stderr]   --> tests/c4_sensible_turns.rs:76:53
[INFO] [stderr]    |
[INFO] [stderr] 76 |         if let mon2y_rs::mon2y::game::Actor::Player(player) = c4_state.next_actor() {
[INFO] [stderr]    |                                                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_player`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `mon2y_rs` (test "c4_sensible_turns") generated 2 warnings (run `cargo fix --test "c4_sensible_turns"` to apply 1 suggestion)
[INFO] [stderr] warning: `mon2y_rs` (bin "mon2y_rs") generated 10 warnings (10 duplicates)
[INFO] [stderr] warning: `mon2y_rs` (lib test) generated 9 warnings (9 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.06s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/mon2y_rs-cf0449ff5f788776)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test mon2y::tree::tests::test_selection_basic ... ok
[INFO] [stdout] test mon2y::tree::tests::test_propagate_two_players ... ok
[INFO] [stdout] test mon2y::tree::tests::test_play_out ... ok
[INFO] [stdout] test mon2y::tree::tests::test_selection_multiple_expanded ... ok
[INFO] [stdout] test mon2y::tree::tests::test_expansion_basic ... ok
[INFO] [stdout] test mon2y::tree::tests::test_propagate_one_player ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/mon2y_rs-32c936b23fb8b994)
[INFO] [stdout] running 6 tests
[INFO] [stdout] test mon2y::tree::tests::test_selection_multiple_expanded ... ok
[INFO] [stdout] test mon2y::tree::tests::test_propagate_two_players ... ok
[INFO] [stdout] test mon2y::tree::tests::test_expansion_basic ... ok
[INFO] [stdout] test mon2y::tree::tests::test_propagate_one_player ... ok
[INFO] [stdout] test mon2y::tree::tests::test_play_out ... ok
[INFO] [stdout] test mon2y::tree::tests::test_selection_basic ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/c4_sensible_turns.rs (/opt/rustwide/target/debug/deps/c4_sensible_turns-c9d99867d9bb7db6)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test test_c4_one_action_blocks_win ... ok
[INFO] [stdout] test test_c4_one_action_gets_win ... ok
[INFO] [stdout] test test_c4_play_out_repeated ... ok
[INFO] [stdout] test test_c4_plays_through_without_crash ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.50s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests mon2y_rs
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]    --> src/mon2y/node.rs:143:40
[INFO] [stderr]     |
[INFO] [stderr] 143 |                         let ucb: f64 = (q + constant * u + r);
[INFO] [stderr]     |                                        ^                    ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 143 -                         let ucb: f64 = (q + constant * u + r);
[INFO] [stderr] 143 +                         let ucb: f64 = q + constant * u + r;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: 1 warning emitted
[INFO] [stderr] 
[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" "319ea18d324ecedffb17d098e7a8a5b51c4374e593ea7906625cdb112123d6f4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "319ea18d324ecedffb17d098e7a8a5b51c4374e593ea7906625cdb112123d6f4", kill_on_drop: false }`
[INFO] [stdout] 319ea18d324ecedffb17d098e7a8a5b51c4374e593ea7906625cdb112123d6f4
