[INFO] cloning repository https://github.com/nyankittone/xpedition
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/nyankittone/xpedition" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnyankittone%2Fxpedition", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnyankittone%2Fxpedition'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] bfe8d4bb0dcc8a224d735df3dfe66cc0c264bf36
[INFO] checking nyankittone/xpedition against 8006091eb71ae7d9e9bccb66c6122c9d68af4466 for pr-129249-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnyankittone%2Fxpedition" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/nyankittone/xpedition
[INFO] finished tweaking git repo https://github.com/nyankittone/xpedition
[INFO] tweaked toml for git repo https://github.com/nyankittone/xpedition written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/nyankittone/xpedition on toolchain 8006091eb71ae7d9e9bccb66c6122c9d68af4466
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8006091eb71ae7d9e9bccb66c6122c9d68af4466" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/nyankittone/xpedition 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" "+8006091eb71ae7d9e9bccb66c6122c9d68af4466" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded zvariant_utils v3.5.0
[INFO] [stderr]   Downloaded zvariant_derive v5.13.1
[INFO] [stderr]   Downloaded notify-rust v4.18.0
[INFO] [stderr]   Downloaded argh_shared v0.1.19
[INFO] [stderr]   Downloaded mac-notification-sys v0.6.15
[INFO] [stderr]   Downloaded zvariant v5.13.1
[INFO] [stderr]   Downloaded zbus_macros v5.18.0
[INFO] [stderr]   Downloaded tauri-winrt-notification v0.7.3
[INFO] [stderr]   Downloaded argh v0.1.19
[INFO] [stderr]   Downloaded argh_derive v0.1.19
[INFO] [stderr]   Downloaded zbus v5.18.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] e240eedb779a3e342addac730b59f608784e66549e7819dd89ff3a174ab0cc54
[INFO] running `Command { std: "docker" "start" "e240eedb779a3e342addac730b59f608784e66549e7819dd89ff3a174ab0cc54", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e240eedb779a3e342addac730b59f608784e66549e7819dd89ff3a174ab0cc54", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "e240eedb779a3e342addac730b59f608784e66549e7819dd89ff3a174ab0cc54" "/opt/rustwide/cargo-home/bin/cargo" "+8006091eb71ae7d9e9bccb66c6122c9d68af4466" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e240eedb779a3e342addac730b59f608784e66549e7819dd89ff3a174ab0cc54", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "e240eedb779a3e342addac730b59f608784e66549e7819dd89ff3a174ab0cc54" "/opt/rustwide/cargo-home/bin/cargo" "+8006091eb71ae7d9e9bccb66c6122c9d68af4466" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.107
[INFO] [stderr]    Compiling winnow v1.0.4
[INFO] [stderr]    Compiling quote v1.0.47
[INFO] [stderr]    Compiling serde_core v1.0.229
[INFO] [stderr]    Compiling crossbeam-utils v0.8.22
[INFO] [stderr]     Checking futures-core v0.3.33
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling toml_datetime v1.1.1+spec-1.1.0
[INFO] [stderr]     Checking futures-io v0.3.33
[INFO] [stderr]     Checking fastrand v2.5.0
[INFO] [stderr]     Checking linux-raw-sys v0.12.1
[INFO] [stderr]     Checking bitflags v2.13.1
[INFO] [stderr]     Checking unicode-ident v1.0.24
[INFO] [stderr]     Checking futures-lite v2.6.1
[INFO] [stderr]     Checking concurrent-queue v2.5.0
[INFO] [stderr]    Compiling async-io v2.6.0
[INFO] [stderr]    Compiling syn v3.0.3
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]     Checking async-task v4.7.1
[INFO] [stderr]    Compiling toml_parser v1.1.3+spec-1.1.0
[INFO] [stderr]    Compiling endi v1.1.1
[INFO] [stderr]    Compiling toml_edit v0.25.13+spec-1.1.0
[INFO] [stderr]     Checking async-channel v2.5.0
[INFO] [stderr]     Checking piper v0.2.5
[INFO] [stderr]    Compiling proc-macro-crate v3.5.0
[INFO] [stderr]     Checking async-lock v3.4.2
[INFO] [stderr]     Checking rand_core v0.10.1
[INFO] [stderr]    Compiling getrandom v0.4.3
[INFO] [stderr]     Checking blocking v1.6.2
[INFO] [stderr]     Checking uuid v1.24.0
[INFO] [stderr]     Checking async-executor v1.14.0
[INFO] [stderr]     Checking async-broadcast v0.7.2
[INFO] [stderr]     Checking ordered-stream v0.2.0
[INFO] [stderr]    Compiling argh_shared v0.1.19
[INFO] [stderr]     Checking cpufeatures v0.3.0
[INFO] [stderr]     Checking chacha20 v0.10.1
[INFO] [stderr]     Checking x11rb-protocol v0.13.2
[INFO] [stderr]     Checking xcursor v0.3.11
[INFO] [stderr]     Checking xkeysym v0.2.1
[INFO] [stderr]     Checking rand v0.10.2
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]    Compiling async-trait v0.1.91
[INFO] [stderr]    Compiling serde_repr v0.1.21
[INFO] [stderr]     Checking polling v3.11.0
[INFO] [stderr]     Checking gethostname v1.1.0
[INFO] [stderr]    Compiling enumflags2_derive v0.7.12
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling async-recursion v1.1.1
[INFO] [stderr]    Compiling argh_derive v0.1.19
[INFO] [stderr]     Checking async-signal v0.2.14
[INFO] [stderr]     Checking async-process v2.5.0
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]     Checking zvariant_utils v3.5.0
[INFO] [stderr]     Checking enumflags2 v0.7.12
[INFO] [stderr]     Checking argh v0.1.19
[INFO] [stderr]    Compiling zvariant_derive v5.13.1
[INFO] [stderr]     Checking x11rb v0.13.2
[INFO] [stderr]    Compiling zvariant v5.13.1
[INFO] [stderr]     Checking zbus_names v4.3.4
[INFO] [stderr]    Compiling zbus_macros v5.18.0
[INFO] [stderr]     Checking zbus v5.18.0
[INFO] [stderr]     Checking notify-rust v4.18.0
[INFO] [stderr]     Checking xpedition v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `ManuallyDrop` and `MaybeUninit`
[INFO] [stdout]  --> src/render.rs:5:16
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::mem::{ManuallyDrop, MaybeUninit};
[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: `x11rb::protocol::Event`
[INFO] [stdout]   --> src/render.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use x11rb::protocol::Event;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::log`
[INFO] [stdout]  --> src/tick.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::log;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `x11rb::rust_connection::RustConnection`
[INFO] [stdout]   --> src/events.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use x11rb::rust_connection::RustConnection;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Keysymmer`
[INFO] [stdout]   --> src/events.rs:15:35
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::render::{DisplayState, Keysymmer, XError};
[INFO] [stdout]    |                                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around pattern
[INFO] [stdout]    --> src/events.rs:121:24
[INFO] [stdout]     |
[INFO] [stdout] 121 |                 if let (key::W
[INFO] [stdout]     |                        ^
[INFO] [stdout] ...
[INFO] [stdout] 129 |                 | key::space) = sym.raw()
[INFO] [stdout]     |                             ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 121 ~                 if let key::W
[INFO] [stdout] 122 |                 | key::w
[INFO] [stdout] ...
[INFO] [stdout] 128 |                 | key::d
[INFO] [stdout] 129 ~                 | key::space = sym.raw()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ManuallyDrop` and `MaybeUninit`
[INFO] [stdout]  --> src/render.rs:5:16
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::mem::{ManuallyDrop, MaybeUninit};
[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: `x11rb::protocol::Event`
[INFO] [stdout]   --> src/render.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use x11rb::protocol::Event;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::log`
[INFO] [stdout]  --> src/tick.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::log;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `x11rb::rust_connection::RustConnection`
[INFO] [stdout]   --> src/events.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use x11rb::rust_connection::RustConnection;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Keysymmer`
[INFO] [stdout]   --> src/events.rs:15:35
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::render::{DisplayState, Keysymmer, XError};
[INFO] [stdout]    |                                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around pattern
[INFO] [stdout]    --> src/events.rs:121:24
[INFO] [stdout]     |
[INFO] [stdout] 121 |                 if let (key::W
[INFO] [stdout]     |                        ^
[INFO] [stdout] ...
[INFO] [stdout] 129 |                 | key::space) = sym.raw()
[INFO] [stdout]     |                             ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 121 ~                 if let key::W
[INFO] [stdout] 122 |                 | key::w
[INFO] [stdout] ...
[INFO] [stdout] 128 |                 | key::d
[INFO] [stdout] 129 ~                 | key::space = sym.raw()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/tick.rs:326:17
[INFO] [stdout]     |
[INFO] [stdout] 326 |             let mut entity = handle.get_mut(id).unwrap();
[INFO] [stdout]     |                 ----^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]    --> src/tick.rs:326:17
[INFO] [stdout]     |
[INFO] [stdout] 326 |             let mut entity = handle.get_mut(id).unwrap();
[INFO] [stdout]     |                 ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MID_X` is never used
[INFO] [stdout]    --> src/render.rs:252:7
[INFO] [stdout]     |
[INFO] [stdout] 252 | const MID_X: i32 = WIDTH as i32 / 2;
[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 `MID_Y` is never used
[INFO] [stdout]    --> src/render.rs:253:7
[INFO] [stdout]     |
[INFO] [stdout] 253 | const MID_Y: i32 = HEIGHT as i32 / 2;
[INFO] [stdout]     |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `queue_allocate`, `queue_free`, and `get` are never used
[INFO] [stdout]    --> src/tick.rs:66:8
[INFO] [stdout]     |
[INFO] [stdout]  25 | impl<const S: usize, const Q: usize> EntityPoolAllocation<S, Q> {
[INFO] [stdout]     | --------------------------------------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  66 |     fn queue_allocate(&mut self, entity: Entity) -> Result<(), ()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  81 |     fn queue_free(&mut self, id: EntityID) -> Result<(), ()> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     fn get(&self, id: u32) -> Option<Ref<'_, Entity>> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/tick.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 132 | pub struct EntityDirectAllocHandle<'a, const S: usize, const Q: usize>(
[INFO] [stdout]     |            ----------------------- field in this struct
[INFO] [stdout] 133 |     RefMut<'a, EntityPoolAllocation<S, Q>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `allocate`, `free`, `get`, and `get_mut` are never used
[INFO] [stdout]    --> src/tick.rs:136:8
[INFO] [stdout]     |
[INFO] [stdout] 135 | impl<'a, const S: usize, const Q: usize> EntityDirectAllocHandle<'a, S, Q> {
[INFO] [stdout]     | -------------------------------------------------------------------------- methods in this implementation
[INFO] [stdout] 136 |     fn allocate(&mut self, entity: Entity) -> Option<u32> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 140 |     fn free(&mut self, index: u32) -> Result<(), ()> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 144 |     fn get(&self, id: u32) -> Option<Ref<'_, Entity>> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 148 |     fn get_mut(&self, id: u32) -> Option<RefMut<'_, Entity>> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `allocate`, `free`, and `get` are never used
[INFO] [stdout]    --> src/tick.rs:157:8
[INFO] [stdout]     |
[INFO] [stdout] 156 | impl<'a, const S: usize, const Q: usize> EntityIndirectAllocHandle<'a, S, Q> {
[INFO] [stdout]     | ---------------------------------------------------------------------------- methods in this implementation
[INFO] [stdout] 157 |     fn allocate(&mut self, entity: Entity) -> Result<(), ()> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     fn free(&mut self, index: u32) -> Result<(), ()> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 165 |     fn get(&self, id: u32) -> Option<Ref<'_, Entity>> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `camera_position` is never read
[INFO] [stdout]    --> src/tick.rs:285:5
[INFO] [stdout]     |
[INFO] [stdout] 278 | struct TickState<'a, const S: usize, const Q: usize, const A: usize, const P: usize> {
[INFO] [stdout]     |        --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 285 |     camera_position: GameVector<i64>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/entities.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct Asteroid {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 45 |     position: math_types::GameVector<i64>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 46 |     rotation: f32,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 47 |     velocity: math_types::GameVector<i32>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 48 |     health_current: u16,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 49 |     health_max: u16,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 50 |     scale: f32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 51 |     points_count: u8,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 52 |     points: [f32; 8],
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Asteroid` 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 `position`, `velocity`, and `color` are never read
[INFO] [stdout]   --> src/entities.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub struct Projectile {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 57 |     position: math_types::GameVector<i64>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 58 |     velocity: math_types::GameVector<i32>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 59 |     color: u32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Projectile` 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 `start_time` and `delta_time` are never read
[INFO] [stdout]   --> src/render_pipeline.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub struct RenderInfo<const A: usize, const P: usize> {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 48 |     start_time: u64,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 49 |     delta_time: u64,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/tick.rs:326:17
[INFO] [stdout]     |
[INFO] [stdout] 326 |             let mut entity = handle.get_mut(id).unwrap();
[INFO] [stdout]     |                 ----^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]    --> src/tick.rs:326:17
[INFO] [stdout]     |
[INFO] [stdout] 326 |             let mut entity = handle.get_mut(id).unwrap();
[INFO] [stdout]     |                 ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MID_X` is never used
[INFO] [stdout]    --> src/render.rs:252:7
[INFO] [stdout]     |
[INFO] [stdout] 252 | const MID_X: i32 = WIDTH as i32 / 2;
[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 `MID_Y` is never used
[INFO] [stdout]    --> src/render.rs:253:7
[INFO] [stdout]     |
[INFO] [stdout] 253 | const MID_Y: i32 = HEIGHT as i32 / 2;
[INFO] [stdout]     |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `queue_allocate`, `queue_free`, and `get` are never used
[INFO] [stdout]    --> src/tick.rs:66:8
[INFO] [stdout]     |
[INFO] [stdout]  25 | impl<const S: usize, const Q: usize> EntityPoolAllocation<S, Q> {
[INFO] [stdout]     | --------------------------------------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  66 |     fn queue_allocate(&mut self, entity: Entity) -> Result<(), ()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  81 |     fn queue_free(&mut self, id: EntityID) -> Result<(), ()> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     fn get(&self, id: u32) -> Option<Ref<'_, Entity>> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/tick.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 132 | pub struct EntityDirectAllocHandle<'a, const S: usize, const Q: usize>(
[INFO] [stdout]     |            ----------------------- field in this struct
[INFO] [stdout] 133 |     RefMut<'a, EntityPoolAllocation<S, Q>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `allocate`, `free`, `get`, and `get_mut` are never used
[INFO] [stdout]    --> src/tick.rs:136:8
[INFO] [stdout]     |
[INFO] [stdout] 135 | impl<'a, const S: usize, const Q: usize> EntityDirectAllocHandle<'a, S, Q> {
[INFO] [stdout]     | -------------------------------------------------------------------------- methods in this implementation
[INFO] [stdout] 136 |     fn allocate(&mut self, entity: Entity) -> Option<u32> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 140 |     fn free(&mut self, index: u32) -> Result<(), ()> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 144 |     fn get(&self, id: u32) -> Option<Ref<'_, Entity>> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 148 |     fn get_mut(&self, id: u32) -> Option<RefMut<'_, Entity>> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `allocate`, `free`, and `get` are never used
[INFO] [stdout]    --> src/tick.rs:157:8
[INFO] [stdout]     |
[INFO] [stdout] 156 | impl<'a, const S: usize, const Q: usize> EntityIndirectAllocHandle<'a, S, Q> {
[INFO] [stdout]     | ---------------------------------------------------------------------------- methods in this implementation
[INFO] [stdout] 157 |     fn allocate(&mut self, entity: Entity) -> Result<(), ()> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     fn free(&mut self, index: u32) -> Result<(), ()> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 165 |     fn get(&self, id: u32) -> Option<Ref<'_, Entity>> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `camera_position` is never read
[INFO] [stdout]    --> src/tick.rs:285:5
[INFO] [stdout]     |
[INFO] [stdout] 278 | struct TickState<'a, const S: usize, const Q: usize, const A: usize, const P: usize> {
[INFO] [stdout]     |        --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 285 |     camera_position: GameVector<i64>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/entities.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct Asteroid {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 45 |     position: math_types::GameVector<i64>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 46 |     rotation: f32,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 47 |     velocity: math_types::GameVector<i32>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 48 |     health_current: u16,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 49 |     health_max: u16,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 50 |     scale: f32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 51 |     points_count: u8,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 52 |     points: [f32; 8],
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Asteroid` 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 `position`, `velocity`, and `color` are never read
[INFO] [stdout]   --> src/entities.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub struct Projectile {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 57 |     position: math_types::GameVector<i64>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 58 |     velocity: math_types::GameVector<i32>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 59 |     color: u32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Projectile` 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 `start_time` and `delta_time` are never read
[INFO] [stdout]   --> src/render_pipeline.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub struct RenderInfo<const A: usize, const P: usize> {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 48 |     start_time: u64,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 49 |     delta_time: u64,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `x11rb::connection::Connection`
[INFO] [stdout]  --> src/main.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use x11rb::connection::Connection;
[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: `x11rb::connection::Connection`
[INFO] [stdout]  --> src/main.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use x11rb::connection::Connection;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 14s
[INFO] running `Command { std: "docker" "inspect" "e240eedb779a3e342addac730b59f608784e66549e7819dd89ff3a174ab0cc54", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e240eedb779a3e342addac730b59f608784e66549e7819dd89ff3a174ab0cc54", kill_on_drop: false }`
[INFO] [stdout] e240eedb779a3e342addac730b59f608784e66549e7819dd89ff3a174ab0cc54
