[INFO] cloning repository https://github.com/jpastuszek/microRTS-rs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jpastuszek/microRTS-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjpastuszek%2FmicroRTS-rs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjpastuszek%2FmicroRTS-rs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] efa17147b015deb3db61c22ad6fecbd5511f22cc
[INFO] testing jpastuszek/microRTS-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%2Fjpastuszek%2FmicroRTS-rs" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/jpastuszek/microRTS-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/jpastuszek/microRTS-rs
[INFO] finished tweaking git repo https://github.com/jpastuszek/microRTS-rs
[INFO] tweaked toml for git repo https://github.com/jpastuszek/microRTS-rs written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/jpastuszek/microRTS-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] [stderr] warning: path `src/micro_rts.rs` was erroneously implicitly accepted for library `micro_rts`,
[INFO] [stderr] please rename the file to `src/lib.rs` or set lib.path in Cargo.toml
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2021
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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] 2718284fe52cb1a9c95d015e0134ddd95969bf3dd9d39e34e6be745fedeee113
[INFO] running `Command { std: "docker" "start" "-a" "2718284fe52cb1a9c95d015e0134ddd95969bf3dd9d39e34e6be745fedeee113", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2718284fe52cb1a9c95d015e0134ddd95969bf3dd9d39e34e6be745fedeee113", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2718284fe52cb1a9c95d015e0134ddd95969bf3dd9d39e34e6be745fedeee113", kill_on_drop: false }`
[INFO] [stdout] 2718284fe52cb1a9c95d015e0134ddd95969bf3dd9d39e34e6be745fedeee113
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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] bea39501ea1b6a96073d1a5771a6c557aef320e72c2f425d7e131bcadbdd2619
[INFO] running `Command { std: "docker" "start" "-a" "bea39501ea1b6a96073d1a5771a6c557aef320e72c2f425d7e131bcadbdd2619", kill_on_drop: false }`
[INFO] [stderr] warning: path `src/micro_rts.rs` was erroneously implicitly accepted for library `micro_rts`,
[INFO] [stderr] please rename the file to `src/lib.rs` or set lib.path in Cargo.toml
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2021
[INFO] [stderr]    Compiling num-traits v0.1.40
[INFO] [stderr]    Compiling either v1.1.0
[INFO] [stderr]    Compiling ansi_term v0.9.0
[INFO] [stderr]    Compiling itertools v0.6.0
[INFO] [stderr]    Compiling pathfinding v0.1.13
[INFO] [stderr]    Compiling micro_rts_rs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: fields `name` and `round` are never read
[INFO] [stdout]   --> src/game/game_state.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct GameState<'p, 't> {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] 14 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 15 |     round: u32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `GameState` 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: fields `0`, `1`, and `2` are never read
[INFO] [stdout]   --> src/game/game_state.rs:25:17
[INFO] [stdout]    |
[INFO] [stdout] 25 |     InvalidMove(EntityID, Direction, InvalidMove<'t>),
[INFO] [stdout]    |     ----------- ^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `GameRuleViolation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]    |
[INFO] [stdout] 25 |     InvalidMove((), (), ()),
[INFO] [stdout]    |                 ~~  ~~  ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/game/game_state.rs:26:20
[INFO] [stdout]    |
[INFO] [stdout] 26 |     EntityNotOwned(EntityID, &'p Player),
[INFO] [stdout]    |     -------------- ^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `GameRuleViolation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]    |
[INFO] [stdout] 26 |     EntityNotOwned((), ()),
[INFO] [stdout]    |                    ~~  ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/game/game_state.rs:27:24
[INFO] [stdout]    |
[INFO] [stdout] 27 |     EntityDoesNotExist(EntityID),
[INFO] [stdout]    |     ------------------ ^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `GameRuleViolation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 27 |     EntityDoesNotExist(()),
[INFO] [stdout]    |                        ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/game/game_state.rs:32:17
[INFO] [stdout]    |
[INFO] [stdout] 32 |     NotWalkable(Location<'t>),
[INFO] [stdout]    |     ----------- ^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `InvalidMove` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 32 |     NotWalkable(()),
[INFO] [stdout]    |                 ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/game/game_state.rs:33:26
[INFO] [stdout]    |
[INFO] [stdout] 33 |     LocationAlreadyTaken(Location<'t>, EntityID),
[INFO] [stdout]    |     -------------------- ^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `InvalidMove` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]    |
[INFO] [stdout] 33 |     LocationAlreadyTaken((), ()),
[INFO] [stdout]    |                          ~~  ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/game/game_state.rs:164:34
[INFO] [stdout]     |
[INFO] [stdout] 164 |             terrain: self.terrain.clone(),
[INFO] [stdout]     |                                  ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Terrain` does not implement `Clone`, so calling `clone` on `&Terrain` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 164 -             terrain: self.terrain.clone(),
[INFO] [stdout] 164 +             terrain: self.terrain,
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `Terrain`, implement `Clone` for it
[INFO] [stdout]    --> src/game/terrain.rs:158:1
[INFO] [stdout]     |
[INFO] [stdout] 158 + #[derive(Clone)]
[INFO] [stdout] 159 | pub struct Terrain {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.83s
[INFO] running `Command { std: "docker" "inspect" "bea39501ea1b6a96073d1a5771a6c557aef320e72c2f425d7e131bcadbdd2619", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bea39501ea1b6a96073d1a5771a6c557aef320e72c2f425d7e131bcadbdd2619", kill_on_drop: false }`
[INFO] [stdout] bea39501ea1b6a96073d1a5771a6c557aef320e72c2f425d7e131bcadbdd2619
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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] 123ce0e5d1c124f856911d687020176385f083130f2e91ad39e18ea9009f78c5
[INFO] running `Command { std: "docker" "start" "-a" "123ce0e5d1c124f856911d687020176385f083130f2e91ad39e18ea9009f78c5", kill_on_drop: false }`
[INFO] [stderr] warning: path `src/micro_rts.rs` was erroneously implicitly accepted for library `micro_rts`,
[INFO] [stderr] please rename the file to `src/lib.rs` or set lib.path in Cargo.toml
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2021
[INFO] [stderr]    Compiling micro_rts_rs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: fields `name` and `round` are never read
[INFO] [stdout]   --> src/game/game_state.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct GameState<'p, 't> {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] 14 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 15 |     round: u32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `GameState` 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: fields `0`, `1`, and `2` are never read
[INFO] [stdout]   --> src/game/game_state.rs:25:17
[INFO] [stdout]    |
[INFO] [stdout] 25 |     InvalidMove(EntityID, Direction, InvalidMove<'t>),
[INFO] [stdout]    |     ----------- ^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `GameRuleViolation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]    |
[INFO] [stdout] 25 |     InvalidMove((), (), ()),
[INFO] [stdout]    |                 ~~  ~~  ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/game/game_state.rs:26:20
[INFO] [stdout]    |
[INFO] [stdout] 26 |     EntityNotOwned(EntityID, &'p Player),
[INFO] [stdout]    |     -------------- ^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `GameRuleViolation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]    |
[INFO] [stdout] 26 |     EntityNotOwned((), ()),
[INFO] [stdout]    |                    ~~  ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/game/game_state.rs:27:24
[INFO] [stdout]    |
[INFO] [stdout] 27 |     EntityDoesNotExist(EntityID),
[INFO] [stdout]    |     ------------------ ^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `GameRuleViolation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 27 |     EntityDoesNotExist(()),
[INFO] [stdout]    |                        ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/game/game_state.rs:32:17
[INFO] [stdout]    |
[INFO] [stdout] 32 |     NotWalkable(Location<'t>),
[INFO] [stdout]    |     ----------- ^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `InvalidMove` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 32 |     NotWalkable(()),
[INFO] [stdout]    |                 ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/game/game_state.rs:33:26
[INFO] [stdout]    |
[INFO] [stdout] 33 |     LocationAlreadyTaken(Location<'t>, EntityID),
[INFO] [stdout]    |     -------------------- ^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `InvalidMove` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]    |
[INFO] [stdout] 33 |     LocationAlreadyTaken((), ()),
[INFO] [stdout]    |                          ~~  ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/game/game_state.rs:164:34
[INFO] [stdout]     |
[INFO] [stdout] 164 |             terrain: self.terrain.clone(),
[INFO] [stdout]     |                                  ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Terrain` does not implement `Clone`, so calling `clone` on `&Terrain` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 164 -             terrain: self.terrain.clone(),
[INFO] [stdout] 164 +             terrain: self.terrain,
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `Terrain`, implement `Clone` for it
[INFO] [stdout]    --> src/game/terrain.rs:158:1
[INFO] [stdout]     |
[INFO] [stdout] 158 + #[derive(Clone)]
[INFO] [stdout] 159 | pub struct Terrain {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `round` are never read
[INFO] [stdout]   --> src/game/game_state.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct GameState<'p, 't> {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] 14 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 15 |     round: u32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `GameState` 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: fields `0`, `1`, and `2` are never read
[INFO] [stdout]   --> src/game/game_state.rs:25:17
[INFO] [stdout]    |
[INFO] [stdout] 25 |     InvalidMove(EntityID, Direction, InvalidMove<'t>),
[INFO] [stdout]    |     ----------- ^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `GameRuleViolation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]    |
[INFO] [stdout] 25 |     InvalidMove((), (), ()),
[INFO] [stdout]    |                 ~~  ~~  ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/game/game_state.rs:26:20
[INFO] [stdout]    |
[INFO] [stdout] 26 |     EntityNotOwned(EntityID, &'p Player),
[INFO] [stdout]    |     -------------- ^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `GameRuleViolation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]    |
[INFO] [stdout] 26 |     EntityNotOwned((), ()),
[INFO] [stdout]    |                    ~~  ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/game/game_state.rs:27:24
[INFO] [stdout]    |
[INFO] [stdout] 27 |     EntityDoesNotExist(EntityID),
[INFO] [stdout]    |     ------------------ ^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `GameRuleViolation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 27 |     EntityDoesNotExist(()),
[INFO] [stdout]    |                        ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/game/game_state.rs:32:17
[INFO] [stdout]    |
[INFO] [stdout] 32 |     NotWalkable(Location<'t>),
[INFO] [stdout]    |     ----------- ^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `InvalidMove` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 32 |     NotWalkable(()),
[INFO] [stdout]    |                 ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/game/game_state.rs:33:26
[INFO] [stdout]    |
[INFO] [stdout] 33 |     LocationAlreadyTaken(Location<'t>, EntityID),
[INFO] [stdout]    |     -------------------- ^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `InvalidMove` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]    |
[INFO] [stdout] 33 |     LocationAlreadyTaken((), ()),
[INFO] [stdout]    |                          ~~  ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/game/game_state.rs:164:34
[INFO] [stdout]     |
[INFO] [stdout] 164 |             terrain: self.terrain.clone(),
[INFO] [stdout]     |                                  ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `Terrain` does not implement `Clone`, so calling `clone` on `&Terrain` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 164 -             terrain: self.terrain.clone(),
[INFO] [stdout] 164 +             terrain: self.terrain,
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `Terrain`, implement `Clone` for it
[INFO] [stdout]    --> src/game/terrain.rs:158:1
[INFO] [stdout]     |
[INFO] [stdout] 158 + #[derive(Clone)]
[INFO] [stdout] 159 | pub struct Terrain {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.81s
[INFO] running `Command { std: "docker" "inspect" "123ce0e5d1c124f856911d687020176385f083130f2e91ad39e18ea9009f78c5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "123ce0e5d1c124f856911d687020176385f083130f2e91ad39e18ea9009f78c5", kill_on_drop: false }`
[INFO] [stdout] 123ce0e5d1c124f856911d687020176385f083130f2e91ad39e18ea9009f78c5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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] c6c0f6c62d4b9f34ab249ec804b12b7b39e0eee0e7f2a2f052beb8913c8d93bb
[INFO] running `Command { std: "docker" "start" "-a" "c6c0f6c62d4b9f34ab249ec804b12b7b39e0eee0e7f2a2f052beb8913c8d93bb", kill_on_drop: false }`
[INFO] [stderr] warning: path `src/micro_rts.rs` was erroneously implicitly accepted for library `micro_rts`,
[INFO] [stderr] please rename the file to `src/lib.rs` or set lib.path in Cargo.toml
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2021
[INFO] [stderr] warning: fields `name` and `round` are never read
[INFO] [stderr]   --> src/game/game_state.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | pub struct GameState<'p, 't> {
[INFO] [stderr]    |            --------- fields in this struct
[INFO] [stderr] 14 |     name: String,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 15 |     round: u32,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `GameState` 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: fields `0`, `1`, and `2` are never read
[INFO] [stderr]   --> src/game/game_state.rs:25:17
[INFO] [stderr]    |
[INFO] [stderr] 25 |     InvalidMove(EntityID, Direction, InvalidMove<'t>),
[INFO] [stderr]    |     ----------- ^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     fields in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `GameRuleViolation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stderr]    |
[INFO] [stderr] 25 |     InvalidMove((), (), ()),
[INFO] [stderr]    |                 ~~  ~~  ~~
[INFO] [stderr] 
[INFO] [stderr] warning: fields `0` and `1` are never read
[INFO] [stderr]   --> src/game/game_state.rs:26:20
[INFO] [stderr]    |
[INFO] [stderr] 26 |     EntityNotOwned(EntityID, &'p Player),
[INFO] [stderr]    |     -------------- ^^^^^^^^  ^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     fields in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `GameRuleViolation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stderr]    |
[INFO] [stderr] 26 |     EntityNotOwned((), ()),
[INFO] [stderr]    |                    ~~  ~~
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/game/game_state.rs:27:24
[INFO] [stderr]    |
[INFO] [stderr] 27 |     EntityDoesNotExist(EntityID),
[INFO] [stderr]    |     ------------------ ^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `GameRuleViolation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]    |
[INFO] [stderr] 27 |     EntityDoesNotExist(()),
[INFO] [stderr]    |                        ~~
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/game/game_state.rs:32:17
[INFO] [stderr]    |
[INFO] [stderr] 32 |     NotWalkable(Location<'t>),
[INFO] [stderr]    |     ----------- ^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `InvalidMove` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]    |
[INFO] [stderr] 32 |     NotWalkable(()),
[INFO] [stderr]    |                 ~~
[INFO] [stderr] 
[INFO] [stderr] warning: fields `0` and `1` are never read
[INFO] [stderr]   --> src/game/game_state.rs:33:26
[INFO] [stderr]    |
[INFO] [stderr] 33 |     LocationAlreadyTaken(Location<'t>, EntityID),
[INFO] [stderr]    |     -------------------- ^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     fields in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `InvalidMove` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stderr]    |
[INFO] [stderr] 33 |     LocationAlreadyTaken((), ()),
[INFO] [stderr]    |                          ~~  ~~
[INFO] [stderr] 
[INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stderr]    --> src/game/game_state.rs:164:34
[INFO] [stderr]     |
[INFO] [stderr] 164 |             terrain: self.terrain.clone(),
[INFO] [stderr]     |                                  ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: the type `Terrain` does not implement `Clone`, so calling `clone` on `&Terrain` copies the reference, which does not do anything and can be removed
[INFO] [stderr]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stderr] help: remove this redundant call
[INFO] [stderr]     |
[INFO] [stderr] 164 -             terrain: self.terrain.clone(),
[INFO] [stderr] 164 +             terrain: self.terrain,
[INFO] [stderr]     |
[INFO] [stderr] help: if you meant to clone `Terrain`, implement `Clone` for it
[INFO] [stderr]    --> src/game/terrain.rs:158:1
[INFO] [stderr]     |
[INFO] [stderr] 158 + #[derive(Clone)]
[INFO] [stderr] 159 | pub struct Terrain {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: `micro_rts_rs` (lib) generated 7 warnings (run `cargo fix --lib -p micro_rts_rs` to apply 1 suggestion)
[INFO] [stderr] warning: `micro_rts_rs` (lib test) generated 7 warnings (7 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.04s
[INFO] [stderr]      Running unittests src/micro_rts.rs (/opt/rustwide/target/debug/deps/micro_rts-f08866324e99cb3e)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test game::terrain::tests::test_direction_iter ... ok
[INFO] [stdout] test game::terrain::tests::location_neighbours ... ok
[INFO] [stdout] test game::terrain::tests::in_direction_overflow ... ok
[INFO] [stdout] test game::terrain::tests::test_direction_to ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/micro_rts_rs-927300fa52a46d21)
[INFO] [stderr]    Doc-tests micro_rts
[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] [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" "c6c0f6c62d4b9f34ab249ec804b12b7b39e0eee0e7f2a2f052beb8913c8d93bb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c6c0f6c62d4b9f34ab249ec804b12b7b39e0eee0e7f2a2f052beb8913c8d93bb", kill_on_drop: false }`
[INFO] [stdout] c6c0f6c62d4b9f34ab249ec804b12b7b39e0eee0e7f2a2f052beb8913c8d93bb
