[INFO] cloning repository https://github.com/ASHISH26940/test
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ASHISH26940/test" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FASHISH26940%2Ftest", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FASHISH26940%2Ftest'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] de4ef886798afda2a8e643fe9641a172de9be1aa
[INFO] checking ASHISH26940/test against master#36b21637e93b038453924d3c66821089e71d8baa for pr-143164
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FASHISH26940%2Ftest" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] [stderr] Updating files:  25% (2140/8381)
Updating files:  26% (2180/8381)
Updating files:  27% (2263/8381)
Updating files:  28% (2347/8381)
Updating files:  29% (2431/8381)
Updating files:  30% (2515/8381)
Updating files:  31% (2599/8381)
Updating files:  32% (2682/8381)
Updating files:  33% (2766/8381)
Updating files:  34% (2850/8381)
Updating files:  35% (2934/8381)
Updating files:  36% (3018/8381)
Updating files:  37% (3101/8381)
Updating files:  38% (3185/8381)
Updating files:  39% (3269/8381)
Updating files:  40% (3353/8381)
Updating files:  41% (3437/8381)
Updating files:  42% (3521/8381)
Updating files:  43% (3604/8381)
Updating files:  44% (3688/8381)
Updating files:  45% (3772/8381)
Updating files:  46% (3856/8381)
Updating files:  47% (3940/8381)
Updating files:  48% (4023/8381)
Updating files:  49% (4107/8381)
Updating files:  50% (4191/8381)
Updating files:  51% (4275/8381)
Updating files:  52% (4359/8381)
Updating files:  53% (4442/8381)
Updating files:  54% (4526/8381)
Updating files:  55% (4610/8381)
Updating files:  56% (4694/8381)
Updating files:  57% (4778/8381)
Updating files:  58% (4861/8381)
Updating files:  59% (4945/8381)
Updating files:  60% (5029/8381)
Updating files:  61% (5113/8381)
Updating files:  62% (5197/8381)
Updating files:  63% (5281/8381)
Updating files:  64% (5364/8381)
Updating files:  65% (5448/8381)
Updating files:  66% (5532/8381)
Updating files:  67% (5616/8381)
Updating files:  68% (5700/8381)
Updating files:  69% (5783/8381)
Updating files:  70% (5867/8381)
Updating files:  71% (5951/8381)
Updating files:  71% (5970/8381)
Updating files:  72% (6035/8381)
Updating files:  73% (6119/8381)
Updating files:  74% (6202/8381)
Updating files:  75% (6286/8381)
Updating files:  75% (6322/8381)
Updating files:  76% (6370/8381)
Updating files:  76% (6450/8381)
Updating files:  77% (6454/8381)
Updating files:  78% (6538/8381)
Updating files:  79% (6621/8381)
Updating files:  79% (6662/8381)
Updating files:  80% (6705/8381)
Updating files:  81% (6789/8381)
Updating files:  82% (6873/8381)
Updating files:  83% (6957/8381)
Updating files:  84% (7041/8381)
Updating files:  85% (7124/8381)
Updating files:  86% (7208/8381)
Updating files:  87% (7292/8381)
Updating files:  88% (7376/8381)
Updating files:  89% (7460/8381)
Updating files:  90% (7543/8381)
Updating files:  90% (7625/8381)
Updating files:  91% (7627/8381)
Updating files:  92% (7711/8381)
Updating files:  93% (7795/8381)
Updating files:  94% (7879/8381)
Updating files:  95% (7962/8381)
Updating files:  96% (8046/8381)
Updating files:  97% (8130/8381)
Updating files:  98% (8214/8381)
Updating files:  99% (8298/8381)
Updating files:  99% (8331/8381)
Updating files: 100% (8381/8381)
Updating files: 100% (8381/8381), done.
[INFO] started tweaking git repo https://github.com/ASHISH26940/test
[INFO] finished tweaking git repo https://github.com/ASHISH26940/test
[INFO] tweaked toml for git repo https://github.com/ASHISH26940/test written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/ASHISH26940/test on toolchain 36b21637e93b038453924d3c66821089e71d8baa
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+36b21637e93b038453924d3c66821089e71d8baa" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/ASHISH26940/test 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" "+36b21637e93b038453924d3c66821089e71d8baa" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded lewton v0.9.4
[INFO] [stderr]   Downloaded macroquad_macro v0.1.8
[INFO] [stderr]   Downloaded smallvec v0.6.14
[INFO] [stderr]   Downloaded quad-rand v0.2.3
[INFO] [stderr]   Downloaded audir-sles v0.1.0
[INFO] [stderr]   Downloaded quad-alsa-sys v0.3.2
[INFO] [stderr]   Downloaded ogg v0.7.1
[INFO] [stderr]   Downloaded audrey v0.3.0
[INFO] [stderr]   Downloaded fontdue v0.7.3
[INFO] [stderr]   Downloaded miniquad v0.3.16
[INFO] [stderr]   Downloaded glam v0.21.3
[INFO] [stderr]   Downloaded macroquad v0.3.26
[INFO] [stderr]   Downloaded quad-snd v0.2.8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+36b21637e93b038453924d3c66821089e71d8baa" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2dfe88d320bd0a1f0249ca3a76bdeff2351d2e1b3472ec9c8b59aa8e1f413414
[INFO] running `Command { std: "docker" "start" "-a" "2dfe88d320bd0a1f0249ca3a76bdeff2351d2e1b3472ec9c8b59aa8e1f413414", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2dfe88d320bd0a1f0249ca3a76bdeff2351d2e1b3472ec9c8b59aa8e1f413414", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2dfe88d320bd0a1f0249ca3a76bdeff2351d2e1b3472ec9c8b59aa8e1f413414", kill_on_drop: false }`
[INFO] [stdout] 2dfe88d320bd0a1f0249ca3a76bdeff2351d2e1b3472ec9c8b59aa8e1f413414
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+36b21637e93b038453924d3c66821089e71d8baa" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5aa9f7c54770b6b7feaade5d2548fe28fe253ff49917c7d2b640ec59be5b8374
[INFO] running `Command { std: "docker" "start" "-a" "5aa9f7c54770b6b7feaade5d2548fe28fe253ff49917c7d2b640ec59be5b8374", kill_on_drop: false }`
[INFO] [stderr]     Checking once_cell v1.21.3
[INFO] [stderr]    Compiling syn v2.0.101
[INFO] [stderr]    Compiling bumpalo v3.17.0
[INFO] [stderr]    Compiling rustversion v1.0.20
[INFO] [stderr]    Compiling quad-alsa-sys v0.3.2
[INFO] [stderr]     Checking smallvec v0.6.14
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]     Checking ogg v0.7.1
[INFO] [stderr]     Checking dasp_sample v0.11.0
[INFO] [stderr]     Checking hound v3.5.1
[INFO] [stderr]    Compiling miniquad v0.3.16
[INFO] [stderr]     Checking lewton v0.9.4
[INFO] [stderr]    Compiling quad-snd v0.2.8
[INFO] [stderr]     Checking dasp_frame v0.11.0
[INFO] [stderr]     Checking hashbrown v0.13.2
[INFO] [stderr]     Checking color_quant v1.1.0
[INFO] [stderr]     Checking bytemuck v1.23.0
[INFO] [stderr]     Checking ttf-parser v0.15.2
[INFO] [stderr]     Checking image v0.24.9
[INFO] [stderr]     Checking glam v0.21.3
[INFO] [stderr]     Checking fontdue v0.7.3
[INFO] [stderr]    Compiling macroquad_macro v0.1.8
[INFO] [stderr]     Checking quad-rand v0.2.3
[INFO] [stderr]     Checking audrey v0.3.0
[INFO] [stderr]     Checking macroquad v0.3.26
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.100
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.100
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.100
[INFO] [stderr]     Checking wasm-bindgen v0.2.100
[INFO] [stderr]     Checking js-sys v0.3.77
[INFO] [stderr]     Checking console_error_panic_hook v0.1.7
[INFO] [stderr]     Checking web-sys v0.3.77
[INFO] [stderr]     Checking wasm-bindgen-futures v0.4.50
[INFO] [stderr]     Checking space_game v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `crate::game_state::GameState`
[INFO] [stdout]  --> src/main.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::game_state::GameState;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::player::Ship`
[INFO] [stdout]   --> src/main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::player::Ship;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::enemy::Enemy`
[INFO] [stdout]   --> src/main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::enemy::Enemy;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `handle_player_shoot` and `load_audio`
[INFO] [stdout]   --> src/main.rs:13:20
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::utils::{load_audio, handle_player_shoot};
[INFO] [stdout]    |                    ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::game_state::GameState`
[INFO] [stdout]  --> src/main.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::game_state::GameState;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::player::Ship`
[INFO] [stdout]   --> src/main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::player::Ship;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::enemy::Enemy`
[INFO] [stdout]   --> src/main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::enemy::Enemy;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `handle_player_shoot` and `load_audio`
[INFO] [stdout]   --> src/main.rs:13:20
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::utils::{load_audio, handle_player_shoot};
[INFO] [stdout]    |                    ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `warlord_texture`
[INFO] [stdout]   --> src/main.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |     let warlord_texture = load_texture("assets/warlord.png").await;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_warlord_texture`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `basic_fighter_texture`
[INFO] [stdout]   --> src/main.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |     let basic_fighter_texture = load_texture("assets/basic.png").await;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_basic_fighter_texture`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `warlord_texture`
[INFO] [stdout]   --> src/main.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |     let warlord_texture = load_texture("assets/warlord.png").await;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_warlord_texture`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `basic_fighter_texture`
[INFO] [stdout]   --> src/main.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |     let basic_fighter_texture = load_texture("assets/basic.png").await;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_basic_fighter_texture`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `delta_time`
[INFO] [stdout]   --> src/ship.rs:26:30
[INFO] [stdout]    |
[INFO] [stdout] 26 |     pub fn update(&mut self, delta_time: f32, enemies: &mut Vec<Enemy>) {
[INFO] [stdout]    |                              ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_delta_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `settings`
[INFO] [stdout]   --> src/menu.rs:24:51
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn draw_main_menu(game_state: &mut GameState, settings: &mut Settings) {
[INFO] [stdout]    |                                                   ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_settings`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `GameState` is never used
[INFO] [stdout]  --> src/game_state.rs:1:10
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub enum GameState {
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Ship` is never constructed
[INFO] [stdout]  --> src/player.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Ship {
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `update`, `draw`, and `activate_shield` are never used
[INFO] [stdout]   --> src/player.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl Ship {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 12 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub fn update(&mut self, _dt: f32) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn draw(&self) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub fn activate_shield(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Enemy` is never constructed
[INFO] [stdout]  --> src/enemy.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Enemy {
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `spawn_batch`, `update`, `draw`, and `respawn` are never used
[INFO] [stdout]   --> src/enemy.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl Enemy {
[INFO] [stdout]    | ---------- associated items in this implementation
[INFO] [stdout] 12 |     pub fn new(x: f32, y: f32) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub fn spawn_batch(n: usize) -> Vec<Enemy> {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 26 |     pub fn update(&mut self) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn draw(&self) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     pub fn respawn(&mut self) {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_audio` is never used
[INFO] [stdout]  --> src/utils.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub async fn load_audio(path: &str) -> Sound {
[INFO] [stdout]   |              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_player_shoot` is never used
[INFO] [stdout]   --> src/utils.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn handle_player_shoot(player: &mut Ship, sound: &Sound, last_time: &mut f64) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `delta_time`
[INFO] [stdout]   --> src/ship.rs:26:30
[INFO] [stdout]    |
[INFO] [stdout] 26 |     pub fn update(&mut self, delta_time: f32, enemies: &mut Vec<Enemy>) {
[INFO] [stdout]    |                              ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_delta_time`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `settings`
[INFO] [stdout]   --> src/menu.rs:24:51
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn draw_main_menu(game_state: &mut GameState, settings: &mut Settings) {
[INFO] [stdout]    |                                                   ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_settings`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `GameState` is never used
[INFO] [stdout]  --> src/game_state.rs:1:10
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub enum GameState {
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Ship` is never constructed
[INFO] [stdout]  --> src/player.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Ship {
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `update`, `draw`, and `activate_shield` are never used
[INFO] [stdout]   --> src/player.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl Ship {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 12 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub fn update(&mut self, _dt: f32) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn draw(&self) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub fn activate_shield(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Enemy` is never constructed
[INFO] [stdout]  --> src/enemy.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Enemy {
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `spawn_batch`, `update`, `draw`, and `respawn` are never used
[INFO] [stdout]   --> src/enemy.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl Enemy {
[INFO] [stdout]    | ---------- associated items in this implementation
[INFO] [stdout] 12 |     pub fn new(x: f32, y: f32) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub fn spawn_batch(n: usize) -> Vec<Enemy> {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 26 |     pub fn update(&mut self) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn draw(&self) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     pub fn respawn(&mut self) {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_audio` is never used
[INFO] [stdout]  --> src/utils.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub async fn load_audio(path: &str) -> Sound {
[INFO] [stdout]   |              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_player_shoot` is never used
[INFO] [stdout]   --> src/utils.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn handle_player_shoot(player: &mut Ship, sound: &Sound, last_time: &mut f64) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 24.15s
[INFO] running `Command { std: "docker" "inspect" "5aa9f7c54770b6b7feaade5d2548fe28fe253ff49917c7d2b640ec59be5b8374", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5aa9f7c54770b6b7feaade5d2548fe28fe253ff49917c7d2b640ec59be5b8374", kill_on_drop: false }`
[INFO] [stdout] 5aa9f7c54770b6b7feaade5d2548fe28fe253ff49917c7d2b640ec59be5b8374
