[INFO] cloning repository https://github.com/IkeYeek/star-realms-game.rs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/IkeYeek/star-realms-game.rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FIkeYeek%2Fstar-realms-game.rs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FIkeYeek%2Fstar-realms-game.rs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 4d042410333c0733d6221b00510ec0bce10e5c2f
[INFO] checking IkeYeek/star-realms-game.rs against try#09335b6f1bff25ec39f47f1533e126fbe1ca5f5d for pr-139493-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FIkeYeek%2Fstar-realms-game.rs" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/IkeYeek/star-realms-game.rs
[INFO] finished tweaking git repo https://github.com/IkeYeek/star-realms-game.rs
[INFO] tweaked toml for git repo https://github.com/IkeYeek/star-realms-game.rs written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/IkeYeek/star-realms-game.rs on toolchain 09335b6f1bff25ec39f47f1533e126fbe1ca5f5d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+09335b6f1bff25ec39f47f1533e126fbe1ca5f5d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/IkeYeek/star-realms-game.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" "+09335b6f1bff25ec39f47f1533e126fbe1ca5f5d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+09335b6f1bff25ec39f47f1533e126fbe1ca5f5d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d1611df2fd901b0d57460a9eea83c406e5c79eba349924cd42253c517ba18dbe
[INFO] running `Command { std: "docker" "start" "-a" "d1611df2fd901b0d57460a9eea83c406e5c79eba349924cd42253c517ba18dbe", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d1611df2fd901b0d57460a9eea83c406e5c79eba349924cd42253c517ba18dbe", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d1611df2fd901b0d57460a9eea83c406e5c79eba349924cd42253c517ba18dbe", kill_on_drop: false }`
[INFO] [stdout] d1611df2fd901b0d57460a9eea83c406e5c79eba349924cd42253c517ba18dbe
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+09335b6f1bff25ec39f47f1533e126fbe1ca5f5d" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d691c0fe638c4f15e623992461abfbb67ebb8532941ff01fd906011e2c4035a5
[INFO] running `Command { std: "docker" "start" "-a" "d691c0fe638c4f15e623992461abfbb67ebb8532941ff01fd906011e2c4035a5", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.87
[INFO] [stderr]    Compiling serde v1.0.210
[INFO] [stderr]    Compiling serde_json v1.0.129
[INFO] [stderr]    Compiling libc v0.2.159
[INFO] [stderr]     Checking futures-channel v0.3.31
[INFO] [stderr]     Checking futures-io v0.3.31
[INFO] [stderr]     Checking percent-encoding v2.3.1
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling toml_edit v0.19.15
[INFO] [stderr]     Checking bytes v1.7.2
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]    Compiling prettyplease v0.2.22
[INFO] [stderr]     Checking tokio v1.40.0
[INFO] [stderr]     Checking hashbrown v0.15.0
[INFO] [stderr]     Checking tracing-core v0.1.32
[INFO] [stderr]     Checking form_urlencoded v1.2.1
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]     Checking http v0.2.12
[INFO] [stderr]    Compiling syn v2.0.79
[INFO] [stderr]     Checking indexmap v2.6.0
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]     Checking getrandom v0.2.15
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking tokio-stream v0.1.16
[INFO] [stderr]    Compiling proc-macro-crate v1.3.1
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.95
[INFO] [stderr]    Compiling serde_derive v1.0.210
[INFO] [stderr]    Compiling thiserror-impl v1.0.64
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling pin-project-internal v1.1.6
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling gloo-worker-macros v0.1.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.27
[INFO] [stderr]    Compiling implicit-clone-derive v0.1.1
[INFO] [stderr]    Compiling yew-macro v0.21.0 (https://github.com/yewstack/yew/#4025fa75)
[INFO] [stderr]     Checking implicit-clone v0.5.0
[INFO] [stderr]     Checking zerocopy v0.7.35
[INFO] [stderr]     Checking tracing v0.1.40
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking pin-project v1.1.6
[INFO] [stderr]     Checking thiserror v1.0.64
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.95
[INFO] [stderr]     Checking ppv-lite86 v0.2.20
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.95
[INFO] [stderr]     Checking wasm-bindgen v0.2.95
[INFO] [stderr]     Checking js-sys v0.3.72
[INFO] [stderr]     Checking console_error_panic_hook v0.1.7
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking pinned v0.1.0
[INFO] [stderr]     Checking prokio v0.1.0
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking web-sys v0.3.72
[INFO] [stderr]     Checking wasm-bindgen-futures v0.4.45
[INFO] [stderr]     Checking serde-wasm-bindgen v0.6.5
[INFO] [stderr]     Checking gloo-timers v0.3.0
[INFO] [stderr]     Checking gloo-utils v0.2.0
[INFO] [stderr]     Checking gloo-events v0.2.0
[INFO] [stderr]     Checking gloo-dialogs v0.2.0
[INFO] [stderr]     Checking gloo-render v0.2.0
[INFO] [stderr]     Checking wasm-logger v0.2.0
[INFO] [stderr]     Checking gloo-worker v0.5.0
[INFO] [stderr]     Checking gloo-storage v0.3.0
[INFO] [stderr]     Checking gloo-net v0.5.0
[INFO] [stderr]     Checking gloo-console v0.3.0
[INFO] [stderr]     Checking gloo-history v0.2.2
[INFO] [stderr]     Checking gloo-file v0.3.0
[INFO] [stderr]     Checking gloo v0.11.0
[INFO] [stderr]     Checking yew v0.21.0 (https://github.com/yewstack/yew/#4025fa75)
[INFO] [stderr]     Checking star_realms v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: struct `CardModalProps` is never constructed
[INFO] [stdout]   --> src/main.rs:71:8
[INFO] [stdout]    |
[INFO] [stdout] 71 | struct CardModalProps {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/abilities.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 56 |     And(Box<ChoicesSources>, Box<ChoicesSources>)
[INFO] [stdout]    |     --- ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ChoicesSources` has derived impls for the traits `Debug` and `Clone`, but these are 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] 56 -     And(Box<ChoicesSources>, Box<ChoicesSources>)
[INFO] [stdout] 56 +     And((), ())
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/abilities.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 65 |     And(Box<AfterCapacity>, Box<AfterCapacity>)
[INFO] [stdout]    |     --- ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AfterCapacity` has derived impls for the traits `Debug` and `Clone`, but these are 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] 65 -     And(Box<AfterCapacity>, Box<AfterCapacity>)
[INFO] [stdout] 65 +     And((), ())
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `name` is never used
[INFO] [stdout]   --> src/abilities.rs:69:8
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub trait AtomicAbilityTrait {
[INFO] [stdout]    |           ------------------ method in this trait
[INFO] [stdout] 69 |     fn name(&self) -> &str;
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/abilities.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 73 |     Default(Box<dyn Fn(&GameState) -> Result<GameState, String>>),
[INFO] [stdout]    |     ------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[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] 73 -     Default(Box<dyn Fn(&GameState) -> Result<GameState, String>>),
[INFO] [stdout] 73 +     Default(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/abilities.rs:74:10
[INFO] [stdout]    |
[INFO] [stdout] 74 |     Card(Box<dyn Fn(&GameState, &Card) -> Result<GameState, String>>),
[INFO] [stdout]    |     ---- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[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] 74 -     Card(Box<dyn Fn(&GameState, &Card) -> Result<GameState, String>>),
[INFO] [stdout] 74 +     Card(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/abilities.rs:75:11
[INFO] [stdout]    |
[INFO] [stdout] 75 |     Cards(Box<dyn Fn(&GameState, &Vec<Card>) -> Result<GameState, String>>),
[INFO] [stdout]    |     ----- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[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] 75 -     Cards(Box<dyn Fn(&GameState, &Vec<Card>) -> Result<GameState, String>>),
[INFO] [stdout] 75 +     Cards(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/abilities.rs:76:28
[INFO] [stdout]    |
[INFO] [stdout] 76 |     CardsFromHandOrDiscard(Box<dyn Fn(&GameState, &Vec<Card>, &Vec<Card>) -> Result<GameState, String>>),
[INFO] [stdout]    |     ---------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[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] 76 -     CardsFromHandOrDiscard(Box<dyn Fn(&GameState, &Vec<Card>, &Vec<Card>) -> Result<GameState, String>>),
[INFO] [stdout] 76 +     CardsFromHandOrDiscard(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `ability`, `choices_sources`, and `after_capacity` are never read
[INFO] [stdout]   --> src/abilities.rs:81:5
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub struct AtomicAbility
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 80 | {
[INFO] [stdout] 81 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 82 |     description: String,
[INFO] [stdout] 83 |     ability: Rc<AtomicAbilityFn>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 84 |     choices_sources: Option<Rc<ChoicesSources>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 85 |     after_capacity: Option<Rc<AfterCapacity>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AtomicAbility` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GameLogic` is never constructed
[INFO] [stdout]  --> src/gamelogic.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | struct GameLogic {}
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `hideModal` should have a snake case name
[INFO] [stdout]    --> src/main.rs:258:9
[INFO] [stdout]     |
[INFO] [stdout] 258 |     let hideModal = Callback::from(|_| {
[INFO] [stdout]     |         ^^^^^^^^^ help: convert the identifier to snake case: `hide_modal`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CardModalProps` is never constructed
[INFO] [stdout]   --> src/main.rs:71:8
[INFO] [stdout]    |
[INFO] [stdout] 71 | struct CardModalProps {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/abilities.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 56 |     And(Box<ChoicesSources>, Box<ChoicesSources>)
[INFO] [stdout]    |     --- ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ChoicesSources` has derived impls for the traits `Debug` and `Clone`, but these are 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] 56 -     And(Box<ChoicesSources>, Box<ChoicesSources>)
[INFO] [stdout] 56 +     And((), ())
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/abilities.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 65 |     And(Box<AfterCapacity>, Box<AfterCapacity>)
[INFO] [stdout]    |     --- ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AfterCapacity` has derived impls for the traits `Debug` and `Clone`, but these are 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] 65 -     And(Box<AfterCapacity>, Box<AfterCapacity>)
[INFO] [stdout] 65 +     And((), ())
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `name` is never used
[INFO] [stdout]   --> src/abilities.rs:69:8
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub trait AtomicAbilityTrait {
[INFO] [stdout]    |           ------------------ method in this trait
[INFO] [stdout] 69 |     fn name(&self) -> &str;
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/abilities.rs:73:13
[INFO] [stdout]    |
[INFO] [stdout] 73 |     Default(Box<dyn Fn(&GameState) -> Result<GameState, String>>),
[INFO] [stdout]    |     ------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[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] 73 -     Default(Box<dyn Fn(&GameState) -> Result<GameState, String>>),
[INFO] [stdout] 73 +     Default(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/abilities.rs:74:10
[INFO] [stdout]    |
[INFO] [stdout] 74 |     Card(Box<dyn Fn(&GameState, &Card) -> Result<GameState, String>>),
[INFO] [stdout]    |     ---- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[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] 74 -     Card(Box<dyn Fn(&GameState, &Card) -> Result<GameState, String>>),
[INFO] [stdout] 74 +     Card(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/abilities.rs:75:11
[INFO] [stdout]    |
[INFO] [stdout] 75 |     Cards(Box<dyn Fn(&GameState, &Vec<Card>) -> Result<GameState, String>>),
[INFO] [stdout]    |     ----- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[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] 75 -     Cards(Box<dyn Fn(&GameState, &Vec<Card>) -> Result<GameState, String>>),
[INFO] [stdout] 75 +     Cards(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/abilities.rs:76:28
[INFO] [stdout]    |
[INFO] [stdout] 76 |     CardsFromHandOrDiscard(Box<dyn Fn(&GameState, &Vec<Card>, &Vec<Card>) -> Result<GameState, String>>),
[INFO] [stdout]    |     ---------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[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] 76 -     CardsFromHandOrDiscard(Box<dyn Fn(&GameState, &Vec<Card>, &Vec<Card>) -> Result<GameState, String>>),
[INFO] [stdout] 76 +     CardsFromHandOrDiscard(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `ability`, `choices_sources`, and `after_capacity` are never read
[INFO] [stdout]   --> src/abilities.rs:81:5
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub struct AtomicAbility
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 80 | {
[INFO] [stdout] 81 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 82 |     description: String,
[INFO] [stdout] 83 |     ability: Rc<AtomicAbilityFn>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 84 |     choices_sources: Option<Rc<ChoicesSources>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 85 |     after_capacity: Option<Rc<AfterCapacity>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AtomicAbility` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GameLogic` is never constructed
[INFO] [stdout]  --> src/gamelogic.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | struct GameLogic {}
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `hideModal` should have a snake case name
[INFO] [stdout]    --> src/main.rs:258:9
[INFO] [stdout]     |
[INFO] [stdout] 258 |     let hideModal = Callback::from(|_| {
[INFO] [stdout]     |         ^^^^^^^^^ help: convert the identifier to snake case: `hide_modal`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 33.93s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: wasm-bindgen v0.2.95
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "d691c0fe638c4f15e623992461abfbb67ebb8532941ff01fd906011e2c4035a5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d691c0fe638c4f15e623992461abfbb67ebb8532941ff01fd906011e2c4035a5", kill_on_drop: false }`
[INFO] [stdout] d691c0fe638c4f15e623992461abfbb67ebb8532941ff01fd906011e2c4035a5
