[INFO] cloning repository https://github.com/tdimino/open-rebellion [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/tdimino/open-rebellion" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftdimino%2Fopen-rebellion", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftdimino%2Fopen-rebellion'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] fc25634be905839dfa6fb477d5fff0faa49d8ae9 [INFO] testing tdimino/open-rebellion against 1.95.0 for beta-1.96-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftdimino%2Fopen-rebellion" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'... [INFO] [stderr] done. [INFO] [stderr] Updating files: 6% (812/12705) Updating files: 7% (890/12705) Updating files: 8% (1017/12705) Updating files: 9% (1144/12705) Updating files: 10% (1271/12705) Updating files: 11% (1398/12705) Updating files: 12% (1525/12705) Updating files: 13% (1652/12705) Updating files: 14% (1779/12705) Updating files: 15% (1906/12705) Updating files: 16% (2033/12705) Updating files: 17% (2160/12705) Updating files: 18% (2287/12705) Updating files: 19% (2414/12705) Updating files: 20% (2541/12705) Updating files: 21% (2669/12705) Updating files: 22% (2796/12705) Updating files: 23% (2923/12705) Updating files: 24% (3050/12705) Updating files: 25% (3177/12705) Updating files: 26% (3304/12705) Updating files: 27% (3431/12705) Updating files: 28% (3558/12705) Updating files: 29% (3685/12705) Updating files: 30% (3812/12705) Updating files: 31% (3939/12705) Updating files: 32% (4066/12705) Updating files: 33% (4193/12705) Updating files: 34% (4320/12705) Updating files: 35% (4447/12705) Updating files: 36% (4574/12705) Updating files: 37% (4701/12705) Updating files: 38% (4828/12705) Updating files: 39% (4955/12705) Updating files: 40% (5082/12705) Updating files: 41% (5210/12705) Updating files: 42% (5337/12705) Updating files: 43% (5464/12705) Updating files: 44% (5591/12705) Updating files: 45% (5718/12705) Updating files: 46% (5845/12705) Updating files: 47% (5972/12705) Updating files: 48% (6099/12705) Updating files: 49% (6226/12705) Updating files: 50% (6353/12705) Updating files: 51% (6480/12705) Updating files: 52% (6607/12705) Updating files: 53% (6734/12705) Updating files: 54% (6861/12705) Updating files: 55% (6988/12705) Updating files: 56% (7115/12705) Updating files: 56% (7209/12705) Updating files: 57% (7242/12705) Updating files: 58% (7369/12705) Updating files: 59% (7496/12705) Updating files: 60% (7623/12705) Updating files: 61% (7751/12705) Updating files: 62% (7878/12705) Updating files: 63% (8005/12705) Updating files: 64% (8132/12705) Updating files: 65% (8259/12705) Updating files: 66% (8386/12705) Updating files: 67% (8513/12705) Updating files: 68% (8640/12705) Updating files: 69% (8767/12705) Updating files: 70% (8894/12705) Updating files: 71% (9021/12705) Updating files: 72% (9148/12705) Updating files: 73% (9275/12705) Updating files: 74% (9402/12705) Updating files: 75% (9529/12705) Updating files: 76% (9656/12705) Updating files: 77% (9783/12705) Updating files: 78% (9910/12705) Updating files: 79% (10037/12705) Updating files: 80% (10164/12705) Updating files: 81% (10292/12705) Updating files: 82% (10419/12705) Updating files: 83% (10546/12705) Updating files: 84% (10673/12705) Updating files: 85% (10800/12705) Updating files: 86% (10927/12705) Updating files: 87% (11054/12705) Updating files: 88% (11181/12705) Updating files: 89% (11308/12705) Updating files: 90% (11435/12705) Updating files: 91% (11562/12705) Updating files: 92% (11689/12705) Updating files: 93% (11816/12705) Updating files: 94% (11943/12705) Updating files: 95% (12070/12705) Updating files: 96% (12197/12705) Updating files: 97% (12324/12705) Updating files: 98% (12451/12705) Updating files: 99% (12578/12705) Updating files: 100% (12705/12705) Updating files: 100% (12705/12705), done. [INFO] started tweaking git repo https://github.com/tdimino/open-rebellion [INFO] finished tweaking git repo https://github.com/tdimino/open-rebellion [INFO] tweaked toml for git repo https://github.com/tdimino/open-rebellion written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/tdimino/open-rebellion on toolchain 1.95.0 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/tdimino/open-rebellion 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" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded webbrowser v0.5.5 [INFO] [stderr] Downloaded pelite-macros v0.1.1 [INFO] [stderr] Downloaded egui-miniquad v0.16.0 [INFO] [stderr] Downloaded egui-macroquad v0.17.3 [INFO] [stderr] Downloaded quad-url v0.1.2 [INFO] [stderr] Downloaded sapp-jsutils v0.1.7 [INFO] [stderr] Downloaded derive_pod v0.1.2 [INFO] [stderr] Downloaded dataview v1.0.2 [INFO] [stderr] Downloaded nucleo-matcher v0.3.1 [INFO] [stderr] Downloaded pelite v0.10.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 4a30f9c5f4900964189ff4db7c439c2de8b38b7c4b60feab4c26823cae2970ca [INFO] running `Command { std: "docker" "start" "-a" "4a30f9c5f4900964189ff4db7c439c2de8b38b7c4b60feab4c26823cae2970ca", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "4a30f9c5f4900964189ff4db7c439c2de8b38b7c4b60feab4c26823cae2970ca", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4a30f9c5f4900964189ff4db7c439c2de8b38b7c4b60feab4c26823cae2970ca", kill_on_drop: false }` [INFO] [stdout] 4a30f9c5f4900964189ff4db7c439c2de8b38b7c4b60feab4c26823cae2970ca [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 946a5e9d07932d143b9b8762870d1d43a27911e289b756cfb46d393aca686069 [INFO] running `Command { std: "docker" "start" "-a" "946a5e9d07932d143b9b8762870d1d43a27911e289b756cfb46d393aca686069", kill_on_drop: false }` [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling zerocopy v0.8.42 [INFO] [stderr] Compiling libc v0.2.183 [INFO] [stderr] Compiling maybe-uninit v2.0.0 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling fdeflate v0.3.7 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling syn v2.0.117 [INFO] [stderr] Compiling quad-alsa-sys v0.3.2 [INFO] [stderr] Compiling owned_ttf_parser v0.25.1 [INFO] [stderr] Compiling ogg v0.7.1 [INFO] [stderr] Compiling slotmap v1.1.1 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling derive_pod v0.1.2 [INFO] [stderr] Compiling miniquad v0.4.8 [INFO] [stderr] Compiling bitflags v2.11.0 [INFO] [stderr] Compiling once_cell v1.21.4 [INFO] [stderr] Compiling dasp_sample v0.11.0 [INFO] [stderr] Compiling dataview v1.0.2 [INFO] [stderr] Compiling ab_glyph v0.2.32 [INFO] [stderr] Compiling clap_builder v4.5.60 [INFO] [stderr] Compiling hound v3.5.1 [INFO] [stderr] Compiling epaint_default_fonts v0.31.1 [INFO] [stderr] Compiling profiling v1.0.17 [INFO] [stderr] Compiling smallvec v0.6.14 [INFO] [stderr] Compiling quad-snd v0.2.8 [INFO] [stderr] Compiling pelite-macros v0.1.1 [INFO] [stderr] Compiling no-std-compat v0.4.1 [INFO] [stderr] Compiling foldhash v0.1.5 [INFO] [stderr] Compiling nohash-hasher v0.2.0 [INFO] [stderr] Compiling png v0.17.16 [INFO] [stderr] Compiling ttf-parser v0.21.1 [INFO] [stderr] Compiling dasp_frame v0.11.0 [INFO] [stderr] Compiling hashbrown v0.15.5 [INFO] [stderr] Compiling webbrowser v0.5.5 [INFO] [stderr] Compiling glam v0.27.0 [INFO] [stderr] Compiling lewton v0.9.4 [INFO] [stderr] Compiling quad-url v0.1.2 [INFO] [stderr] Compiling quad-rand v0.2.3 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling inotify-sys v0.1.5 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling pelite v0.10.0 [INFO] [stderr] Compiling mio v0.8.11 [INFO] [stderr] Compiling inotify v0.9.6 [INFO] [stderr] Compiling filetime v0.2.27 [INFO] [stderr] Compiling pxfm v0.1.28 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling macroquad_macro v0.1.8 [INFO] [stderr] Compiling notify v6.1.1 [INFO] [stderr] Compiling rand_xoshiro v0.6.0 [INFO] [stderr] Compiling png v0.18.1 [INFO] [stderr] Compiling byteorder-lite v0.1.0 [INFO] [stderr] Compiling nucleo-matcher v0.3.1 [INFO] [stderr] Compiling audrey v0.3.0 [INFO] [stderr] Compiling fontdue v0.9.3 [INFO] [stderr] Compiling moxcms v0.8.1 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling bytemuck_derive v1.10.2 [INFO] [stderr] Compiling clap_derive v4.5.55 [INFO] [stderr] Compiling bytemuck v1.25.0 [INFO] [stderr] Compiling emath v0.31.1 [INFO] [stderr] Compiling image v0.24.9 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling clap v4.5.60 [INFO] [stderr] Compiling ecolor v0.31.1 [INFO] [stderr] Compiling epaint v0.31.1 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling macroquad v0.4.14 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling serde_spanned v0.6.9 [INFO] [stderr] Compiling dat-dumper v0.1.0 (/opt/rustwide/workdir/tools/dat-dumper) [INFO] [stderr] Compiling bincode v1.3.3 [INFO] [stderr] Compiling egui v0.31.1 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Compiling rebellion-core v0.1.0 (/opt/rustwide/workdir/crates/rebellion-core) [INFO] [stderr] Compiling image v0.25.10 [INFO] [stderr] Compiling toml v0.8.23 [INFO] [stderr] Compiling egui-miniquad v0.16.0 [INFO] [stderr] Compiling egui-macroquad v0.17.3 [INFO] [stdout] warning: constant `GNPRTB_MAINTENANCE_RATE_NEUTRAL` is never used [INFO] [stdout] --> crates/rebellion-core/src/economy.rs:56:7 [INFO] [stdout] | [INFO] [stdout] 56 | const GNPRTB_MAINTENANCE_RATE_NEUTRAL: u16 = 7696; // =30: ticks between maintenance checks (neutral) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling rebellion-data v0.1.0 (/opt/rustwide/workdir/crates/rebellion-data) [INFO] [stderr] Compiling rebellion-render v0.1.0 (/opt/rustwide/workdir/crates/rebellion-render) [INFO] [stdout] warning: unused import: `ControlKind` [INFO] [stdout] --> crates/rebellion-data/src/save.rs:55:29 [INFO] [stdout] | [INFO] [stdout] 55 | use rebellion_core::world::{ControlKind, GameWorld}; [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: `ControlKind` [INFO] [stdout] --> crates/rebellion-data/src/simulation.rs:30:29 [INFO] [stdout] | [INFO] [stdout] 30 | use rebellion_core::world::{ControlKind, GameWorld, MstbTable}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `state` [INFO] [stdout] --> crates/rebellion-render/src/panels/jedi.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | state: &mut JediPanelState, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_state` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling rebellion-playtest v0.1.0 (/opt/rustwide/workdir/crates/rebellion-playtest) [INFO] [stderr] Compiling rebellion-app v0.1.0 (/opt/rustwide/workdir/crates/rebellion-app) [INFO] [stdout] warning: value assigned to `show_officers` is never read [INFO] [stdout] --> crates/rebellion-app/src/main.rs:673:29 [INFO] [stdout] | [INFO] [stdout] 673 | show_officers = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 687 | toggle_panel!(KeyCode::O, show_officers); [INFO] [stdout] | ---------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] = note: this warning originates in the macro `toggle_panel` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `show_fleets` is never read [INFO] [stdout] --> crates/rebellion-app/src/main.rs:674:29 [INFO] [stdout] | [INFO] [stdout] 674 | show_fleets = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 688 | toggle_panel!(KeyCode::F, show_fleets); [INFO] [stdout] | -------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: this warning originates in the macro `toggle_panel` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `show_manufacturing` is never read [INFO] [stdout] --> crates/rebellion-app/src/main.rs:675:29 [INFO] [stdout] | [INFO] [stdout] 675 | show_manufacturing = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 689 | toggle_panel!(KeyCode::M, show_manufacturing); [INFO] [stdout] | --------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: this warning originates in the macro `toggle_panel` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `show_missions` is never read [INFO] [stdout] --> crates/rebellion-app/src/main.rs:676:29 [INFO] [stdout] | [INFO] [stdout] 676 | show_missions = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 690 | toggle_panel!(KeyCode::N, show_missions); [INFO] [stdout] | ---------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: this warning originates in the macro `toggle_panel` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `show_research` is never read [INFO] [stdout] --> crates/rebellion-app/src/main.rs:677:29 [INFO] [stdout] | [INFO] [stdout] 677 | show_research = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 691 | toggle_panel!(KeyCode::T, show_research); [INFO] [stdout] | ---------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: this warning originates in the macro `toggle_panel` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `show_jedi` is never read [INFO] [stdout] --> crates/rebellion-app/src/main.rs:678:29 [INFO] [stdout] | [INFO] [stdout] 678 | show_jedi = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 692 | toggle_panel!(KeyCode::J, show_jedi); [INFO] [stdout] | ------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: this warning originates in the macro `toggle_panel` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `show_bombardment` is never read [INFO] [stdout] --> crates/rebellion-app/src/main.rs:679:29 [INFO] [stdout] | [INFO] [stdout] 679 | show_bombardment = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 693 | toggle_panel!(KeyCode::B, show_bombardment); [INFO] [stdout] | ------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: this warning originates in the macro `toggle_panel` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `show_death_star` is never read [INFO] [stdout] --> crates/rebellion-app/src/main.rs:680:29 [INFO] [stdout] | [INFO] [stdout] 680 | show_death_star = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 694 | toggle_panel!(KeyCode::D, show_death_star); [INFO] [stdout] | ------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: this warning originates in the macro `toggle_panel` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `show_loyalty` is never read [INFO] [stdout] --> crates/rebellion-app/src/main.rs:681:29 [INFO] [stdout] | [INFO] [stdout] 681 | show_loyalty = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 695 | toggle_panel!(KeyCode::L, show_loyalty); [INFO] [stdout] | --------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: this warning originates in the macro `toggle_panel` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `player_faction` [INFO] [stdout] --> crates/rebellion-app/src/main.rs:2705:5 [INFO] [stdout] | [INFO] [stdout] 2705 | player_faction: &mut MissionFaction, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_player_faction` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `audio_engine` [INFO] [stdout] --> crates/rebellion-app/src/main.rs:2713:41 [INFO] [stdout] | [INFO] [stdout] 2713 | #[cfg(not(target_arch = "wasm32"))] audio_engine: &mut audio::AudioEngine, [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_audio_engine` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `audio_vol` [INFO] [stdout] --> crates/rebellion-app/src/main.rs:2714:41 [INFO] [stdout] | [INFO] [stdout] 2714 | #[cfg(not(target_arch = "wasm32"))] audio_vol: &AudioVolumeState, [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_audio_vol` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sounds_dir` [INFO] [stdout] --> crates/rebellion-app/src/main.rs:2715:41 [INFO] [stdout] | [INFO] [stdout] 2715 | #[cfg(not(target_arch = "wasm32"))] sounds_dir: &Path, [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sounds_dir` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `VictoryModal` is never constructed [INFO] [stdout] --> crates/rebellion-app/src/main.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 59 | enum GameMode { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 73 | VictoryModal { alliance_won: bool }, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GameMode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 58.87s [INFO] running `Command { std: "docker" "inspect" "946a5e9d07932d143b9b8762870d1d43a27911e289b756cfb46d393aca686069", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "946a5e9d07932d143b9b8762870d1d43a27911e289b756cfb46d393aca686069", kill_on_drop: false }` [INFO] [stdout] 946a5e9d07932d143b9b8762870d1d43a27911e289b756cfb46d393aca686069 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 66df3fddbad528380350824c01f3f28dae69eb1f9fe0ba88e3eb083c7d65adbc [INFO] running `Command { std: "docker" "start" "-a" "66df3fddbad528380350824c01f3f28dae69eb1f9fe0ba88e3eb083c7d65adbc", kill_on_drop: false }` [INFO] [stderr] Compiling once_cell v1.21.4 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling bytemuck_derive v1.10.2 [INFO] [stderr] Compiling clap_derive v4.5.55 [INFO] [stderr] Compiling png v0.18.1 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling getrandom v0.4.2 [INFO] [stderr] Compiling strum_macros v0.26.4 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling bytemuck v1.25.0 [INFO] [stderr] Compiling emath v0.31.1 [INFO] [stderr] Compiling image v0.24.9 [INFO] [stderr] Compiling ecolor v0.31.1 [INFO] [stderr] Compiling image v0.25.10 [INFO] [stderr] Compiling clap v4.5.60 [INFO] [stderr] Compiling strum v0.26.3 [INFO] [stderr] Compiling epaint v0.31.1 [INFO] [stderr] Compiling tempfile v3.27.0 [INFO] [stderr] Compiling macroquad v0.4.14 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling egui v0.31.1 [INFO] [stderr] Compiling slotmap v1.1.1 [INFO] [stderr] Compiling dat-dumper v0.1.0 (/opt/rustwide/workdir/tools/dat-dumper) [INFO] [stderr] Compiling serde_spanned v0.6.9 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling bincode v1.3.3 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Compiling rebellion-core v0.1.0 (/opt/rustwide/workdir/crates/rebellion-core) [INFO] [stdout] warning: unused import: `ForceTier` [INFO] [stdout] --> crates/rebellion-core/src/ai.rs:2156:59 [INFO] [stdout] | [INFO] [stdout] 2156 | CapitalShipClass, Character, FighterClass, Fleet, ForceTier, GameWorld, Sector, [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::ids::DatId` [INFO] [stdout] --> crates/rebellion-core/src/betrayal.rs:139:9 [INFO] [stdout] | [INFO] [stdout] 139 | use crate::ids::DatId; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ForceTier` [INFO] [stdout] --> crates/rebellion-core/src/betrayal.rs:141:35 [INFO] [stdout] | [INFO] [stdout] 141 | use crate::world::{Character, ForceTier, GameWorld, MstbEntry, MstbTable, SkillPair}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SkillPair` [INFO] [stdout] --> crates/rebellion-core/src/events.rs:821:46 [INFO] [stdout] | [INFO] [stdout] 821 | use crate::world::{Character, ForceTier, SkillPair}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ExplorationStatus` and `Faction` [INFO] [stdout] --> crates/rebellion-core/src/events.rs:1484:26 [INFO] [stdout] | [INFO] [stdout] 1484 | use crate::dat::{ExplorationStatus, Faction}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Faction` [INFO] [stdout] --> crates/rebellion-core/src/events.rs:1750:45 [INFO] [stdout] | [INFO] [stdout] 1750 | use crate::dat::{ExplorationStatus, Faction}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::ids::DatId` [INFO] [stdout] --> crates/rebellion-core/src/jedi.rs:339:9 [INFO] [stdout] | [INFO] [stdout] 339 | use crate::ids::DatId; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ForceTier` [INFO] [stdout] --> crates/rebellion-core/src/missions.rs:1136:35 [INFO] [stdout] | [INFO] [stdout] 1136 | use crate::world::{Character, ForceTier, GameWorld, SkillPair}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ForceTier` [INFO] [stdout] --> crates/rebellion-core/src/movement.rs:506:45 [INFO] [stdout] | [INFO] [stdout] 506 | CapitalShipClass, Character, Fleet, ForceTier, GameWorld, Sector, ShipInstance, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::ids::*` [INFO] [stdout] --> crates/rebellion-core/src/repair.rs:129:9 [INFO] [stdout] | [INFO] [stdout] 129 | use crate::ids::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::world::ControlKind` [INFO] [stdout] --> crates/rebellion-core/src/research.rs:347:9 [INFO] [stdout] | [INFO] [stdout] 347 | use crate::world::ControlKind; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `DatId` [INFO] [stdout] --> crates/rebellion-core/src/research.rs:348:36 [INFO] [stdout] | [INFO] [stdout] 348 | use crate::ids::{CharacterKey, DatId}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SkillPair` [INFO] [stdout] --> crates/rebellion-core/src/story_events.rs:832:53 [INFO] [stdout] | [INFO] [stdout] 832 | use crate::world::{Character, Fleet, ForceTier, SkillPair}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling toml v0.8.23 [INFO] [stderr] Compiling egui-miniquad v0.16.0 [INFO] [stderr] Compiling egui-macroquad v0.17.3 [INFO] [stdout] warning: unused variable: `interior_sys` [INFO] [stdout] --> crates/rebellion-core/src/ai.rs:2960:13 [INFO] [stdout] | [INFO] [stdout] 2960 | let interior_sys = world.systems.insert(System { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_interior_sys` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sp` [INFO] [stdout] --> crates/rebellion-core/src/combat.rs:2285:13 [INFO] [stdout] | [INFO] [stdout] 2285 | let sp = SkillPair { base: 0, variance: 0 }; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_sp` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `target_class` [INFO] [stdout] --> crates/rebellion-core/src/combat.rs:2362:13 [INFO] [stdout] | [INFO] [stdout] 2362 | let target_class = make_class(&mut world, 200, 1); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_class` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sys_key` [INFO] [stdout] --> crates/rebellion-core/src/economy.rs:1232:13 [INFO] [stdout] | [INFO] [stdout] 1232 | let sys_key = world.systems.insert(crate::world::System { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sys_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `world` [INFO] [stdout] --> crates/rebellion-core/src/research.rs:515:13 [INFO] [stdout] | [INFO] [stdout] 515 | let world = GameWorld::default(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_world` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `zero_skills` is never used [INFO] [stdout] --> crates/rebellion-core/src/ai.rs:2209:8 [INFO] [stdout] | [INFO] [stdout] 2209 | fn zero_skills() -> SkillPair { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `GNPRTB_MAINTENANCE_RATE_NEUTRAL` is never used [INFO] [stdout] --> crates/rebellion-core/src/economy.rs:56:7 [INFO] [stdout] | [INFO] [stdout] 56 | const GNPRTB_MAINTENANCE_RATE_NEUTRAL: u16 = 7696; // =30: ticks between maintenance checks (neutral) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `zero_skill` is never used [INFO] [stdout] --> crates/rebellion-core/src/movement.rs:510:8 [INFO] [stdout] | [INFO] [stdout] 510 | fn zero_skill() -> SkillPair { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `GNPRTB_MAINTENANCE_RATE_NEUTRAL` is never used [INFO] [stdout] --> crates/rebellion-core/src/economy.rs:56:7 [INFO] [stdout] | [INFO] [stdout] 56 | const GNPRTB_MAINTENANCE_RATE_NEUTRAL: u16 = 7696; // =30: ticks between maintenance checks (neutral) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling rebellion-data v0.1.0 (/opt/rustwide/workdir/crates/rebellion-data) [INFO] [stderr] Compiling rebellion-render v0.1.0 (/opt/rustwide/workdir/crates/rebellion-render) [INFO] [stdout] warning: unused import: `ControlKind` [INFO] [stdout] --> crates/rebellion-data/src/save.rs:55:29 [INFO] [stdout] | [INFO] [stdout] 55 | use rebellion_core::world::{ControlKind, GameWorld}; [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: `ControlKind` [INFO] [stdout] --> crates/rebellion-data/src/simulation.rs:30:29 [INFO] [stdout] | [INFO] [stdout] 30 | use rebellion_core::world::{ControlKind, GameWorld, MstbTable}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `state` [INFO] [stdout] --> crates/rebellion-render/src/panels/jedi.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | state: &mut JediPanelState, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_state` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `state` [INFO] [stdout] --> crates/rebellion-render/src/panels/jedi.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | state: &mut JediPanelState, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_state` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling rebellion-app v0.1.0 (/opt/rustwide/workdir/crates/rebellion-app) [INFO] [stderr] Compiling rebellion-playtest v0.1.0 (/opt/rustwide/workdir/crates/rebellion-playtest) [INFO] [stdout] warning: value assigned to `show_officers` is never read [INFO] [stdout] --> crates/rebellion-app/src/main.rs:673:29 [INFO] [stdout] | [INFO] [stdout] 673 | show_officers = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 687 | toggle_panel!(KeyCode::O, show_officers); [INFO] [stdout] | ---------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] = note: this warning originates in the macro `toggle_panel` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `show_fleets` is never read [INFO] [stdout] --> crates/rebellion-app/src/main.rs:674:29 [INFO] [stdout] | [INFO] [stdout] 674 | show_fleets = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 688 | toggle_panel!(KeyCode::F, show_fleets); [INFO] [stdout] | -------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: this warning originates in the macro `toggle_panel` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `show_manufacturing` is never read [INFO] [stdout] --> crates/rebellion-app/src/main.rs:675:29 [INFO] [stdout] | [INFO] [stdout] 675 | show_manufacturing = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 689 | toggle_panel!(KeyCode::M, show_manufacturing); [INFO] [stdout] | --------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: this warning originates in the macro `toggle_panel` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `show_missions` is never read [INFO] [stdout] --> crates/rebellion-app/src/main.rs:676:29 [INFO] [stdout] | [INFO] [stdout] 676 | show_missions = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 690 | toggle_panel!(KeyCode::N, show_missions); [INFO] [stdout] | ---------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: this warning originates in the macro `toggle_panel` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `show_research` is never read [INFO] [stdout] --> crates/rebellion-app/src/main.rs:677:29 [INFO] [stdout] | [INFO] [stdout] 677 | show_research = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 691 | toggle_panel!(KeyCode::T, show_research); [INFO] [stdout] | ---------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: this warning originates in the macro `toggle_panel` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `show_jedi` is never read [INFO] [stdout] --> crates/rebellion-app/src/main.rs:678:29 [INFO] [stdout] | [INFO] [stdout] 678 | show_jedi = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 692 | toggle_panel!(KeyCode::J, show_jedi); [INFO] [stdout] | ------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: this warning originates in the macro `toggle_panel` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `show_bombardment` is never read [INFO] [stdout] --> crates/rebellion-app/src/main.rs:679:29 [INFO] [stdout] | [INFO] [stdout] 679 | show_bombardment = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 693 | toggle_panel!(KeyCode::B, show_bombardment); [INFO] [stdout] | ------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: this warning originates in the macro `toggle_panel` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `show_death_star` is never read [INFO] [stdout] --> crates/rebellion-app/src/main.rs:680:29 [INFO] [stdout] | [INFO] [stdout] 680 | show_death_star = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 694 | toggle_panel!(KeyCode::D, show_death_star); [INFO] [stdout] | ------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: this warning originates in the macro `toggle_panel` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `show_loyalty` is never read [INFO] [stdout] --> crates/rebellion-app/src/main.rs:681:29 [INFO] [stdout] | [INFO] [stdout] 681 | show_loyalty = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 695 | toggle_panel!(KeyCode::L, show_loyalty); [INFO] [stdout] | --------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: this warning originates in the macro `toggle_panel` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `player_faction` [INFO] [stdout] --> crates/rebellion-app/src/main.rs:2705:5 [INFO] [stdout] | [INFO] [stdout] 2705 | player_faction: &mut MissionFaction, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_player_faction` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `audio_engine` [INFO] [stdout] --> crates/rebellion-app/src/main.rs:2713:41 [INFO] [stdout] | [INFO] [stdout] 2713 | #[cfg(not(target_arch = "wasm32"))] audio_engine: &mut audio::AudioEngine, [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_audio_engine` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `audio_vol` [INFO] [stdout] --> crates/rebellion-app/src/main.rs:2714:41 [INFO] [stdout] | [INFO] [stdout] 2714 | #[cfg(not(target_arch = "wasm32"))] audio_vol: &AudioVolumeState, [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_audio_vol` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sounds_dir` [INFO] [stdout] --> crates/rebellion-app/src/main.rs:2715:41 [INFO] [stdout] | [INFO] [stdout] 2715 | #[cfg(not(target_arch = "wasm32"))] sounds_dir: &Path, [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sounds_dir` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `VictoryModal` is never constructed [INFO] [stdout] --> crates/rebellion-app/src/main.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 59 | enum GameMode { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 73 | VictoryModal { alliance_won: bool }, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GameMode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 51.96s [INFO] running `Command { std: "docker" "inspect" "66df3fddbad528380350824c01f3f28dae69eb1f9fe0ba88e3eb083c7d65adbc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "66df3fddbad528380350824c01f3f28dae69eb1f9fe0ba88e3eb083c7d65adbc", kill_on_drop: false }` [INFO] [stdout] 66df3fddbad528380350824c01f3f28dae69eb1f9fe0ba88e3eb083c7d65adbc [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 30fa19da1c66b727efd62457627f8f9c90fc257cac3bf86f304ef702d22fc454 [INFO] running `Command { std: "docker" "start" "-a" "30fa19da1c66b727efd62457627f8f9c90fc257cac3bf86f304ef702d22fc454", kill_on_drop: false }` [INFO] [stderr] warning: constant `GNPRTB_MAINTENANCE_RATE_NEUTRAL` is never used [INFO] [stderr] --> crates/rebellion-core/src/economy.rs:56:7 [INFO] [stderr] | [INFO] [stderr] 56 | const GNPRTB_MAINTENANCE_RATE_NEUTRAL: u16 = 7696; // =30: ticks between maintenance checks (neutral) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: `rebellion-core` (lib) generated 1 warning [INFO] [stderr] warning: unused import: `ControlKind` [INFO] [stderr] --> crates/rebellion-data/src/save.rs:55:29 [INFO] [stderr] | [INFO] [stderr] 55 | use rebellion_core::world::{ControlKind, GameWorld}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `ControlKind` [INFO] [stderr] --> crates/rebellion-data/src/simulation.rs:30:29 [INFO] [stderr] | [INFO] [stderr] 30 | use rebellion_core::world::{ControlKind, GameWorld, MstbTable}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `rebellion-data` (lib) generated 2 warnings (run `cargo fix --lib -p rebellion-data` to apply 2 suggestions) [INFO] [stderr] warning: unused variable: `state` [INFO] [stderr] --> crates/rebellion-render/src/panels/jedi.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | state: &mut JediPanelState, [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_state` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: `rebellion-render` (lib) generated 1 warning (run `cargo fix --lib -p rebellion-render` to apply 1 suggestion) [INFO] [stderr] warning: `rebellion-render` (lib test) generated 1 warning (1 duplicate) [INFO] [stderr] warning: unused import: `ForceTier` [INFO] [stderr] --> crates/rebellion-core/src/ai.rs:2156:59 [INFO] [stderr] | [INFO] [stderr] 2156 | CapitalShipClass, Character, FighterClass, Fleet, ForceTier, GameWorld, Sector, [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::ids::DatId` [INFO] [stderr] --> crates/rebellion-core/src/betrayal.rs:139:9 [INFO] [stderr] | [INFO] [stderr] 139 | use crate::ids::DatId; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ForceTier` [INFO] [stderr] --> crates/rebellion-core/src/betrayal.rs:141:35 [INFO] [stderr] | [INFO] [stderr] 141 | use crate::world::{Character, ForceTier, GameWorld, MstbEntry, MstbTable, SkillPair}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `SkillPair` [INFO] [stderr] --> crates/rebellion-core/src/events.rs:821:46 [INFO] [stderr] | [INFO] [stderr] 821 | use crate::world::{Character, ForceTier, SkillPair}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `ExplorationStatus` and `Faction` [INFO] [stderr] --> crates/rebellion-core/src/events.rs:1484:26 [INFO] [stderr] | [INFO] [stderr] 1484 | use crate::dat::{ExplorationStatus, Faction}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Faction` [INFO] [stderr] --> crates/rebellion-core/src/events.rs:1750:45 [INFO] [stderr] | [INFO] [stderr] 1750 | use crate::dat::{ExplorationStatus, Faction}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::ids::DatId` [INFO] [stderr] --> crates/rebellion-core/src/jedi.rs:339:9 [INFO] [stderr] | [INFO] [stderr] 339 | use crate::ids::DatId; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ForceTier` [INFO] [stderr] --> crates/rebellion-core/src/missions.rs:1136:35 [INFO] [stderr] | [INFO] [stderr] 1136 | use crate::world::{Character, ForceTier, GameWorld, SkillPair}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ForceTier` [INFO] [stderr] --> crates/rebellion-core/src/movement.rs:506:45 [INFO] [stderr] | [INFO] [stderr] 506 | CapitalShipClass, Character, Fleet, ForceTier, GameWorld, Sector, ShipInstance, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::ids::*` [INFO] [stderr] --> crates/rebellion-core/src/repair.rs:129:9 [INFO] [stderr] | [INFO] [stderr] 129 | use crate::ids::*; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::world::ControlKind` [INFO] [stderr] --> crates/rebellion-core/src/research.rs:347:9 [INFO] [stderr] | [INFO] [stderr] 347 | use crate::world::ControlKind; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `DatId` [INFO] [stderr] --> crates/rebellion-core/src/research.rs:348:36 [INFO] [stderr] | [INFO] [stderr] 348 | use crate::ids::{CharacterKey, DatId}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `SkillPair` [INFO] [stderr] --> crates/rebellion-core/src/story_events.rs:832:53 [INFO] [stderr] | [INFO] [stderr] 832 | use crate::world::{Character, Fleet, ForceTier, SkillPair}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `interior_sys` [INFO] [stderr] --> crates/rebellion-core/src/ai.rs:2960:13 [INFO] [stderr] | [INFO] [stderr] 2960 | let interior_sys = world.systems.insert(System { [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_interior_sys` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sp` [INFO] [stderr] --> crates/rebellion-core/src/combat.rs:2285:13 [INFO] [stderr] | [INFO] [stderr] 2285 | let sp = SkillPair { base: 0, variance: 0 }; [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_sp` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `target_class` [INFO] [stderr] --> crates/rebellion-core/src/combat.rs:2362:13 [INFO] [stderr] | [INFO] [stderr] 2362 | let target_class = make_class(&mut world, 200, 1); [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_class` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sys_key` [INFO] [stderr] --> crates/rebellion-core/src/economy.rs:1232:13 [INFO] [stderr] | [INFO] [stderr] 1232 | let sys_key = world.systems.insert(crate::world::System { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sys_key` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `world` [INFO] [stderr] --> crates/rebellion-core/src/research.rs:515:13 [INFO] [stderr] | [INFO] [stderr] 515 | let world = GameWorld::default(); [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_world` [INFO] [stderr] [INFO] [stderr] warning: function `zero_skills` is never used [INFO] [stderr] --> crates/rebellion-core/src/ai.rs:2209:8 [INFO] [stderr] | [INFO] [stderr] 2209 | fn zero_skills() -> SkillPair { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: constant `GNPRTB_MAINTENANCE_RATE_NEUTRAL` is never used [INFO] [stderr] --> crates/rebellion-core/src/economy.rs:56:7 [INFO] [stderr] | [INFO] [stderr] 56 | const GNPRTB_MAINTENANCE_RATE_NEUTRAL: u16 = 7696; // =30: ticks between maintenance checks (neutral) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `zero_skill` is never used [INFO] [stderr] --> crates/rebellion-core/src/movement.rs:510:8 [INFO] [stderr] | [INFO] [stderr] 510 | fn zero_skill() -> SkillPair { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: value assigned to `show_officers` is never read [INFO] [stderr] --> crates/rebellion-app/src/main.rs:673:29 [INFO] [stderr] | [INFO] [stderr] 673 | show_officers = false; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 687 | toggle_panel!(KeyCode::O, show_officers); [INFO] [stderr] | ---------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] = note: this warning originates in the macro `toggle_panel` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: value assigned to `show_fleets` is never read [INFO] [stderr] --> crates/rebellion-app/src/main.rs:674:29 [INFO] [stderr] | [INFO] [stderr] 674 | show_fleets = false; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 688 | toggle_panel!(KeyCode::F, show_fleets); [INFO] [stderr] | -------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] = note: this warning originates in the macro `toggle_panel` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: value assigned to `show_manufacturing` is never read [INFO] [stderr] --> crates/rebellion-app/src/main.rs:675:29 [INFO] [stderr] | [INFO] [stderr] 675 | show_manufacturing = false; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 689 | toggle_panel!(KeyCode::M, show_manufacturing); [INFO] [stderr] | --------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] = note: this warning originates in the macro `toggle_panel` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: value assigned to `show_missions` is never read [INFO] [stderr] --> crates/rebellion-app/src/main.rs:676:29 [INFO] [stderr] | [INFO] [stderr] 676 | show_missions = false; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 690 | toggle_panel!(KeyCode::N, show_missions); [INFO] [stderr] | ---------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] = note: this warning originates in the macro `toggle_panel` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: value assigned to `show_research` is never read [INFO] [stderr] --> crates/rebellion-app/src/main.rs:677:29 [INFO] [stderr] | [INFO] [stderr] 677 | show_research = false; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 691 | toggle_panel!(KeyCode::T, show_research); [INFO] [stderr] | ---------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] = note: this warning originates in the macro `toggle_panel` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: value assigned to `show_jedi` is never read [INFO] [stderr] --> crates/rebellion-app/src/main.rs:678:29 [INFO] [stderr] | [INFO] [stderr] 678 | show_jedi = false; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 692 | toggle_panel!(KeyCode::J, show_jedi); [INFO] [stderr] | ------------------------------------ in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] = note: this warning originates in the macro `toggle_panel` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: value assigned to `show_bombardment` is never read [INFO] [stderr] --> crates/rebellion-app/src/main.rs:679:29 [INFO] [stderr] | [INFO] [stderr] 679 | show_bombardment = false; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 693 | toggle_panel!(KeyCode::B, show_bombardment); [INFO] [stderr] | ------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] = note: this warning originates in the macro `toggle_panel` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: value assigned to `show_death_star` is never read [INFO] [stderr] --> crates/rebellion-app/src/main.rs:680:29 [INFO] [stderr] | [INFO] [stderr] 680 | show_death_star = false; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 694 | toggle_panel!(KeyCode::D, show_death_star); [INFO] [stderr] | ------------------------------------------ in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] = note: this warning originates in the macro `toggle_panel` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: value assigned to `show_loyalty` is never read [INFO] [stderr] --> crates/rebellion-app/src/main.rs:681:29 [INFO] [stderr] | [INFO] [stderr] 681 | show_loyalty = false; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 695 | toggle_panel!(KeyCode::L, show_loyalty); [INFO] [stderr] | --------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] = note: this warning originates in the macro `toggle_panel` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unused variable: `player_faction` [INFO] [stderr] --> crates/rebellion-app/src/main.rs:2705:5 [INFO] [stderr] | [INFO] [stderr] 2705 | player_faction: &mut MissionFaction, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_player_faction` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `audio_engine` [INFO] [stderr] --> crates/rebellion-app/src/main.rs:2713:41 [INFO] [stderr] | [INFO] [stderr] 2713 | #[cfg(not(target_arch = "wasm32"))] audio_engine: &mut audio::AudioEngine, [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_audio_engine` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `audio_vol` [INFO] [stderr] --> crates/rebellion-app/src/main.rs:2714:41 [INFO] [stderr] | [INFO] [stderr] 2714 | #[cfg(not(target_arch = "wasm32"))] audio_vol: &AudioVolumeState, [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_audio_vol` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sounds_dir` [INFO] [stderr] --> crates/rebellion-app/src/main.rs:2715:41 [INFO] [stderr] | [INFO] [stderr] 2715 | #[cfg(not(target_arch = "wasm32"))] sounds_dir: &Path, [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sounds_dir` [INFO] [stderr] [INFO] [stderr] warning: variant `VictoryModal` is never constructed [INFO] [stderr] --> crates/rebellion-app/src/main.rs:73:5 [INFO] [stderr] | [INFO] [stderr] 59 | enum GameMode { [INFO] [stderr] | -------- variant in this enum [INFO] [stderr] ... [INFO] [stderr] 73 | VictoryModal { alliance_won: bool }, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `GameMode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: `rebellion-core` (lib test) generated 21 warnings (run `cargo fix --lib -p rebellion-core --tests` to apply 18 suggestions) [INFO] [stderr] warning: `rebellion-app` (bin "open-rebellion" test) generated 14 warnings (run `cargo fix --bin "open-rebellion" -p rebellion-app --tests` to apply 4 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.36s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/dat_dumper-afc70aaa7ffa26a2) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/dat_dumper-0e44c104848e972c) [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/open_rebellion-6903944056d20ed6) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rebellion_core-4ef05804290b8bc8) [INFO] [stdout] [INFO] [stdout] running 355 tests [INFO] [stdout] test ai::tests::ai_dispatches_espionage_on_unexplored_system ... ok [INFO] [stdout] test ai::tests::busy_character_not_redispatched ... ok [INFO] [stdout] test ai::tests::can_dispatch_fleet_rejects_no_alive_ships ... ok [INFO] [stdout] test ai::tests::busy_character_tracking ... ok [INFO] [stdout] test ai::tests::can_dispatch_rejects_killed_character ... ok [INFO] [stdout] test ai::tests::can_dispatch_to_system_rejects_destroyed_system ... ok [INFO] [stdout] test ai::tests::can_dispatch_to_system_uses_hull_strength ... ok [INFO] [stdout] test ai::tests::covert_ops_capped_at_max_per_eval ... ok [INFO] [stdout] test ai::tests::fleet_directed_to_attack_weak_enemy_system ... ok [INFO] [stdout] test ai::tests::high_diplomacy_minor_dispatched_on_diplomacy ... ok [INFO] [stdout] test ai::tests::interval_gates_repeated_evaluation ... ok [INFO] [stdout] test ai::tests::death_star_retreats_when_outgunned ... ok [INFO] [stdout] test ai::tests::idle_system_with_mfg_gets_fighter_production ... ok [INFO] [stdout] test ai::tests::low_diplomacy_minor_not_dispatched ... ok [INFO] [stdout] test ai::tests::no_ticks_returns_empty ... ok [INFO] [stdout] test ai::tests::low_espionage_character_not_dispatched_on_covert_ops ... ok [INFO] [stdout] test ai::tests::reconnaissance_targets_explored_enemy_systems ... ok [INFO] [stdout] test ai::tests::major_character_dispatched_on_recruitment_when_unrecruited_exist ... ok [INFO] [stdout] test ai::tests::should_evaluate_after_interval ... ok [INFO] [stdout] test betrayal::tests::is_unable_to_betray_blocks_betrayal ... ok [INFO] [stdout] test ai::tests::should_evaluate_at_tick_zero ... ok [INFO] [stdout] test ai::tests::troop_deployment_prioritizes_frontline_systems ... ok [INFO] [stdout] test betrayal::tests::no_events_without_ticks ... ok [INFO] [stdout] test betrayal::tests::killed_character_does_not_betray ... ok [INFO] [stdout] test ai::tests::should_not_evaluate_before_interval ... ok [INFO] [stdout] test blockade::tests::blockade_ends_when_defender_arrives ... ok [INFO] [stdout] test blockade::tests::blockade_starts_when_hostile_fleet_uncontested ... ok [INFO] [stdout] test blockade::tests::enemy_troop_not_destroyed_by_own_blockade ... ok [INFO] [stdout] test betrayal::tests::cooldown_prevents_recheck ... ok [INFO] [stdout] test betrayal::tests::high_loyalty_no_betrayal ... ok [INFO] [stdout] test blockade::tests::no_blockade_when_contested ... ok [INFO] [stdout] test blockade::tests::no_blockade_without_hostile_fleet ... ok [INFO] [stdout] test blockade::tests::no_events_without_ticks ... ok [INFO] [stdout] test blockade::tests::troop_destroyed_on_blockade_start ... ok [INFO] [stdout] test bombardment::tests::test_bombardment_euclidean_formula_exact ... ok [INFO] [stdout] test bombardment::tests::test_bombardment_formula_minimum_one_damage ... ok [INFO] [stdout] test bombardment::tests::test_bombardment_no_self_damage ... ok [INFO] [stdout] test bombardment::tests::test_bombardment_scales_with_fleet_strength ... ok [INFO] [stdout] test ai::tests::before_interval_returns_empty ... ok [INFO] [stdout] test ai::tests::high_espionage_character_dispatched_on_sabotage ... ok [INFO] [stdout] test betrayal::tests::low_loyalty_low_roll_triggers_betrayal ... ok [INFO] [stdout] test blockade::tests::is_blockaded_reflects_current_state ... ok [INFO] [stdout] test combat::tests::no_officer_gives_1x_multiplier ... ok [INFO] [stdout] test combat::tests::ds_shield_blocks_hull_damage ... ok [INFO] [stdout] test combat::tests::officer_combat_bonus_increases_ground_damage ... ok [INFO] [stdout] test combat::tests::per_weapon_type_attack_strength_amplifies_damage ... ok [INFO] [stdout] test combat::tests::test_entity_kind_classification ... ok [INFO] [stdout] test combat::tests::test_fighter_dogfight_maneuverability_advantage ... ok [INFO] [stdout] test combat::tests::test_asymmetric_fighter_engagement ... ok [INFO] [stdout] test combat::tests::test_ground_combat_attacker_wins ... ok [INFO] [stdout] test combat::tests::test_fighter_recall_after_carrier_destruction ... ok [INFO] [stdout] test combat::tests::test_ground_combat_defense_facility_helps_defender ... ok [INFO] [stdout] test combat::tests::test_extract_difficulty ... ok [INFO] [stdout] test combat::tests::test_carrier_capacity_limits_fighter_launch ... ok [INFO] [stdout] test combat::tests::test_ground_combat_difficulty_scales_damage ... ok [INFO] [stdout] test combat::tests::test_ground_combat_no_troops_is_draw ... ok [INFO] [stdout] test combat::tests::test_fighter_vs_capital_uses_attack_strength ... ok [INFO] [stdout] test combat::tests::test_ion_cannon_2x_shield_damage ... ok [INFO] [stdout] test combat::tests::test_ground_combat_uses_class_attack_defense_stats ... ok [INFO] [stdout] test combat::tests::test_ion_cannon_integration ... ok [INFO] [stdout] test combat::tests::test_ground_combat_zero_strength_troops_skip ... ok [INFO] [stdout] test combat::tests::ds_shield_destroyed_allows_hull_damage ... ok [INFO] [stdout] test combat::tests::ds_shield_blocks_vs_unshielded_comparison ... ok [INFO] [stdout] test combat::tests::mixed_weapon_types_use_respective_strengths ... ok [INFO] [stdout] test combat::tests::ds_normal_ships_unaffected_by_shield ... ok [INFO] [stdout] test combat::tests::test_no_fighters_skips_fighter_phase ... ok [INFO] [stdout] test combat::tests::test_shield_absorbs_damage_before_hull ... ok [INFO] [stdout] test combat::tests::test_shield_integration_full_combat ... ok [INFO] [stdout] test combat::tests::test_shield_overflow_damages_hull ... ok [INFO] [stdout] test combat::tests::test_shield_prevents_death ... ok [INFO] [stdout] test combat::tests::test_shield_recharge_per_tick ... ok [INFO] [stdout] test combat::tests::test_space_combat_attacker_wins_overwhelming_force ... ok [INFO] [stdout] test combat::tests::test_ground_combat_large_asymmetric_battle ... ok [INFO] [stdout] test combat::tests::test_space_combat_difficulty_scales_hull_damage ... ok [INFO] [stdout] test combat::tests::test_space_combat_draw_equal_forces ... ok [INFO] [stdout] test combat::tests::zero_attack_strength_uses_raw_weapon_count ... ok [INFO] [stdout] test commands::tests::all_categories_known ... ok [INFO] [stdout] test death_star::tests::test_clear_construction ... ok [INFO] [stdout] test commands::tests::all_command_ids_unique ... ok [INFO] [stdout] test death_star::tests::test_fire_after_shield_destroyed ... ok [INFO] [stdout] test death_star::tests::test_fire_blocked_already_destroyed ... ok [INFO] [stdout] test death_star::tests::test_construction_no_double_start ... ok [INFO] [stdout] test death_star::tests::test_fire_blocked_by_shield ... ok [INFO] [stdout] test death_star::tests::test_fire_blocked_empire_controlled ... ok [INFO] [stdout] test combat::tests::test_zero_shield_passes_all_damage_to_hull ... ok [INFO] [stdout] test death_star::tests::test_construction_countdown_completes ... ok [INFO] [stdout] test combat::tests::test_space_combat_returns_damage_events ... ok [INFO] [stdout] test death_star::tests::test_fire_blocked_no_death_star_fleet ... ok [INFO] [stdout] test death_star::tests::test_fire_succeeds_on_valid_target ... ok [INFO] [stdout] test death_star::tests::test_nearby_warning_emitted_for_close_system ... ok [INFO] [stdout] test death_star::tests::test_no_events_without_ticks ... ok [INFO] [stdout] test death_star::tests::test_no_nearby_warning_for_distant_system ... ok [INFO] [stdout] test economy::tests::collection_rate_at_zero_support ... ok [INFO] [stdout] test economy::tests::collection_rate_high_support ... ok [INFO] [stdout] test economy::tests::collection_rate_low_support ... ok [INFO] [stdout] test economy::tests::economy_advance_no_ticks_no_events ... ok [INFO] [stdout] test economy::tests::economy_advance_produces_telemetry ... ok [INFO] [stdout] test economy::tests::economy_advance_skips_destroyed_systems ... ok [INFO] [stdout] test economy::tests::energy_overcap_emits_event ... ok [INFO] [stdout] test economy::tests::fleet_posture_contested_requires_two_per_side ... ok [INFO] [stdout] test economy::tests::garrison_requirement_above_threshold_is_zero ... ok [INFO] [stdout] test economy::tests::garrison_requirement_below_threshold ... ok [INFO] [stdout] test economy::tests::garrison_requirement_empire_halved ... ok [INFO] [stdout] test economy::tests::garrison_uprising_doubling ... ok [INFO] [stdout] test economy::tests::incident_fires_on_state_transition ... ok [INFO] [stdout] test economy::tests::informant_incident_on_garrison_shortfall ... ok [INFO] [stdout] test economy::tests::k1_support_change_fires_only_on_tier_transition ... ok [INFO] [stdout] test economy::tests::k2_natural_disaster_fires_only_on_flag_transition ... ok [INFO] [stdout] test economy::tests::k3_resource_discovery_fires_on_positive_delta_not_on_seed ... ok [INFO] [stdout] test economy::tests::k4_maintenance_shortfall_fires_on_30_tick_cooldown ... ok [INFO] [stdout] test economy::tests::kdy_production_modifier_floors_at_zero ... ok [INFO] [stdout] test economy::tests::kdy_production_modifier_reduces_with_ships ... ok [INFO] [stdout] test economy::tests::no_overcap_when_within_limits ... ok [INFO] [stdout] test economy::tests::raw_material_overcap_emits_event ... ok [INFO] [stdout] test economy::tests::side_resolution_alliance_troops_only ... ok [INFO] [stdout] test economy::tests::side_resolution_both_troops_contested ... ok [INFO] [stdout] test economy::tests::side_resolution_no_troops_energy_above_threshold_preserves ... ok [INFO] [stdout] test ai::tests::death_star_targets_highest_value_when_no_hq ... ok [INFO] [stdout] test economy::tests::side_resolution_no_troops_low_energy_becomes_uncontrolled ... ok [INFO] [stdout] test economy::tests::support_drift_no_garrison_low_support ... ok [INFO] [stdout] test economy::tests::support_drift_at_exact_threshold ... ok [INFO] [stdout] test economy::tests::support_drift_with_fleet_suppresses ... ok [INFO] [stdout] test economy::tests::support_drift_with_troops_reduces ... ok [INFO] [stdout] test economy::tests::support_drift_empire_troop_doubling ... ok [INFO] [stdout] test economy::tests::system_summary_fleet_posture ... ok [INFO] [stdout] test economy::tests::system_summary_troop_surplus ... ok [INFO] [stdout] test effects::tests::combine_effects_preserves_phase_order ... ok [INFO] [stdout] test economy::tests::unpopulated_system_skipped_in_advance ... ok [INFO] [stdout] test effects::tests::filter_effects_by_phase ... ok [INFO] [stdout] test effects::tests::invert_popularity_shift ... ok [INFO] [stdout] test effects::tests::irreversible_effects_return_none ... ok [INFO] [stdout] test effects::tests::phase_ordering_is_correct ... ok [INFO] [stdout] test effects::tests::effects_are_serializable ... ok [INFO] [stdout] test effects::tests::story_message_and_special_force_are_command_phase ... ok [INFO] [stdout] test events::tests::character_has_force_level_true_when_tier_matches ... ok [INFO] [stdout] test events::tests::character_is_force_user_true_for_aware_tier ... ok [INFO] [stdout] test events::tests::characters_co_located_across_different_fleets_at_same_system ... ok [INFO] [stdout] test events::tests::characters_co_located_empty_or_single_is_vacuously_true ... ok [INFO] [stdout] test events::tests::characters_co_located_rejects_killed_character ... ok [INFO] [stdout] test events::tests::characters_co_located_true_when_at_same_system ... ok [INFO] [stdout] test events::tests::characters_co_located_false_when_at_different_systems ... ok [INFO] [stdout] test events::tests::characters_co_located_via_current_system ... ok [INFO] [stdout] test effects::tests::system_name_matches_phase ... ok [INFO] [stdout] test events::tests::disabled_event_never_fires ... ok [INFO] [stdout] test events::tests::character_has_force_level_false_when_tier_too_low ... ok [INFO] [stdout] test events::tests::and_logic_requires_all_conditions ... ok [INFO] [stdout] test events::tests::character_assigned_to_fleet_false_when_killed ... ok [INFO] [stdout] test events::tests::character_assigned_to_fleet_true_when_on_any_fleet ... ok [INFO] [stdout] test events::tests::empty_conditions_always_fires ... ok [INFO] [stdout] test events::tests::event_fired_condition_chains_events ... ok [INFO] [stdout] test events::tests::fired_event_carries_actions ... ok [INFO] [stdout] test events::tests::faction_controls_n_systems_counts_correctly ... ok [INFO] [stdout] test events::tests::fired_event_carries_correct_tick ... ok [INFO] [stdout] test events::tests::faction_controls_system_evaluates_correctly ... ok [INFO] [stdout] test events::tests::no_ticks_no_fires ... ok [INFO] [stdout] test events::tests::character_exists_false_for_removed_character ... ok [INFO] [stdout] test events::tests::one_shot_fires_only_once ... ok [INFO] [stdout] test events::tests::random_fires_when_roll_below_probability ... ok [INFO] [stdout] test events::tests::characters_co_located_false_for_nonexistent_character ... ok [INFO] [stdout] test events::tests::tick_at_least_fires_at_and_after_threshold ... ok [INFO] [stdout] test events::tests::tick_reached_does_not_fire_after_target ... ok [INFO] [stdout] test events::tests::tick_reached_fires_exactly_on_target ... ok [INFO] [stdout] test fog::tests::reveal_is_idempotent ... ok [INFO] [stdout] test fog::tests::advance_ignores_enemy_transit_orders ... ok [INFO] [stdout] test fog::tests::advance_in_transit_reveals_destination_at_half_progress ... ok [INFO] [stdout] test fog::tests::advance_no_new_systems_no_events ... ok [INFO] [stdout] test fog::tests::advance_reveals_new_fleet_location ... ok [INFO] [stdout] test fog::tests::empire_fog_tracks_empire_fleets ... ok [INFO] [stdout] test fog::tests::new_fog_is_empty ... ok [INFO] [stdout] test jedi::tests::detection_does_not_trigger_on_high_roll ... ok [INFO] [stdout] test fog::tests::reveal_makes_system_visible ... ok [INFO] [stdout] test jedi::tests::detection_triggers_on_low_roll ... ok [INFO] [stdout] test fog::tests::sensor_detection_zero_reveals_only_own_system ... ok [INFO] [stdout] test fog::tests::sensor_radius_reveals_nearby_systems ... ok [INFO] [stdout] test game_events::tests::record_deserializes_from_json ... ok [INFO] [stdout] test jedi::tests::no_ticks_returns_empty ... ok [INFO] [stdout] test fog::tests::seed_ignores_enemy_fleets ... ok [INFO] [stdout] test fog::tests::seed_reveals_faction_fleet_locations ... ok [INFO] [stdout] test jedi::tests::no_trainees_returns_empty ... ok [INFO] [stdout] test jedi::tests::training_completes_at_experienced ... ok [INFO] [stdout] test game_events::tests::all_event_type_constants_are_unique ... ok [INFO] [stdout] test game_events::tests::record_serializes_to_json ... ok [INFO] [stdout] test jedi::tests::already_discovered_jedi_not_re_detected ... ok [INFO] [stdout] test jedi::tests::experience_accumulates_and_tier_advances ... ok [INFO] [stdout] test jedi::tests::initial_awakening_respects_probability ... ok [INFO] [stdout] test jedi::tests::tier_for_xp_boundaries ... ok [INFO] [stdout] test jedi::tests::killed_trainee_completes_training_record ... ok [INFO] [stdout] test jedi::tests::stop_training_removes_record ... ok [INFO] [stdout] test manufacturing::tests::advance_overflow_completes_and_starts_next ... ok [INFO] [stdout] test manufacturing::tests::advance_partial_progress ... ok [INFO] [stdout] test manufacturing::tests::cancel_active_item ... ok [INFO] [stdout] test manufacturing::tests::enqueue_and_active ... ok [INFO] [stdout] test manufacturing::tests::k6_manufacturing_idle_skips_blockaded_systems ... ok [INFO] [stdout] test manufacturing::tests::integration_clock_drives_manufacturing ... ok [INFO] [stdout] test manufacturing::tests::prioritize_moves_item_forward ... ok [INFO] [stdout] test manufacturing::tests::k6_manufacturing_idle_fires_on_empty_transition_only ... ok [INFO] [stdout] test jedi::tests::start_training_is_idempotent ... ok [INFO] [stdout] test missions::tests::all_new_kinds_have_tick_ranges_in_bounds ... ok [INFO] [stdout] test manufacturing::tests::multiple_systems_advance_independently ... ok [INFO] [stdout] test manufacturing::tests::progress_fraction ... ok [INFO] [stdout] test manufacturing::tests::system_advance_with_tick_events ... ok [INFO] [stdout] test manufacturing::tests::prioritize_noop_on_front ... ok [INFO] [stdout] test manufacturing::tests::system_advance_no_ticks_no_completions ... ok [INFO] [stdout] test missions::tests::abduction_subtracts_target_defense ... ok [INFO] [stdout] test manufacturing::tests::advance_completes_multiple_items ... ok [INFO] [stdout] test manufacturing::tests::advance_exact_completes_item ... ok [INFO] [stdout] test missions::tests::cancel_removes_mission ... ok [INFO] [stdout] test missions::tests::character_available_emitted_on_mission_completion ... ok [INFO] [stdout] test missions::tests::check_escapes_returns_escaped_when_roll_below_prob ... ok [INFO] [stdout] test missions::tests::decoy_mission_produces_no_effects ... ok [INFO] [stdout] test missions::tests::decoy_mission_can_be_foiled ... ok [INFO] [stdout] test missions::tests::check_escapes_returns_empty_without_escapetb ... ok [INFO] [stdout] test combat::tests::test_ground_combat_no_class_data_uses_fallback ... ok [INFO] [stdout] test missions::tests::covert_missions_classified_correctly ... ok [INFO] [stdout] test missions::tests::check_escapes_skips_non_captive ... ok [INFO] [stdout] test missions::tests::decoy_success_at_low_roll ... ok [INFO] [stdout] test missions::tests::defense_score_zero_with_no_enemies ... ok [INFO] [stdout] test missions::tests::dispatch_creates_mission_with_valid_duration ... ok [INFO] [stdout] test missions::tests::dispatch_guarded_blocks_mandatory_mission ... ok [INFO] [stdout] test missions::tests::guaranteed_success_with_roll_zero ... ok [INFO] [stdout] test missions::tests::espionage_success_emits_intelligence_gathered ... ok [INFO] [stdout] test missions::tests::foil_prob_enemy_system_increases_with_defense ... ok [INFO] [stdout] test missions::tests::foil_prob_own_system_is_zero ... ok [INFO] [stdout] test missions::tests::diplomacy_success_emits_popularity_effect ... ok [INFO] [stdout] test missions::tests::assassination_subtracts_target_defense ... ok [INFO] [stdout] test events::tests::repeatable_fires_every_tick ... ok [INFO] [stdout] test missions::tests::guaranteed_failure_with_roll_one ... ok [INFO] [stdout] test missions::tests::autoscrap_always_succeeds ... ok [INFO] [stdout] test events::tests::character_is_killed_panics_on_missing_character_in_debug - should panic ... ok [INFO] [stdout] test events::tests::random_no_roll_available_panics - should panic ... ok [INFO] [stdout] test missions::tests::incite_uprising_reduced_by_espionage_rating ... ok [INFO] [stdout] test missions::tests::incite_uprising_success_emits_uprising_started ... ok [INFO] [stdout] test missions::tests::incite_uprising_equals_diplomacy_with_zero_espionage ... ok [INFO] [stdout] test missions::tests::mission_resolves_at_zero_ticks ... ok [INFO] [stdout] test missions::tests::no_tick_events_no_results ... ok [INFO] [stdout] test missions::tests::own_system_returns_false_for_missing_system ... ok [INFO] [stdout] test missions::tests::quadratic_prob_at_zero_score_equals_constant ... ok [INFO] [stdout] test missions::tests::quadratic_prob_diplomacy_at_max_skill ... ok [INFO] [stdout] test missions::tests::quadratic_prob_recruitment_at_zero_skill ... ok [INFO] [stdout] test missions::tests::multiple_missions_resolve_independently ... ok [INFO] [stdout] test missions::tests::recruitment_uses_target_character_loyalty ... ok [INFO] [stdout] test missions::tests::sabotage_success_emits_facility_sabotaged ... ok [INFO] [stdout] test missions::tests::sabotage_uses_composite_espionage_and_combat ... ok [INFO] [stdout] test missions::tests::mission_decrements_each_tick ... ok [INFO] [stdout] test missions::tests::mstb_key_matches_expected_dat_stems ... ok [INFO] [stdout] test movement::tests::cancel_removes_order ... ok [INFO] [stdout] test movement::tests::han_solo_bonus_reduces_ticks ... ok [INFO] [stdout] test missions::tests::sample_duration_stays_in_range ... ok [INFO] [stdout] test missions::tests::total_success_prob_full_foil ... ok [INFO] [stdout] test movement::tests::fighter_only_fleet_uses_default_hyperdrive ... ok [INFO] [stdout] test missions::tests::total_success_prob_no_foil ... ok [INFO] [stdout] test movement::tests::multiple_fleets_advance_independently ... ok [INFO] [stdout] test movement::tests::no_ticks_no_arrivals ... ok [INFO] [stdout] test movement::tests::medium_distance_proportional ... ok [INFO] [stdout] test movement::tests::order_and_get ... ok [INFO] [stdout] test movement::tests::progress_starts_at_zero ... ok [INFO] [stdout] test movement::tests::han_bonus_clamped_to_min_ticks ... ok [INFO] [stdout] test movement::tests::new_order_replaces_existing ... ok [INFO] [stdout] test movement::tests::partial_advance_does_not_arrive ... ok [INFO] [stdout] test movement::tests::overshoot_still_arrives_exactly_once ... ok [INFO] [stdout] test net_protocol::tests::all_categories_non_empty ... ok [INFO] [stdout] test movement::tests::short_distance_clamps_to_min ... ok [INFO] [stdout] test movement::tests::cross_galaxy_takes_many_ticks ... ok [INFO] [stdout] test movement::tests::progress_clamps_at_one ... ok [INFO] [stdout] test movement::tests::slow_ship_limits_fleet ... ok [INFO] [stdout] test movement::tests::zero_hyperdrive_modifier_no_change ... ok [INFO] [stdout] test net_protocol::tests::event_ids_are_unique ... ok [INFO] [stdout] test movement::tests::progress_at_halfway ... ok [INFO] [stdout] test net_protocol::tests::known_event_ids ... ok [INFO] [stdout] test net_protocol::tests::serialization_round_trip ... ok [INFO] [stdout] test net_protocol::tests::variant_count_is_183 ... ok [INFO] [stdout] test repair::tests::damaged_ship_emits_ship_repaired ... ok [INFO] [stdout] test repair::tests::full_hull_ship_no_repair_event ... ok [INFO] [stdout] test repair::tests::no_repair_at_destroyed_system ... ok [INFO] [stdout] test repair::tests::no_repair_without_shipyard ... ok [INFO] [stdout] test repair::tests::no_repair_without_ticks ... ok [INFO] [stdout] test repair::tests::repair_at_shipyard_emits_check_performed ... ok [INFO] [stdout] test research::tests::advance_does_not_mutate_ship_level ... ok [INFO] [stdout] test research::tests::advance_returns_correct_new_level ... ok [INFO] [stdout] test research::tests::cancel_removes_project ... ok [INFO] [stdout] test research::tests::dispatch_replaces_existing_project ... ok [INFO] [stdout] test research::tests::is_unlocked_respects_current_level ... ok [INFO] [stdout] test research::tests::no_ticks_returns_empty ... ok [INFO] [stdout] test research::tests::research_level_capped_at_max ... ok [INFO] [stdout] test research::tests::project_completes_after_ticks ... ok [INFO] [stdout] test research::tests::ticks_for_next_level_fallback_when_no_classes ... ok [INFO] [stdout] test research::tests::ticks_for_next_level_uses_max_difficulty ... ok [INFO] [stdout] test research::tests::ship_class_availability_respects_research_order ... ok [INFO] [stdout] test research::tests::two_factions_advance_independently ... ok [INFO] [stdout] test story_events::tests::character_is_captive_evaluates_correctly ... ok [INFO] [stdout] test story_events::tests::character_force_experience_evaluates_at_threshold ... ok [INFO] [stdout] test story_events::tests::define_story_events_empty_world_does_not_panic ... ok [INFO] [stdout] test story_events::tests::event_not_fired_returns_true_when_unfired ... ok [INFO] [stdout] test story_events::tests::bounty_hunters_require_active_gate ... ok [INFO] [stdout] test story_events::tests::evt_jabba_prisoners_fires_on_leia_capture_only ... ok [INFO] [stdout] test story_events::tests::emperor_arrival_fires_with_empire_dominance ... ok [INFO] [stdout] test story_events::tests::evt_permanent_freeze_blocked_by_self_escape ... ok [INFO] [stdout] test story_events::tests::evt_permanent_freeze_blocked_by_rescue ... ok [INFO] [stdout] test story_events::tests::evt_jabba_prisoners_two_captures_same_tick_one_consolidator ... ok [INFO] [stdout] test story_events::tests::evt_permanent_freeze_fires_after_countdown ... ok [INFO] [stdout] test story_events::tests::define_story_events_registers_events_with_characters ... ok [INFO] [stdout] test story_events::tests::evt_permanent_freeze_does_not_refire ... ok [INFO] [stdout] test story_events::tests::final_battle_chain_requires_dagobah_completion ... ok [INFO] [stdout] test story_events::tests::emperor_palpatine_adds_emperor_specific_events ... ok [INFO] [stdout] test story_events::tests::evt_jabba_prisoners_fires_on_luke_capture ... ok [INFO] [stdout] test story_events::tests::force_milestone_events_fire_at_correct_tiers ... ok [INFO] [stdout] test story_events::tests::evt_jabba_prisoners_self_guard_prevents_refire ... ok [INFO] [stdout] test story_events::tests::leia_force_discovery_fires_after_dagobah ... ok [INFO] [stdout] test story_events::tests::leia_force_does_not_fire_before_dagobah ... ok [INFO] [stdout] test story_events::tests::han_self_escape_fires_with_random_roll ... ok [INFO] [stdout] test story_events::tests::luke_dagobah_chain_fires_in_sequence ... ok [INFO] [stdout] test story_events::tests::notification_events_never_use_random ... ok [INFO] [stdout] test story_events::tests::one_shot_story_events_do_not_refire ... ok [INFO] [stdout] test tick::tests::accumulator_carries_remainder ... ok [INFO] [stdout] test tick::tests::determinism_same_sequence_same_result ... ok [INFO] [stdout] test tick::tests::fast_speed_doubles_tick_rate ... ok [INFO] [stdout] test story_events::tests::palace_events_chain_correctly ... ok [INFO] [stdout] test tick::tests::faster_speed_quadruples_tick_rate ... ok [INFO] [stdout] test tick::tests::normal_speed_one_tick_per_duration ... ok [INFO] [stdout] test movement::tests::advance_to_completion_emits_arrival ... ok [INFO] [stdout] test tick::tests::paused_emits_no_ticks ... ok [INFO] [stdout] test tick::tests::speed_change_takes_effect_next_advance ... ok [INFO] [stdout] test tick::tests::tick_events_carry_correct_numbers ... ok [INFO] [stdout] test tick::tests::zero_or_negative_dt_is_noop ... ok [INFO] [stdout] test uprising::tests::high_loyalty_no_uprising ... ok [INFO] [stdout] test uprising::tests::no_events_without_ticks ... ok [INFO] [stdout] test uprising::tests::subdue_failure ... ok [INFO] [stdout] test uprising::tests::subdue_noop_if_no_uprising ... ok [INFO] [stdout] test uprising::tests::subdue_success ... ok [INFO] [stdout] test uprising::tests::system_in_active_uprising_skipped_for_new_uprising ... ok [INFO] [stdout] test uprising::tests::unpopulated_system_skipped ... ok [INFO] [stdout] test uprising::tests::very_low_loyalty_fires_incident_and_uprising_on_low_roll ... ok [INFO] [stdout] test uprising::tests::very_low_loyalty_fires_incident_but_not_uprising_on_high_roll ... ok [INFO] [stdout] test victory::tests::death_star_inactive_no_check ... ok [INFO] [stdout] test victory::tests::no_outcome_no_fleets ... ok [INFO] [stdout] test victory::tests::empire_captures_alliance_hq ... ok [INFO] [stdout] test victory::tests::no_outcome_when_resolved ... ok [INFO] [stdout] test victory::tests::no_outcome_without_ticks ... ok [INFO] [stdout] test victory::tests::alliance_captures_empire_hq ... ok [INFO] [stdout] test world::tests::character_is_unable_to_betray_serde_roundtrip ... ok [INFO] [stdout] test world::tests::current_system_and_fleet_default_to_none ... ok [INFO] [stdout] test world::tests::captive_character_serde_roundtrip ... ok [INFO] [stdout] test world::tests::hyperdrive_modifier_defaults_to_zero ... ok [INFO] [stdout] test world::tests::default_character_new_fields_are_zero_false_none ... ok [INFO] [stdout] test world::tests::is_known_jedi_implies_aware_tier_convention ... ok [INFO] [stdout] test world::tests::mark_killed_is_idempotent ... ok [INFO] [stdout] test world::tests::mark_killed_sets_is_killed_and_clears_alive_state ... ok [INFO] [stdout] test world::tests::mark_killed_preserves_name_and_dat_id ... ok [INFO] [stdout] test world::tests::serde_backward_compat_missing_new_fields ... ok [INFO] [stdout] test missions::tests::non_covert_missions_classified_correctly ... ok [INFO] [stdout] test missions::tests::mstb_table_lookup_used_when_populated ... ok [INFO] [stdout] test missions::tests::recruitment_success_emits_recruit_effect ... ok [INFO] [stdout] test victory::tests::contested_hq_no_capture ... ok [INFO] [stdout] test victory::tests::death_star_destroyed_alliance_wins ... ok [INFO] [stdout] test victory::tests::death_star_destroys_alliance_hq ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 355 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.34s [INFO] [stdout] [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rebellion_data-a5a7c5aa3e3b76d9) [INFO] [stdout] [INFO] [stdout] running 50 tests [INFO] [stdout] test mods::tests::apply_skips_unknown_arena ... ok [INFO] [stdout] test mods::tests::apply_patches_matching_entity ... ok [INFO] [stdout] test mods::tests::discover_empty_dir ... ok [INFO] [stdout] test mods::tests::enabled_mod_list_sorted ... ok [INFO] [stdout] test mods::tests::load_order_missing_dep_errors ... ok [INFO] [stdout] test mods::tests::load_order_no_deps ... ok [INFO] [stdout] test mods::tests::load_order_simple_chain ... ok [INFO] [stdout] test mods::tests::load_order_cycle_errors ... ok [INFO] [stdout] test mods::tests::apply_only_enabled ... ok [INFO] [stdout] test mods::tests::config_toggle_persistence ... ok [INFO] [stdout] test mods::tests::load_order_version_mismatch_errors ... ok [INFO] [stdout] test mods::tests::merge_patch_adds_new_field ... ok [INFO] [stdout] test mods::tests::manifest_parses_minimal_toml ... ok [INFO] [stdout] test mods::tests::manifest_parses_basic_toml ... ok [INFO] [stdout] test mods::tests::merge_patch_nested_object ... ok [INFO] [stdout] test mods::tests::merge_patch_non_object_replaces ... ok [INFO] [stdout] test mods::tests::merge_patch_null_deletes_field ... ok [INFO] [stdout] test mods::tests::merge_patch_overwrites_field ... ok [INFO] [stdout] test seeds::tests::character_stats_are_rolled_not_raw ... ok [INFO] [stdout] test seeds::tests::core_bucket_counts_follow_sdprtb_percentages ... ok [INFO] [stdout] test save::tests::empty_mod_list_round_trip ... ok [INFO] [stdout] test mods::tests::structured_error_on_missing_dep ... ok [INFO] [stdout] test save::tests::mod_hash_round_trip ... ok [INFO] [stdout] test seeds::tests::deterministic_rebel_hq_with_same_seed ... ok [INFO] [stdout] test save::tests::future_version_rejected ... ok [INFO] [stdout] test save::tests::list_saves_empty_dir ... ok [INFO] [stdout] test seeds::tests::budget_differs_by_galaxy_size ... ok [INFO] [stdout] test save::tests::delete_slot_removes_file ... ok [INFO] [stdout] test seeds::tests::energy_and_raw_materials_respect_param_ranges ... ok [INFO] [stdout] test seeds::tests::fixed_fleet_tables_only_target_special_systems ... ok [INFO] [stdout] test save::tests::mod_hash_mismatch_still_loads ... ok [INFO] [stdout] test save::tests::v3_save_rejected_with_clear_message ... ok [INFO] [stdout] test save::tests::round_trip_save_load ... ok [INFO] [stdout] test seeds::tests::fixed_named_characters_spawn_at_expected_systems ... ok [INFO] [stdout] test seeds::tests::low_support_systems_get_garrison_troops ... ok [INFO] [stdout] test seeds::tests::maintenance_budget_seeding_spends_without_overshoot ... ok [INFO] [stdout] test save::tests::deterministic_hash_order_independent ... ok [INFO] [stdout] test seeds::tests::deterministic_stat_rolls_with_same_seed ... ok [INFO] [stdout] test seeds::tests::populated_systems_follow_gnprtb_rules ... ok [INFO] [stdout] test seeds::tests::roll_skill_pair_unit ... ok [INFO] [stdout] test seeds::tests::procedural_facilities_placed_at_populated_systems ... ok [INFO] [stdout] test seeds::tests::roll_skill_pair_zero_variance ... ok [INFO] [stdout] test save::tests::v4_or_v5_compatibility_path ... ok [INFO] [stdout] test simulation::tests::empty_tick_events_returns_empty ... ok [INFO] [stdout] test seeds::tests::seeds_load_and_populate_world ... ok [INFO] [stdout] test seeds::tests::special_systems_match_original_roles ... ok [INFO] [stdout] test seeds::tests::support_ranges_match_original_rules ... ok [INFO] [stdout] test simulation::tests::simulation_states_can_be_constructed ... ok [INFO] [stdout] test save::tests::list_saves_after_write ... ok [INFO] [stdout] test mods::tests::apply_null_field_removes_it ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 50 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s [INFO] [stdout] [INFO] [stderr] Running tests/telemetry_coverage.rs (/opt/rustwide/target/debug/deps/telemetry_coverage-8d47a3feb07ddca9) [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test telemetry_coverage_all_sys_constants_emit ... ignored [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/rebellion_playtest-ed7271bb7752a608) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rebellion_render-2786b60b3362e19e) [INFO] [stdout] [INFO] [stdout] running 57 tests [INFO] [stdout] test advisor::tests::advisor_greet_alliance ... ok [INFO] [stdout] test advisor::tests::advisor_message_queue_fifo ... ok [INFO] [stdout] test advisor::tests::bin_state_advances_and_wraps_for_normal_priority ... ok [INFO] [stdout] test advisor::tests::bmp_mapped_falls_back_to_modulo_on_missing_id ... ok [INFO] [stdout] test advisor::tests::bmp_mapped_sequence_uses_direct_lookup ... ok [INFO] [stdout] test advisor::tests::cascade_rejects_2_byte_stubs ... ok [INFO] [stdout] test advisor::tests::cascade_v1_explicit_frame_list ... ok [INFO] [stdout] test advisor::tests::cascade_v2_with_large_count ... ok [INFO] [stdout] test advisor::tests::cascade_rejects_4_byte_zero_prefix_stubs ... ok [INFO] [stdout] test advisor::tests::cascade_v3_bmp_range ... ok [INFO] [stdout] test advisor::tests::high_priority_preempts ... ok [INFO] [stdout] test advisor::tests::idle_sequence_loops_in_place ... ok [INFO] [stdout] test advisor::tests::legacy_frame_cycling_fallback_without_bins ... ok [INFO] [stdout] test advisor::tests::parse_advisor_bin_happy_path ... ok [INFO] [stdout] test advisor::tests::parse_advisor_bin_rejects_length_mismatch ... ok [INFO] [stdout] test combat_view::tests::format_losses_singular_and_plural ... ok [INFO] [stdout] test combat_view::tests::combat_summary_state_multiple_results ... ok [INFO] [stdout] test advisor::tests::cascade_v1_single_frame ... ok [INFO] [stdout] test advisor::tests::cascade_v2_distinguishes_from_v1_with_trailing_zeros ... ok [INFO] [stdout] test advisor::tests::cascade_v4_bmp_single ... ok [INFO] [stdout] test advisor::tests::faction_from_cockpit ... ok [INFO] [stdout] test combat_view::tests::to_messages_includes_bombardment_note ... ok [INFO] [stdout] test event_screen::tests::final_battle_heritage_unknown_returns_vader_vs_student ... ok [INFO] [stdout] test event_screen::tests::non_final_battle_ignores_heritage ... ok [INFO] [stdout] test event_screen::tests::unknown_event_returns_none ... ok [INFO] [stdout] test ground_combat::tests::ground_combat_resolves ... ok [INFO] [stdout] test ground_combat::tests::ground_combat_stronger_wins ... ok [INFO] [stdout] test panels::command_palette::tests::all_commands_have_unique_labels ... ok [INFO] [stdout] test message_log::tests::export_jsonl_round_trip ... ok [INFO] [stdout] test advisor::tests::cascade_v2_sequential_range ... ok [INFO] [stdout] test panels::mod_manager::tests::mod_info_display ... ok [INFO] [stdout] test panels::mod_manager::tests::mod_manager_state_default ... ok [INFO] [stdout] test tactical_view::tests::battle_phase_variants ... ok [INFO] [stdout] test tactical_view::tests::class_to_sprite_id_in_range ... ok [INFO] [stdout] test victory_screen::tests::describe_death_star_destroyed ... ok [INFO] [stdout] test victory_screen::tests::describe_death_star_victory ... ok [INFO] [stdout] test victory_screen::tests::describe_hq_captured_alliance_wins ... ok [INFO] [stdout] test victory_screen::tests::describe_hq_captured_empire_wins ... ok [INFO] [stdout] test panels::mod_manager::tests::action_variants ... ok [INFO] [stdout] test victory_screen::tests::game_stats_default ... ok [INFO] [stdout] test panels::command_palette::tests::command_palette_state_defaults ... ok [INFO] [stdout] test victory_screen::tests::state_not_pending_when_acknowledged ... ok [INFO] [stdout] test panels::command_palette::tests::fuzzy_filter_empty_returns_all ... ok [INFO] [stdout] test victory_screen::tests::state_reset_clears_all_fields ... ok [INFO] [stdout] test combat_view::tests::to_messages_includes_losses ... ok [INFO] [stdout] test combat_view::tests::to_messages_includes_summary_text ... ok [INFO] [stdout] test advisor::tests::parse_advisor_bin_rejects_truncated_frames ... ok [INFO] [stdout] test event_screen::tests::final_battle_heritage_known_returns_emperor_vs_knight ... ok [INFO] [stdout] test advisor::tests::same_priority_does_not_preempt ... ok [INFO] [stdout] test combat_view::tests::battle_outcome_labels ... ok [INFO] [stdout] test combat_view::tests::to_messages_produces_outcome_line ... ok [INFO] [stdout] test video_player::native::tests::open_returns_not_decoded_when_cutscene_directory_is_missing ... ok [INFO] [stdout] test panels::command_palette::tests::fuzzy_filter_matches_advance ... ok [INFO] [stdout] test victory_screen::tests::state_is_pending_with_outcome ... ok [INFO] [stdout] test advisor::tests::advisor_greet_empire ... ok [INFO] [stdout] test combat_view::tests::combat_summary_state_push_and_dismiss ... ok [INFO] [stdout] test video_player::native::tests::resolves_ref_video_paths_into_decoded_assets ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 57 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Doc-tests dat_dumper [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests rebellion_core [INFO] [stdout] [INFO] [stdout] running 6 tests [INFO] [stdout] test crates/rebellion-core/src/events.rs - events (line 28) ... ignored [INFO] [stdout] test crates/rebellion-core/src/fog.rs - fog (line 19) ... ignored [INFO] [stdout] test crates/rebellion-core/src/research.rs - research::ResearchSystem::advance (line 212) ... ignored [INFO] [stdout] test crates/rebellion-core/src/movement.rs - movement (line 25) ... ok [INFO] [stdout] test crates/rebellion-core/src/tick.rs - tick (line 11) ... ok [INFO] [stdout] test crates/rebellion-core/src/manufacturing.rs - manufacturing (line 20) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 3 ignored; 0 measured; 0 filtered out; finished in 0.50s [INFO] [stdout] [INFO] [stderr] Doc-tests rebellion_data [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test crates/rebellion-data/src/integrator.rs - integrator::PerceptionIntegrator (line 124) ... ignored [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests rebellion_render [INFO] [stdout] [INFO] [stdout] running 12 tests [INFO] [stdout] test crates/rebellion-render/src/audio.rs - audio (line 14) ... ignored [INFO] [stdout] test crates/rebellion-render/src/combat_view.rs - combat_view (line 15) ... ignored [INFO] [stdout] test crates/rebellion-render/src/encyclopedia.rs - encyclopedia (line 29) ... ignored [INFO] [stdout] test crates/rebellion-render/src/fleet_movement.rs - fleet_movement (line 13) ... ignored [INFO] [stdout] test crates/rebellion-render/src/fog.rs - fog (line 16) ... ignored [INFO] [stdout] test crates/rebellion-render/src/ground_combat.rs - ground_combat (line 10) ... ignored [INFO] [stdout] test crates/rebellion-render/src/message_log.rs - message_log (line 14) ... ignored [INFO] [stdout] test crates/rebellion-render/src/panels/mod.rs - panels (line 13) ... ignored [INFO] [stdout] test crates/rebellion-render/src/panels/mod_manager.rs - panels::mod_manager (line 5) ... ignored [INFO] [stdout] test crates/rebellion-render/src/panels/save_load.rs - panels::save_load (line 5) ... ignored [INFO] [stdout] test crates/rebellion-render/src/tactical_view.rs - tactical_view (line 15) ... ignored [INFO] [stdout] test crates/rebellion-render/src/victory_screen.rs - victory_screen (line 15) ... ignored [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 12 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "30fa19da1c66b727efd62457627f8f9c90fc257cac3bf86f304ef702d22fc454", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "30fa19da1c66b727efd62457627f8f9c90fc257cac3bf86f304ef702d22fc454", kill_on_drop: false }` [INFO] [stdout] 30fa19da1c66b727efd62457627f8f9c90fc257cac3bf86f304ef702d22fc454