[INFO] fetching crate card-game 0.1.0...
[INFO] testing card-game-0.1.0 against master#0d162b25edd5bf0dba9a22e83b614f1113e90474 for pr-150681
[INFO] extracting crate card-game 0.1.0 into /workspace/builds/worker-1-tc1/source
[INFO] started tweaking crates.io crate card-game 0.1.0
[INFO] finished tweaking crates.io crate card-game 0.1.0
[INFO] tweaked toml for crates.io crate card-game 0.1.0 written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate card-game 0.1.0 on toolchain 0d162b25edd5bf0dba9a22e83b614f1113e90474
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate card-game 0.1.0 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" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded thiserror v2.0.14
[INFO] [stderr]   Downloaded card-game-derive v0.1.0
[INFO] [stderr]   Downloaded card-stack v0.1.0
[INFO] [stderr]   Downloaded thiserror-impl v2.0.14
[INFO] [stderr]   Downloaded syn v2.0.105
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2d4808ac9003940f0e9eb5d579297cd8119c6c1ca9d2ccc21c5b15f19f3ee23f
[INFO] running `Command { std: "docker" "start" "-a" "2d4808ac9003940f0e9eb5d579297cd8119c6c1ca9d2ccc21c5b15f19f3ee23f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2d4808ac9003940f0e9eb5d579297cd8119c6c1ca9d2ccc21c5b15f19f3ee23f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2d4808ac9003940f0e9eb5d579297cd8119c6c1ca9d2ccc21c5b15f19f3ee23f", kill_on_drop: false }`
[INFO] [stdout] 2d4808ac9003940f0e9eb5d579297cd8119c6c1ca9d2ccc21c5b15f19f3ee23f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0f5f242273c96811324f8ec473e44a9fb59095054d7768aa23f164e2459621f8
[INFO] running `Command { std: "docker" "start" "-a" "0f5f242273c96811324f8ec473e44a9fb59095054d7768aa23f164e2459621f8", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.101
[INFO] [stderr]    Compiling thiserror v2.0.14
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling syn v2.0.105
[INFO] [stderr]    Compiling thiserror-impl v2.0.14
[INFO] [stderr]    Compiling card-game-derive v0.1.0
[INFO] [stderr]    Compiling variadics_please v1.1.0
[INFO] [stderr]    Compiling card-stack v0.1.0
[INFO] [stderr]    Compiling card-game v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `impl_state_filter_inputs`
[INFO] [stdout]  --> src/cards/mod.rs:2:42
[INFO] [stdout]   |
[INFO] [stdout] 2 | use card_game_derive::{StateFilterInput, impl_state_filter_inputs};
[INFO] [stdout]   |                                          ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::validation::StateFilterInput`
[INFO] [stdout]  --> src/cards/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::validation::StateFilterInput;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `identifications::PlayerID`
[INFO] [stdout]  --> src/identifications/card.rs:1:57
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{cards::CardID, create_valid_identification, identifications::PlayerID, zones::Zone};
[INFO] [stdout]   |                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `validation::StateFilter`
[INFO] [stdout]  --> src/identifications/player.rs:5:42
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::{create_valid_identification, validation::StateFilter};
[INFO] [stdout]   |                                          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/zones/context.rs:22:81
[INFO] [stdout]    |
[INFO] [stdout] 22 |             pub fn get_zone_card(&self, card_id: CardID) -> Option<(ValidCardID<(Z::CardFilter $(, $t)*)>, &crate::cards::Card<Z::Ca...
[INFO] [stdout]    |                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 | impl_zone_context!();
[INFO] [stdout]    | -------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/zones/context.rs:27:83
[INFO] [stdout]    |
[INFO] [stdout] 27 |             pub fn get_zone_card_id(&self, card_id: CardID) -> Option<ValidCardID<(Z::CardFilter $(, $t)*)>> {
[INFO] [stdout]    |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 | impl_zone_context!();
[INFO] [stdout]    | -------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/zones/context.rs:32:89
[INFO] [stdout]    |
[INFO] [stdout] 32 |             pub fn get_zone_card_from_index(&self, index: usize) -> Option<(ValidCardID<(Z::CardFilter $(, $t)*)>, &crate::cards::Ca...
[INFO] [stdout]    |                                                                                         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 | impl_zone_context!();
[INFO] [stdout]    | -------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/zones/context.rs:37:91
[INFO] [stdout]    |
[INFO] [stdout] 37 |             pub fn get_zone_card_id_from_index(&self, index: usize) -> Option<ValidCardID<(Z::CardFilter $(, $t)*)>> {
[INFO] [stdout]    |                                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 | impl_zone_context!();
[INFO] [stdout]    | -------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/zones/context.rs:42:77
[INFO] [stdout]    |
[INFO] [stdout] 42 |             pub fn zone_card_ids(&self) -> impl Iterator<Item = ValidCardID<(Z::CardFilter $(, $t)*)>> {
[INFO] [stdout]    |                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 | impl_zone_context!();
[INFO] [stdout]    | -------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ArrayZone`, `CardID`, and `ValidCardID`
[INFO] [stdout]  --> src/zones/slot.rs:2:19
[INFO] [stdout]   |
[INFO] [stdout] 2 |     cards::{Card, CardID},
[INFO] [stdout]   |                   ^^^^^^
[INFO] [stdout] 3 |     zones::{ArrayZone, FiniteZone, InfiniteZone, Zone, ValidCardID},
[INFO] [stdout]   |             ^^^^^^^^^                                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `validation::StateFilter`
[INFO] [stdout]  --> src/zones/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     validation::StateFilter,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/zones/slot.rs:89:22
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub fn transport(mut self) -> Result<(), SlotToSlotTransportError> {
[INFO] [stdout]    |                      ----^^^^
[INFO] [stdout]    |                      |
[INFO] [stdout]    |                      help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/zones/slot.rs:120:22
[INFO] [stdout]     |
[INFO] [stdout] 120 |     pub fn transport(mut self) -> Result<(), SlotToFiniteZoneTransportError> {
[INFO] [stdout]     |                      ----^^^^
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/zones/slot.rs:147:22
[INFO] [stdout]     |
[INFO] [stdout] 147 |     pub fn transport(mut self) -> Result<(), CardNotInSlotError> {
[INFO] [stdout]     |                      ----^^^^
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/zones/mod.rs:137:9
[INFO] [stdout]     |
[INFO] [stdout] 137 |         mut self,
[INFO] [stdout]     |         ----^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/zones/mod.rs:163:9
[INFO] [stdout]     |
[INFO] [stdout] 163 |         mut self,
[INFO] [stdout]     |         ----^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/zones/mod.rs:184:22
[INFO] [stdout]     |
[INFO] [stdout] 184 |     pub fn transport(mut self, zone_card_id: ValidCardID<FromZ::CardFilter>) {
[INFO] [stdout]     |                      ----^^^^
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `clone_id` is never used
[INFO] [stdout]   --> src/cards/mod.rs:43:19
[INFO] [stdout]    |
[INFO] [stdout] 39 | impl CardID {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub(crate) fn clone_id(&self) -> Self {
[INFO] [stdout]    |                   ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/zones/context.rs:16:27
[INFO] [stdout]    |
[INFO] [stdout] 13 |         impl<'a, Z: Zone + 'a $(, $t: 'static)*> ZoneContext<'a, Z, ($($t,)*)> {
[INFO] [stdout]    |         ---------------------------------------------------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 16 |             pub(crate) fn new(zone: &'a Z) -> Self {
[INFO] [stdout]    |                           ^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 | impl_zone_context!();
[INFO] [stdout]    | -------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/zones/context.rs:16:27
[INFO] [stdout]    |
[INFO] [stdout] 13 |         impl<'a, Z: Zone + 'a $(, $t: 'static)*> ZoneContext<'a, Z, ($($t,)*)> {
[INFO] [stdout]    |         ---------------------------------------------------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 16 |             pub(crate) fn new(zone: &'a Z) -> Self {
[INFO] [stdout]    |                           ^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 | impl_zone_context!(T0,);
[INFO] [stdout]    | ----------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/zones/context.rs:16:27
[INFO] [stdout]    |
[INFO] [stdout] 13 |         impl<'a, Z: Zone + 'a $(, $t: 'static)*> ZoneContext<'a, Z, ($($t,)*)> {
[INFO] [stdout]    |         ---------------------------------------------------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 16 |             pub(crate) fn new(zone: &'a Z) -> Self {
[INFO] [stdout]    |                           ^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 | impl_zone_context!(T0, T1,);
[INFO] [stdout]    | --------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/zones/context.rs:16:27
[INFO] [stdout]    |
[INFO] [stdout] 13 |         impl<'a, Z: Zone + 'a $(, $t: 'static)*> ZoneContext<'a, Z, ($($t,)*)> {
[INFO] [stdout]    |         ---------------------------------------------------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 16 |             pub(crate) fn new(zone: &'a Z) -> Self {
[INFO] [stdout]    |                           ^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 | impl_zone_context!(T0, T1, T2,);
[INFO] [stdout]    | ------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/zones/context.rs:16:27
[INFO] [stdout]    |
[INFO] [stdout] 13 |         impl<'a, Z: Zone + 'a $(, $t: 'static)*> ZoneContext<'a, Z, ($($t,)*)> {
[INFO] [stdout]    |         ---------------------------------------------------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 16 |             pub(crate) fn new(zone: &'a Z) -> Self {
[INFO] [stdout]    |                           ^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 | impl_zone_context!(T0, T1, T2, T3,);
[INFO] [stdout]    | ----------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.42s
[INFO] running `Command { std: "docker" "inspect" "0f5f242273c96811324f8ec473e44a9fb59095054d7768aa23f164e2459621f8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0f5f242273c96811324f8ec473e44a9fb59095054d7768aa23f164e2459621f8", kill_on_drop: false }`
[INFO] [stdout] 0f5f242273c96811324f8ec473e44a9fb59095054d7768aa23f164e2459621f8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ba154b15c9384828824249c15dabfc894505230cbb45f7af59b363f5f684d3c4
[INFO] running `Command { std: "docker" "start" "-a" "ba154b15c9384828824249c15dabfc894505230cbb45f7af59b363f5f684d3c4", kill_on_drop: false }`
[INFO] [stderr]    Compiling card-game v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `impl_state_filter_inputs`
[INFO] [stdout]  --> src/cards/mod.rs:2:42
[INFO] [stdout]   |
[INFO] [stdout] 2 | use card_game_derive::{StateFilterInput, impl_state_filter_inputs};
[INFO] [stdout]   |                                          ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::validation::StateFilterInput`
[INFO] [stdout]  --> src/cards/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::validation::StateFilterInput;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `identifications::PlayerID`
[INFO] [stdout]  --> src/identifications/card.rs:1:57
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{cards::CardID, create_valid_identification, identifications::PlayerID, zones::Zone};
[INFO] [stdout]   |                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `validation::StateFilter`
[INFO] [stdout]  --> src/identifications/player.rs:5:42
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::{create_valid_identification, validation::StateFilter};
[INFO] [stdout]   |                                          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/zones/context.rs:22:81
[INFO] [stdout]    |
[INFO] [stdout] 22 |             pub fn get_zone_card(&self, card_id: CardID) -> Option<(ValidCardID<(Z::CardFilter $(, $t)*)>, &crate::cards::Card<Z::Ca...
[INFO] [stdout]    |                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 | impl_zone_context!();
[INFO] [stdout]    | -------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/zones/context.rs:27:83
[INFO] [stdout]    |
[INFO] [stdout] 27 |             pub fn get_zone_card_id(&self, card_id: CardID) -> Option<ValidCardID<(Z::CardFilter $(, $t)*)>> {
[INFO] [stdout]    |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 | impl_zone_context!();
[INFO] [stdout]    | -------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/zones/context.rs:32:89
[INFO] [stdout]    |
[INFO] [stdout] 32 |             pub fn get_zone_card_from_index(&self, index: usize) -> Option<(ValidCardID<(Z::CardFilter $(, $t)*)>, &crate::cards::Ca...
[INFO] [stdout]    |                                                                                         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 | impl_zone_context!();
[INFO] [stdout]    | -------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/zones/context.rs:37:91
[INFO] [stdout]    |
[INFO] [stdout] 37 |             pub fn get_zone_card_id_from_index(&self, index: usize) -> Option<ValidCardID<(Z::CardFilter $(, $t)*)>> {
[INFO] [stdout]    |                                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 | impl_zone_context!();
[INFO] [stdout]    | -------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/zones/context.rs:42:77
[INFO] [stdout]    |
[INFO] [stdout] 42 |             pub fn zone_card_ids(&self) -> impl Iterator<Item = ValidCardID<(Z::CardFilter $(, $t)*)>> {
[INFO] [stdout]    |                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 | impl_zone_context!();
[INFO] [stdout]    | -------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ArrayZone`, `CardID`, and `ValidCardID`
[INFO] [stdout]  --> src/zones/slot.rs:2:19
[INFO] [stdout]   |
[INFO] [stdout] 2 |     cards::{Card, CardID},
[INFO] [stdout]   |                   ^^^^^^
[INFO] [stdout] 3 |     zones::{ArrayZone, FiniteZone, InfiniteZone, Zone, ValidCardID},
[INFO] [stdout]   |             ^^^^^^^^^                                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `validation::StateFilter`
[INFO] [stdout]  --> src/zones/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     validation::StateFilter,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/zones/slot.rs:89:22
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub fn transport(mut self) -> Result<(), SlotToSlotTransportError> {
[INFO] [stdout]    |                      ----^^^^
[INFO] [stdout]    |                      |
[INFO] [stdout]    |                      help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/zones/slot.rs:120:22
[INFO] [stdout]     |
[INFO] [stdout] 120 |     pub fn transport(mut self) -> Result<(), SlotToFiniteZoneTransportError> {
[INFO] [stdout]     |                      ----^^^^
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/zones/slot.rs:147:22
[INFO] [stdout]     |
[INFO] [stdout] 147 |     pub fn transport(mut self) -> Result<(), CardNotInSlotError> {
[INFO] [stdout]     |                      ----^^^^
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/zones/mod.rs:137:9
[INFO] [stdout]     |
[INFO] [stdout] 137 |         mut self,
[INFO] [stdout]     |         ----^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/zones/mod.rs:163:9
[INFO] [stdout]     |
[INFO] [stdout] 163 |         mut self,
[INFO] [stdout]     |         ----^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/zones/mod.rs:184:22
[INFO] [stdout]     |
[INFO] [stdout] 184 |     pub fn transport(mut self, zone_card_id: ValidCardID<FromZ::CardFilter>) {
[INFO] [stdout]     |                      ----^^^^
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `clone_id` is never used
[INFO] [stdout]   --> src/cards/mod.rs:43:19
[INFO] [stdout]    |
[INFO] [stdout] 39 | impl CardID {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub(crate) fn clone_id(&self) -> Self {
[INFO] [stdout]    |                   ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/zones/context.rs:16:27
[INFO] [stdout]    |
[INFO] [stdout] 13 |         impl<'a, Z: Zone + 'a $(, $t: 'static)*> ZoneContext<'a, Z, ($($t,)*)> {
[INFO] [stdout]    |         ---------------------------------------------------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 16 |             pub(crate) fn new(zone: &'a Z) -> Self {
[INFO] [stdout]    |                           ^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 | impl_zone_context!();
[INFO] [stdout]    | -------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/zones/context.rs:16:27
[INFO] [stdout]    |
[INFO] [stdout] 13 |         impl<'a, Z: Zone + 'a $(, $t: 'static)*> ZoneContext<'a, Z, ($($t,)*)> {
[INFO] [stdout]    |         ---------------------------------------------------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 16 |             pub(crate) fn new(zone: &'a Z) -> Self {
[INFO] [stdout]    |                           ^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 | impl_zone_context!(T0,);
[INFO] [stdout]    | ----------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/zones/context.rs:16:27
[INFO] [stdout]    |
[INFO] [stdout] 13 |         impl<'a, Z: Zone + 'a $(, $t: 'static)*> ZoneContext<'a, Z, ($($t,)*)> {
[INFO] [stdout]    |         ---------------------------------------------------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 16 |             pub(crate) fn new(zone: &'a Z) -> Self {
[INFO] [stdout]    |                           ^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 | impl_zone_context!(T0, T1,);
[INFO] [stdout]    | --------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/zones/context.rs:16:27
[INFO] [stdout]    |
[INFO] [stdout] 13 |         impl<'a, Z: Zone + 'a $(, $t: 'static)*> ZoneContext<'a, Z, ($($t,)*)> {
[INFO] [stdout]    |         ---------------------------------------------------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 16 |             pub(crate) fn new(zone: &'a Z) -> Self {
[INFO] [stdout]    |                           ^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 | impl_zone_context!(T0, T1, T2,);
[INFO] [stdout]    | ------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/zones/context.rs:16:27
[INFO] [stdout]    |
[INFO] [stdout] 13 |         impl<'a, Z: Zone + 'a $(, $t: 'static)*> ZoneContext<'a, Z, ($($t,)*)> {
[INFO] [stdout]    |         ---------------------------------------------------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 16 |             pub(crate) fn new(zone: &'a Z) -> Self {
[INFO] [stdout]    |                           ^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 | impl_zone_context!(T0, T1, T2, T3,);
[INFO] [stdout]    | ----------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `impl_state_filter_inputs`
[INFO] [stdout]  --> src/cards/mod.rs:2:42
[INFO] [stdout]   |
[INFO] [stdout] 2 | use card_game_derive::{StateFilterInput, impl_state_filter_inputs};
[INFO] [stdout]   |                                          ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::validation::StateFilterInput`
[INFO] [stdout]  --> src/cards/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::validation::StateFilterInput;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `card_game_derive::SuperCommand`
[INFO] [stdout]   --> src/commands/mod.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |     use card_game_derive::SuperCommand;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `identifications::PlayerID`
[INFO] [stdout]  --> src/identifications/card.rs:1:57
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{cards::CardID, create_valid_identification, identifications::PlayerID, zones::Zone};
[INFO] [stdout]   |                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `validation::StateFilter`
[INFO] [stdout]  --> src/identifications/player.rs:5:42
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::{create_valid_identification, validation::StateFilter};
[INFO] [stdout]   |                                          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `validation::StateFilter`
[INFO] [stdout]  --> src/zones/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     validation::StateFilter,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/zones/context.rs:22:81
[INFO] [stdout]    |
[INFO] [stdout] 22 |             pub fn get_zone_card(&self, card_id: CardID) -> Option<(ValidCardID<(Z::CardFilter $(, $t)*)>, &crate::cards::Card<Z::Ca...
[INFO] [stdout]    |                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 | impl_zone_context!();
[INFO] [stdout]    | -------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/zones/context.rs:27:83
[INFO] [stdout]    |
[INFO] [stdout] 27 |             pub fn get_zone_card_id(&self, card_id: CardID) -> Option<ValidCardID<(Z::CardFilter $(, $t)*)>> {
[INFO] [stdout]    |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 | impl_zone_context!();
[INFO] [stdout]    | -------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/zones/context.rs:32:89
[INFO] [stdout]    |
[INFO] [stdout] 32 |             pub fn get_zone_card_from_index(&self, index: usize) -> Option<(ValidCardID<(Z::CardFilter $(, $t)*)>, &crate::cards::Ca...
[INFO] [stdout]    |                                                                                         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 | impl_zone_context!();
[INFO] [stdout]    | -------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/zones/context.rs:37:91
[INFO] [stdout]    |
[INFO] [stdout] 37 |             pub fn get_zone_card_id_from_index(&self, index: usize) -> Option<ValidCardID<(Z::CardFilter $(, $t)*)>> {
[INFO] [stdout]    |                                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 | impl_zone_context!();
[INFO] [stdout]    | -------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/zones/context.rs:42:77
[INFO] [stdout]    |
[INFO] [stdout] 42 |             pub fn zone_card_ids(&self) -> impl Iterator<Item = ValidCardID<(Z::CardFilter $(, $t)*)>> {
[INFO] [stdout]    |                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 | impl_zone_context!();
[INFO] [stdout]    | -------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ArrayZone`, `CardID`, and `ValidCardID`
[INFO] [stdout]  --> src/zones/slot.rs:2:19
[INFO] [stdout]   |
[INFO] [stdout] 2 |     cards::{Card, CardID},
[INFO] [stdout]   |                   ^^^^^^
[INFO] [stdout] 3 |     zones::{ArrayZone, FiniteZone, InfiniteZone, Zone, ValidCardID},
[INFO] [stdout]   |             ^^^^^^^^^                                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/zones/slot.rs:89:22
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub fn transport(mut self) -> Result<(), SlotToSlotTransportError> {
[INFO] [stdout]    |                      ----^^^^
[INFO] [stdout]    |                      |
[INFO] [stdout]    |                      help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/zones/slot.rs:120:22
[INFO] [stdout]     |
[INFO] [stdout] 120 |     pub fn transport(mut self) -> Result<(), SlotToFiniteZoneTransportError> {
[INFO] [stdout]     |                      ----^^^^
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/zones/slot.rs:147:22
[INFO] [stdout]     |
[INFO] [stdout] 147 |     pub fn transport(mut self) -> Result<(), CardNotInSlotError> {
[INFO] [stdout]     |                      ----^^^^
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/zones/mod.rs:137:9
[INFO] [stdout]     |
[INFO] [stdout] 137 |         mut self,
[INFO] [stdout]     |         ----^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/zones/mod.rs:163:9
[INFO] [stdout]     |
[INFO] [stdout] 163 |         mut self,
[INFO] [stdout]     |         ----^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/zones/mod.rs:184:22
[INFO] [stdout]     |
[INFO] [stdout] 184 |     pub fn transport(mut self, zone_card_id: ValidCardID<FromZ::CardFilter>) {
[INFO] [stdout]     |                      ----^^^^
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `clone_id` is never used
[INFO] [stdout]   --> src/cards/mod.rs:43:19
[INFO] [stdout]    |
[INFO] [stdout] 39 | impl CardID {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub(crate) fn clone_id(&self) -> Self {
[INFO] [stdout]    |                   ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/zones/context.rs:16:27
[INFO] [stdout]    |
[INFO] [stdout] 13 |         impl<'a, Z: Zone + 'a $(, $t: 'static)*> ZoneContext<'a, Z, ($($t,)*)> {
[INFO] [stdout]    |         ---------------------------------------------------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 16 |             pub(crate) fn new(zone: &'a Z) -> Self {
[INFO] [stdout]    |                           ^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 | impl_zone_context!();
[INFO] [stdout]    | -------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/zones/context.rs:16:27
[INFO] [stdout]    |
[INFO] [stdout] 13 |         impl<'a, Z: Zone + 'a $(, $t: 'static)*> ZoneContext<'a, Z, ($($t,)*)> {
[INFO] [stdout]    |         ---------------------------------------------------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 16 |             pub(crate) fn new(zone: &'a Z) -> Self {
[INFO] [stdout]    |                           ^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 | impl_zone_context!(T0,);
[INFO] [stdout]    | ----------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/zones/context.rs:16:27
[INFO] [stdout]    |
[INFO] [stdout] 13 |         impl<'a, Z: Zone + 'a $(, $t: 'static)*> ZoneContext<'a, Z, ($($t,)*)> {
[INFO] [stdout]    |         ---------------------------------------------------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 16 |             pub(crate) fn new(zone: &'a Z) -> Self {
[INFO] [stdout]    |                           ^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 | impl_zone_context!(T0, T1,);
[INFO] [stdout]    | --------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/zones/context.rs:16:27
[INFO] [stdout]    |
[INFO] [stdout] 13 |         impl<'a, Z: Zone + 'a $(, $t: 'static)*> ZoneContext<'a, Z, ($($t,)*)> {
[INFO] [stdout]    |         ---------------------------------------------------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 16 |             pub(crate) fn new(zone: &'a Z) -> Self {
[INFO] [stdout]    |                           ^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 | impl_zone_context!(T0, T1, T2,);
[INFO] [stdout]    | ------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/zones/context.rs:16:27
[INFO] [stdout]    |
[INFO] [stdout] 13 |         impl<'a, Z: Zone + 'a $(, $t: 'static)*> ZoneContext<'a, Z, ($($t,)*)> {
[INFO] [stdout]    |         ---------------------------------------------------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 16 |             pub(crate) fn new(zone: &'a Z) -> Self {
[INFO] [stdout]    |                           ^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 | impl_zone_context!(T0, T1, T2, T3,);
[INFO] [stdout]    | ----------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.79s
[INFO] running `Command { std: "docker" "inspect" "ba154b15c9384828824249c15dabfc894505230cbb45f7af59b363f5f684d3c4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ba154b15c9384828824249c15dabfc894505230cbb45f7af59b363f5f684d3c4", kill_on_drop: false }`
[INFO] [stdout] ba154b15c9384828824249c15dabfc894505230cbb45f7af59b363f5f684d3c4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] a7977735107a68ef811094ebb757e950a07edf4da0a7971a3a24c6a1336a799e
[INFO] running `Command { std: "docker" "start" "-a" "a7977735107a68ef811094ebb757e950a07edf4da0a7971a3a24c6a1336a799e", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `impl_state_filter_inputs`
[INFO] [stderr]  --> src/cards/mod.rs:2:42
[INFO] [stderr]   |
[INFO] [stderr] 2 | use card_game_derive::{StateFilterInput, impl_state_filter_inputs};
[INFO] [stderr]   |                                          ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::validation::StateFilterInput`
[INFO] [stderr]  --> src/cards/mod.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use crate::validation::StateFilterInput;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `identifications::PlayerID`
[INFO] [stderr]  --> src/identifications/card.rs:1:57
[INFO] [stderr]   |
[INFO] [stderr] 1 | use crate::{cards::CardID, create_valid_identification, identifications::PlayerID, zones::Zone};
[INFO] [stderr]   |                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `validation::StateFilter`
[INFO] [stderr]  --> src/identifications/player.rs:5:42
[INFO] [stderr]   |
[INFO] [stderr] 5 | use crate::{create_valid_identification, validation::StateFilter};
[INFO] [stderr]   |                                          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> src/zones/context.rs:22:81
[INFO] [stderr]    |
[INFO] [stderr] 22 |             pub fn get_zone_card(&self, card_id: CardID) -> Option<(ValidCardID<(Z::CardFilter $(, $t)*)>, &crate::cards::Card<Z::Ca...
[INFO] [stderr]    |                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 48 | impl_zone_context!();
[INFO] [stderr]    | -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> src/zones/context.rs:27:83
[INFO] [stderr]    |
[INFO] [stderr] 27 |             pub fn get_zone_card_id(&self, card_id: CardID) -> Option<ValidCardID<(Z::CardFilter $(, $t)*)>> {
[INFO] [stderr]    |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 48 | impl_zone_context!();
[INFO] [stderr]    | -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> src/zones/context.rs:32:89
[INFO] [stderr]    |
[INFO] [stderr] 32 |             pub fn get_zone_card_from_index(&self, index: usize) -> Option<(ValidCardID<(Z::CardFilter $(, $t)*)>, &crate::cards::Ca...
[INFO] [stderr]    |                                                                                         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 48 | impl_zone_context!();
[INFO] [stderr]    | -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> src/zones/context.rs:37:91
[INFO] [stderr]    |
[INFO] [stderr] 37 |             pub fn get_zone_card_id_from_index(&self, index: usize) -> Option<ValidCardID<(Z::CardFilter $(, $t)*)>> {
[INFO] [stderr]    |                                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 48 | impl_zone_context!();
[INFO] [stderr]    | -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> src/zones/context.rs:42:77
[INFO] [stderr]    |
[INFO] [stderr] 42 |             pub fn zone_card_ids(&self) -> impl Iterator<Item = ValidCardID<(Z::CardFilter $(, $t)*)>> {
[INFO] [stderr]    |                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 48 | impl_zone_context!();
[INFO] [stderr]    | -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `ArrayZone`, `CardID`, and `ValidCardID`
[INFO] [stderr]  --> src/zones/slot.rs:2:19
[INFO] [stderr]   |
[INFO] [stderr] 2 |     cards::{Card, CardID},
[INFO] [stderr]   |                   ^^^^^^
[INFO] [stderr] 3 |     zones::{ArrayZone, FiniteZone, InfiniteZone, Zone, ValidCardID},
[INFO] [stderr]   |             ^^^^^^^^^                                  ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `validation::StateFilter`
[INFO] [stderr]  --> src/zones/mod.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 |     validation::StateFilter,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/zones/slot.rs:89:22
[INFO] [stderr]    |
[INFO] [stderr] 89 |     pub fn transport(mut self) -> Result<(), SlotToSlotTransportError> {
[INFO] [stderr]    |                      ----^^^^
[INFO] [stderr]    |                      |
[INFO] [stderr]    |                      help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/zones/slot.rs:120:22
[INFO] [stderr]     |
[INFO] [stderr] 120 |     pub fn transport(mut self) -> Result<(), SlotToFiniteZoneTransportError> {
[INFO] [stderr]     |                      ----^^^^
[INFO] [stderr]     |                      |
[INFO] [stderr]     |                      help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/zones/slot.rs:147:22
[INFO] [stderr]     |
[INFO] [stderr] 147 |     pub fn transport(mut self) -> Result<(), CardNotInSlotError> {
[INFO] [stderr]     |                      ----^^^^
[INFO] [stderr]     |                      |
[INFO] [stderr]     |                      help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/zones/mod.rs:137:9
[INFO] [stderr]     |
[INFO] [stderr] 137 |         mut self,
[INFO] [stderr]     |         ----^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/zones/mod.rs:163:9
[INFO] [stderr]     |
[INFO] [stderr] 163 |         mut self,
[INFO] [stderr]     |         ----^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/zones/mod.rs:184:22
[INFO] [stderr]     |
[INFO] [stderr] 184 |     pub fn transport(mut self, zone_card_id: ValidCardID<FromZ::CardFilter>) {
[INFO] [stderr]     |                      ----^^^^
[INFO] [stderr]     |                      |
[INFO] [stderr]     |                      help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: method `clone_id` is never used
[INFO] [stderr]   --> src/cards/mod.rs:43:19
[INFO] [stderr]    |
[INFO] [stderr] 39 | impl CardID {
[INFO] [stderr]    | ----------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 43 |     pub(crate) fn clone_id(&self) -> Self {
[INFO] [stderr]    |                   ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/zones/context.rs:16:27
[INFO] [stderr]    |
[INFO] [stderr] 13 |         impl<'a, Z: Zone + 'a $(, $t: 'static)*> ZoneContext<'a, Z, ($($t,)*)> {
[INFO] [stderr]    |         ---------------------------------------------------------------------- associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 16 |             pub(crate) fn new(zone: &'a Z) -> Self {
[INFO] [stderr]    |                           ^^^
[INFO] [stderr] ...
[INFO] [stderr] 48 | impl_zone_context!();
[INFO] [stderr]    | -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/zones/context.rs:16:27
[INFO] [stderr]    |
[INFO] [stderr] 13 |         impl<'a, Z: Zone + 'a $(, $t: 'static)*> ZoneContext<'a, Z, ($($t,)*)> {
[INFO] [stderr]    |         ---------------------------------------------------------------------- associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 16 |             pub(crate) fn new(zone: &'a Z) -> Self {
[INFO] [stderr]    |                           ^^^
[INFO] [stderr] ...
[INFO] [stderr] 49 | impl_zone_context!(T0,);
[INFO] [stderr]    | ----------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/zones/context.rs:16:27
[INFO] [stderr]    |
[INFO] [stderr] 13 |         impl<'a, Z: Zone + 'a $(, $t: 'static)*> ZoneContext<'a, Z, ($($t,)*)> {
[INFO] [stderr]    |         ---------------------------------------------------------------------- associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 16 |             pub(crate) fn new(zone: &'a Z) -> Self {
[INFO] [stderr]    |                           ^^^
[INFO] [stderr] ...
[INFO] [stderr] 50 | impl_zone_context!(T0, T1,);
[INFO] [stderr]    | --------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/zones/context.rs:16:27
[INFO] [stderr]    |
[INFO] [stderr] 13 |         impl<'a, Z: Zone + 'a $(, $t: 'static)*> ZoneContext<'a, Z, ($($t,)*)> {
[INFO] [stderr]    |         ---------------------------------------------------------------------- associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 16 |             pub(crate) fn new(zone: &'a Z) -> Self {
[INFO] [stderr]    |                           ^^^
[INFO] [stderr] ...
[INFO] [stderr] 51 | impl_zone_context!(T0, T1, T2,);
[INFO] [stderr]    | ------------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/zones/context.rs:16:27
[INFO] [stderr]    |
[INFO] [stderr] 13 |         impl<'a, Z: Zone + 'a $(, $t: 'static)*> ZoneContext<'a, Z, ($($t,)*)> {
[INFO] [stderr]    |         ---------------------------------------------------------------------- associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 16 |             pub(crate) fn new(zone: &'a Z) -> Self {
[INFO] [stderr]    |                           ^^^
[INFO] [stderr] ...
[INFO] [stderr] 52 | impl_zone_context!(T0, T1, T2, T3,);
[INFO] [stderr]    | ----------------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `card_game_derive::SuperCommand`
[INFO] [stderr]   --> src/commands/mod.rs:47:9
[INFO] [stderr]    |
[INFO] [stderr] 47 |     use card_game_derive::SuperCommand;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `card-game` (lib) generated 23 warnings (run `cargo fix --lib -p card-game` to apply 11 suggestions)
[INFO] [stderr] warning: `card-game` (lib test) generated 24 warnings (23 duplicates) (run `cargo fix --lib -p card-game --tests` to apply 1 suggestion)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.06s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/card_game-1f9579d8a2fbcb10)
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test commands::tests::command_history ... ok
[INFO] [stdout] test commands::tests::command_history_incorrect_undo_state - should panic ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests card_game
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> src/zones/context.rs:22:81
[INFO] [stderr]    |
[INFO] [stderr] 22 |             pub fn get_zone_card(&self, card_id: CardID) -> Option<(ValidCardID<(Z::CardFilter $(, $t)*)>, &crate::cards::Card<Z::Ca...
[INFO] [stderr]    |                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 48 | impl_zone_context!();
[INFO] [stderr]    | -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> src/zones/context.rs:27:83
[INFO] [stderr]    |
[INFO] [stderr] 27 |             pub fn get_zone_card_id(&self, card_id: CardID) -> Option<ValidCardID<(Z::CardFilter $(, $t)*)>> {
[INFO] [stderr]    |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 48 | impl_zone_context!();
[INFO] [stderr]    | -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> src/zones/context.rs:32:89
[INFO] [stderr]    |
[INFO] [stderr] 32 |             pub fn get_zone_card_from_index(&self, index: usize) -> Option<(ValidCardID<(Z::CardFilter $(, $t)*)>, &crate::cards::Ca...
[INFO] [stderr]    |                                                                                         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 48 | impl_zone_context!();
[INFO] [stderr]    | -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> src/zones/context.rs:37:91
[INFO] [stderr]    |
[INFO] [stderr] 37 |             pub fn get_zone_card_id_from_index(&self, index: usize) -> Option<ValidCardID<(Z::CardFilter $(, $t)*)>> {
[INFO] [stderr]    |                                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 48 | impl_zone_context!();
[INFO] [stderr]    | -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> src/zones/context.rs:42:77
[INFO] [stderr]    |
[INFO] [stderr] 42 |             pub fn zone_card_ids(&self) -> impl Iterator<Item = ValidCardID<(Z::CardFilter $(, $t)*)>> {
[INFO] [stderr]    |                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 48 | impl_zone_context!();
[INFO] [stderr]    | -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `impl_zone_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: 5 warnings emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test src/lib.rs - (line 101) ... FAILED
[INFO] [stdout] test src/lib.rs - (line 11) ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/lib.rs - (line 101) stdout ----
[INFO] [stdout] error[E0425]: cannot find type `Game` in this scope
[INFO] [stdout]    --> src/lib.rs:104:26
[INFO] [stdout]     |
[INFO] [stdout] 104 | struct MainState { game: Game }
[INFO] [stdout]     |                          ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `MainStep` in this scope
[INFO] [stdout]    --> src/lib.rs:105:17
[INFO] [stdout]     |
[INFO] [stdout] 105 | let main_step = MainStep {
[INFO] [stdout]     |                 ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `CardIn` in this scope
[INFO] [stdout]    --> src/lib.rs:108:35
[INFO] [stdout]     |
[INFO] [stdout] 108 | let validator = Validator::<_, _, CardIn<HandZone>>::try_new(main, (player_id, card_id)).expect("failed validation");
[INFO] [stdout]     |                                   ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `HandZone` in this scope
[INFO] [stdout]    --> src/lib.rs:108:42
[INFO] [stdout]     |
[INFO] [stdout] 108 | let validator = Validator::<_, _, CardIn<HandZone>>::try_new(main, (player_id, card_id)).expect("failed validation");
[INFO] [stdout]     |                                          ^^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: you might be missing a type parameter
[INFO] [stdout]     |
[INFO] [stdout] 102 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_lib_rs_101_0<HandZone>() {
[INFO] [stdout]     |                                                                       ++++++++++
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `player_id` in this scope
[INFO] [stdout]    --> src/lib.rs:108:69
[INFO] [stdout]     |
[INFO] [stdout] 108 | let validator = Validator::<_, _, CardIn<HandZone>>::try_new(main, (player_id, card_id)).expect("failed validation");
[INFO] [stdout]     |                                                                     ^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `card_id` in this scope
[INFO] [stdout]    --> src/lib.rs:108:80
[INFO] [stdout]     |
[INFO] [stdout] 108 | let validator = Validator::<_, _, CardIn<HandZone>>::try_new(main, (player_id, card_id)).expect("failed validation");
[INFO] [stdout]     |                                                                                ^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Game`
[INFO] [stdout]    --> src/lib.rs:106:11
[INFO] [stdout]     |
[INFO] [stdout] 106 |     game: Game::default(),
[INFO] [stdout]     |           ^^^^ use of undeclared type `Game`
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0422, E0425, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0422`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/lib.rs - (line 11) stdout ----
[INFO] [stdout] error[E0046]: not all trait items implemented, missing: `Error`
[INFO] [stdout]   --> src/lib.rs:87:1
[INFO] [stdout]    |
[INFO] [stdout] 87 | impl<State: GetState<Game>> StateFilter<State, (PlayerID, CardID)> for CardIn<HandZone> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing `Error` in implementation
[INFO] [stdout]    |
[INFO] [stdout]    = help: implement the missing item: `type Error = /* Type */;`
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `(PlayerID, CardID): StateFilterInput` is not satisfied
[INFO] [stdout]   --> src/lib.rs:87:29
[INFO] [stdout]    |
[INFO] [stdout] 87 | impl<State: GetState<Game>> StateFilter<State, (PlayerID, CardID)> for CardIn<HandZone> {
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `StateFilterInput` is not implemented for `(PlayerID, CardID)`
[INFO] [stdout]    |
[INFO] [stdout] help: the following other types implement trait `StateFilterInput`
[INFO] [stdout]   --> src/cards/mod.rs:37:10
[INFO] [stdout]    |
[INFO] [stdout] 37 | #[derive(StateFilterInput, Debug, Clone, Copy, PartialEq, Eq, Hash)]
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^ `CardID`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/identifications/player.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | impl StateFilterInput for PlayerID {}
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `PlayerID`
[INFO] [stdout] ...
[INFO] [stdout] 22 | create_valid_identification!(ValidPlayerID, PlayerID);
[INFO] [stdout]    | ----------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/identifications/mod.rs:14:18
[INFO] [stdout]    |
[INFO] [stdout] 14 |         #[derive(card_game::StateFilterInput, Debug)]
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  `ValidCardID<F>`
[INFO] [stdout]    |                  `ValidPlayerID<F>`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/identifications/card.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | create_valid_identification!(ValidCardID, CardID);
[INFO] [stdout]    | ------------------------------------------------- in this macro invocation
[INFO] [stdout] note: required by a bound in `StateFilter`
[INFO] [stdout]   --> src/validation/state_filter.rs:3:37
[INFO] [stdout]    |
[INFO] [stdout]  3 | pub trait StateFilter<State, Input: StateFilterInput>: Sized {
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^ required by this bound in `StateFilter`
[INFO] [stdout]    = note: this error originates in the derive macro `card_game::StateFilterInput` which comes from the expansion of the derive macro `StateFilterInput` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `new` found for struct `PlayerID` in the current scope
[INFO] [stdout]   --> src/lib.rs:31:48
[INFO] [stdout]    |
[INFO] [stdout] 31 |             hand_zone: HandZone::new(PlayerID::new(0)),
[INFO] [stdout]    |                                                ^^^ function or associated item not found in `PlayerID`
[INFO] [stdout]    |
[INFO] [stdout] help: there is a method `ne` with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 31 -             hand_zone: HandZone::new(PlayerID::new(0)),
[INFO] [stdout] 31 +             hand_zone: HandZone::new(PlayerID::ne(0)),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be used on `Option`s, not `Result`s, in a method that returns `Option`
[INFO] [stdout]   --> src/lib.rs:94:87
[INFO] [stdout]    |
[INFO] [stdout] 89 | /     fn filter(
[INFO] [stdout] 90 | |         state: &State,
[INFO] [stdout] 91 | |         (player_id, card_id): (PlayerID, CardID),
[INFO] [stdout] 92 | |     ) -> Option<Self::ValidOutput> {
[INFO] [stdout]    | |__________________________________- this function returns an `Option`
[INFO] [stdout] 93 |           let state = state.state();
[INFO] [stdout] 94 |           let valid_player_id = ValidPlayerID::try_new(&state.player_manager, player_id)?;
[INFO] [stdout]    |                                                                                         ^ use `.ok()?` if you want to discard the `Result<Infallible, PlayerDoesNotExist>` error information
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the `?` operator can only be used on `Option`s, not `Result`s, in a method that returns `Option`
[INFO] [stdout]   --> src/lib.rs:95:76
[INFO] [stdout]    |
[INFO] [stdout] 89 | /     fn filter(
[INFO] [stdout] 90 | |         state: &State,
[INFO] [stdout] 91 | |         (player_id, card_id): (PlayerID, CardID),
[INFO] [stdout] 92 | |     ) -> Option<Self::ValidOutput> {
[INFO] [stdout]    | |__________________________________- this function returns an `Option`
[INFO] [stdout] ...
[INFO] [stdout] 95 |           let valid_card_id = ValidCardID::try_new(card_id, &state.hand_zone)?;
[INFO] [stdout]    |                                                                              ^ use `.ok()?` if you want to discard the `Result<Infallible, CardDoesNotExist>` error information
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 5 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0046, E0277, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0046`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/lib.rs - (line 101)
[INFO] [stdout]     src/lib.rs - (line 11)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 2 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.16s
[INFO] [stdout] 
[INFO] [stdout] all doctests ran in 0.39s; merged doctests compilation took 0.22s
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "a7977735107a68ef811094ebb757e950a07edf4da0a7971a3a24c6a1336a799e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a7977735107a68ef811094ebb757e950a07edf4da0a7971a3a24c6a1336a799e", kill_on_drop: false }`
[INFO] [stdout] a7977735107a68ef811094ebb757e950a07edf4da0a7971a3a24c6a1336a799e
