[INFO] cloning repository https://github.com/grimvoodoo/combat-calculator
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/grimvoodoo/combat-calculator" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgrimvoodoo%2Fcombat-calculator", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgrimvoodoo%2Fcombat-calculator'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a3fea6614943023338185815b8dee91456d01b94
[INFO] testing grimvoodoo/combat-calculator against 1.95.0 for beta-1.96-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgrimvoodoo%2Fcombat-calculator" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/grimvoodoo/combat-calculator
[INFO] finished tweaking git repo https://github.com/grimvoodoo/combat-calculator
[INFO] tweaked toml for git repo https://github.com/grimvoodoo/combat-calculator written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/grimvoodoo/combat-calculator 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/grimvoodoo/combat-calculator 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]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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] 5d4922b4bcb572e20eb6d167d4b6694b07a988da0b48e29a10370256f13beead
[INFO] running `Command { std: "docker" "start" "-a" "5d4922b4bcb572e20eb6d167d4b6694b07a988da0b48e29a10370256f13beead", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5d4922b4bcb572e20eb6d167d4b6694b07a988da0b48e29a10370256f13beead", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5d4922b4bcb572e20eb6d167d4b6694b07a988da0b48e29a10370256f13beead", kill_on_drop: false }`
[INFO] [stdout] 5d4922b4bcb572e20eb6d167d4b6694b07a988da0b48e29a10370256f13beead
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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] ceb797b9e2eca155115e6935c060b92fa24e7f1f0688159f9074034af6123f02
[INFO] running `Command { std: "docker" "start" "-a" "ceb797b9e2eca155115e6935c060b92fa24e7f1f0688159f9074034af6123f02", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.153
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling ppv-lite86 v0.2.17
[INFO] [stderr]    Compiling getrandom v0.2.12
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling combat-calculator v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `rokkit_launcher`
[INFO] [stdout]    --> src/main.rs:120:9
[INFO] [stdout]     |
[INFO] [stdout] 120 |     let rokkit_launcher = Weapon {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rokkit_launcher`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shardlauncher`
[INFO] [stdout]    --> src/main.rs:161:9
[INFO] [stdout]     |
[INFO] [stdout] 161 |     let shardlauncher = Weapon {
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shardlauncher`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `leadership`, and `objective_control` are never read
[INFO] [stdout]   --> src/main.rs:5:5
[INFO] [stdout]    |
[INFO] [stdout]  4 | struct Model {
[INFO] [stdout]    |        ----- fields in this struct
[INFO] [stdout]  5 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 11 |     leadership: i32,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 12 |     objective_control: i32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Model` 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] [stdout] warning: field `name` is never read
[INFO] [stdout]   --> src/main.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | struct Squad {
[INFO] [stdout]    |        ----- field in this struct
[INFO] [stdout] 18 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Squad` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `attributes` are never read
[INFO] [stdout]   --> src/main.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | struct Weapon {
[INFO] [stdout]    |        ------ fields in this struct
[INFO] [stdout] 24 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     attributes: Attributes,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Weapon` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/main.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 35 | struct Attributes {
[INFO] [stdout]    |        ---------- fields in this struct
[INFO] [stdout] 36 |     anti: bool,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 37 |     assault: bool,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 38 |     blast: bool,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 39 |     conversion: bool,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 40 |     devastating_wounds: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 41 |     extra_attacks: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 42 |     hazardous: bool,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 43 |     heavy: bool,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 44 |     indirect_fire: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 45 |     ignores_cover: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 46 |     lance: bool,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 47 |     lethal_hits: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 48 |     linked_fire: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 49 |     melta: bool,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 50 |     pistol: bool,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 51 |     precision: bool,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 52 |     psychic: bool,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 53 |     rapid_fire: bool,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 54 |     sustained_hits: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 55 |     torrent: bool,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 56 |     twin_linked: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Attributes` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.09s
[INFO] running `Command { std: "docker" "inspect" "ceb797b9e2eca155115e6935c060b92fa24e7f1f0688159f9074034af6123f02", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ceb797b9e2eca155115e6935c060b92fa24e7f1f0688159f9074034af6123f02", kill_on_drop: false }`
[INFO] [stdout] ceb797b9e2eca155115e6935c060b92fa24e7f1f0688159f9074034af6123f02
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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] 0b1240bde9c7f622310d8798238cfa296e783a73f875b60f35b4edd5cb908f1b
[INFO] running `Command { std: "docker" "start" "-a" "0b1240bde9c7f622310d8798238cfa296e783a73f875b60f35b4edd5cb908f1b", kill_on_drop: false }`
[INFO] [stderr]    Compiling combat-calculator v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `rokkit_launcher`
[INFO] [stdout]    --> src/main.rs:120:9
[INFO] [stdout]     |
[INFO] [stdout] 120 |     let rokkit_launcher = Weapon {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rokkit_launcher`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shardlauncher`
[INFO] [stdout]    --> src/main.rs:161:9
[INFO] [stdout]     |
[INFO] [stdout] 161 |     let shardlauncher = Weapon {
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shardlauncher`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `leadership`, and `objective_control` are never read
[INFO] [stdout]   --> src/main.rs:5:5
[INFO] [stdout]    |
[INFO] [stdout]  4 | struct Model {
[INFO] [stdout]    |        ----- fields in this struct
[INFO] [stdout]  5 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 11 |     leadership: i32,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 12 |     objective_control: i32,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Model` 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] [stdout] warning: field `name` is never read
[INFO] [stdout]   --> src/main.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | struct Squad {
[INFO] [stdout]    |        ----- field in this struct
[INFO] [stdout] 18 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Squad` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `attributes` are never read
[INFO] [stdout]   --> src/main.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | struct Weapon {
[INFO] [stdout]    |        ------ fields in this struct
[INFO] [stdout] 24 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     attributes: Attributes,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Weapon` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/main.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 35 | struct Attributes {
[INFO] [stdout]    |        ---------- fields in this struct
[INFO] [stdout] 36 |     anti: bool,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 37 |     assault: bool,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 38 |     blast: bool,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 39 |     conversion: bool,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 40 |     devastating_wounds: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 41 |     extra_attacks: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 42 |     hazardous: bool,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 43 |     heavy: bool,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 44 |     indirect_fire: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 45 |     ignores_cover: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 46 |     lance: bool,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 47 |     lethal_hits: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 48 |     linked_fire: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 49 |     melta: bool,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 50 |     pistol: bool,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 51 |     precision: bool,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 52 |     psychic: bool,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 53 |     rapid_fire: bool,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 54 |     sustained_hits: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 55 |     torrent: bool,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 56 |     twin_linked: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Attributes` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.30s
[INFO] running `Command { std: "docker" "inspect" "0b1240bde9c7f622310d8798238cfa296e783a73f875b60f35b4edd5cb908f1b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0b1240bde9c7f622310d8798238cfa296e783a73f875b60f35b4edd5cb908f1b", kill_on_drop: false }`
[INFO] [stdout] 0b1240bde9c7f622310d8798238cfa296e783a73f875b60f35b4edd5cb908f1b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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] c7ec9f98e3462f651e0842b0b3e6a44781aba4b6ec60848c9a8ae32ee22b802c
[INFO] running `Command { std: "docker" "start" "-a" "c7ec9f98e3462f651e0842b0b3e6a44781aba4b6ec60848c9a8ae32ee22b802c", kill_on_drop: false }`
[INFO] [stderr] warning: unused variable: `rokkit_launcher`
[INFO] [stdout] 
[INFO] [stderr]    --> src/main.rs:120:9
[INFO] [stdout] running 0 tests
[INFO] [stderr]     |
[INFO] [stdout] 
[INFO] [stderr] 120 |     let rokkit_launcher = Weapon {
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rokkit_launcher`
[INFO] [stdout] 
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `shardlauncher`
[INFO] [stderr]    --> src/main.rs:161:9
[INFO] [stderr]     |
[INFO] [stderr] 161 |     let shardlauncher = Weapon {
[INFO] [stderr]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shardlauncher`
[INFO] [stderr] 
[INFO] [stderr] warning: fields `name`, `leadership`, and `objective_control` are never read
[INFO] [stderr]   --> src/main.rs:5:5
[INFO] [stderr]    |
[INFO] [stderr]  4 | struct Model {
[INFO] [stderr]    |        ----- fields in this struct
[INFO] [stderr]  5 |     name: String,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 11 |     leadership: i32,
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr] 12 |     objective_control: i32,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Model` 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: field `name` is never read
[INFO] [stderr]   --> src/main.rs:18:5
[INFO] [stderr]    |
[INFO] [stderr] 17 | struct Squad {
[INFO] [stderr]    |        ----- field in this struct
[INFO] [stderr] 18 |     name: String,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Squad` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `name` and `attributes` are never read
[INFO] [stderr]   --> src/main.rs:24:5
[INFO] [stderr]    |
[INFO] [stderr] 23 | struct Weapon {
[INFO] [stderr]    |        ------ fields in this struct
[INFO] [stderr] 24 |     name: String,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 31 |     attributes: Attributes,
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Weapon` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: multiple fields are never read
[INFO] [stderr]   --> src/main.rs:36:5
[INFO] [stderr]    |
[INFO] [stderr] 35 | struct Attributes {
[INFO] [stderr]    |        ---------- fields in this struct
[INFO] [stderr] 36 |     anti: bool,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 37 |     assault: bool,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 38 |     blast: bool,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 39 |     conversion: bool,
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr] 40 |     devastating_wounds: bool,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 41 |     extra_attacks: bool,
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 42 |     hazardous: bool,
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr] 43 |     heavy: bool,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 44 |     indirect_fire: bool,
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 45 |     ignores_cover: bool,
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 46 |     lance: bool,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 47 |     lethal_hits: bool,
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr] 48 |     linked_fire: bool,
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr] 49 |     melta: bool,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 50 |     pistol: bool,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 51 |     precision: bool,
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr] 52 |     psychic: bool,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 53 |     rapid_fire: bool,
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr] 54 |     sustained_hits: bool,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr] 55 |     torrent: bool,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 56 |     twin_linked: bool,
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Attributes` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: `combat-calculator` (bin "combat-calculator" test) generated 6 warnings (run `cargo fix --bin "combat-calculator" -p combat-calculator --tests` to apply 2 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.03s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/combat_calculator-dedfa831a8767af9)
[INFO] running `Command { std: "docker" "inspect" "c7ec9f98e3462f651e0842b0b3e6a44781aba4b6ec60848c9a8ae32ee22b802c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c7ec9f98e3462f651e0842b0b3e6a44781aba4b6ec60848c9a8ae32ee22b802c", kill_on_drop: false }`
[INFO] [stdout] c7ec9f98e3462f651e0842b0b3e6a44781aba4b6ec60848c9a8ae32ee22b802c
