[INFO] cloning repository https://github.com/Mantotheale/NubesReboot
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Mantotheale/NubesReboot" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMantotheale%2FNubesReboot", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMantotheale%2FNubesReboot'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] cd910ebb4defd6f7ea7c349cc017a8eb63c635b5
[INFO] checking Mantotheale/NubesReboot against 3154cc1a3e6424e44f438a95007d043ed5ceaaf6+rustflags=-Znext-solver=coherence for pr-133502-30
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMantotheale%2FNubesReboot" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Mantotheale/NubesReboot
[INFO] finished tweaking git repo https://github.com/Mantotheale/NubesReboot
[INFO] tweaked toml for git repo https://github.com/Mantotheale/NubesReboot written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Mantotheale/NubesReboot on toolchain 3154cc1a3e6424e44f438a95007d043ed5ceaaf6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3154cc1a3e6424e44f438a95007d043ed5ceaaf6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Mantotheale/NubesReboot 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" "+3154cc1a3e6424e44f438a95007d043ed5ceaaf6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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] fc31f7ecf9a966a299ea2a90eff7b87f68b5147efd72e7bc1a06e9b753864e20
[INFO] running `Command { std: "docker" "start" "fc31f7ecf9a966a299ea2a90eff7b87f68b5147efd72e7bc1a06e9b753864e20", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fc31f7ecf9a966a299ea2a90eff7b87f68b5147efd72e7bc1a06e9b753864e20", 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" "fc31f7ecf9a966a299ea2a90eff7b87f68b5147efd72e7bc1a06e9b753864e20" "/opt/rustwide/cargo-home/bin/cargo" "+3154cc1a3e6424e44f438a95007d043ed5ceaaf6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fc31f7ecf9a966a299ea2a90eff7b87f68b5147efd72e7bc1a06e9b753864e20", 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 -Znext-solver=coherence" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "fc31f7ecf9a966a299ea2a90eff7b87f68b5147efd72e7bc1a06e9b753864e20" "/opt/rustwide/cargo-home/bin/cargo" "+3154cc1a3e6424e44f438a95007d043ed5ceaaf6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]     Checking log v0.4.33
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling syn v3.0.3
[INFO] [stderr]     Checking arrayvec v0.7.8
[INFO] [stderr]    Compiling zerocopy v0.8.56
[INFO] [stderr]    Compiling crossbeam-utils v0.8.22
[INFO] [stderr]    Compiling wayland-backend v0.3.16
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.20
[INFO] [stderr]    Compiling crossbeam-deque v0.8.7
[INFO] [stderr]    Compiling wayland-scanner v0.31.11
[INFO] [stderr]     Checking hashbrown v0.17.1
[INFO] [stderr]     Checking wayland-sys v0.31.11
[INFO] [stderr]    Compiling naga v30.0.0
[INFO] [stderr]     Checking num-integer v0.1.47
[INFO] [stderr]     Checking bit-set v0.10.0
[INFO] [stderr]     Checking num-bigint v0.4.8
[INFO] [stderr]     Checking ash v0.38.0+1.3.281
[INFO] [stderr]     Checking indexmap v2.14.0
[INFO] [stderr]     Checking rayon-core v1.13.0
[INFO] [stderr]     Checking anyhow v1.0.104
[INFO] [stderr]     Checking rayon v1.12.0
[INFO] [stderr]    Compiling wgpu-hal v30.0.0
[INFO] [stderr]     Checking khronos-egl v6.0.0
[INFO] [stderr]     Checking aligned v0.4.3
[INFO] [stderr]     Checking no_std_io2 v0.9.4
[INFO] [stderr]     Checking ordered-float v5.3.0
[INFO] [stderr]     Checking wayland-csd-frame v0.3.0
[INFO] [stderr]     Checking wayland-client v0.31.15
[INFO] [stderr]     Checking bitstream-io v4.10.0
[INFO] [stderr]     Checking num-rational v0.4.2
[INFO] [stderr]    Compiling pulp v0.22.3
[INFO] [stderr]    Compiling rav1e v0.8.1
[INFO] [stderr]     Checking itertools v0.14.0
[INFO] [stderr]    Compiling wgpu-core v30.0.0
[INFO] [stderr]    Compiling simd_helpers v0.1.0
[INFO] [stderr]     Checking raw-cpuid v11.6.0
[INFO] [stderr]     Checking imgref v1.12.2
[INFO] [stderr]     Checking reborrow v0.5.5
[INFO] [stderr]     Checking pulp-wasm-simd-flag v0.1.1
[INFO] [stderr]     Checking loop9 v0.1.5
[INFO] [stderr]    Compiling bytemuck_derive v1.12.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.20
[INFO] [stderr]     Checking maybe-rayon v0.1.1
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]     Checking wayland-protocols v0.32.13
[INFO] [stderr]     Checking wayland-cursor v0.31.14
[INFO] [stderr]     Checking avif-serialize v0.8.9
[INFO] [stderr]     Checking zune-inflate v0.2.54
[INFO] [stderr]    Compiling wgpu v30.0.0
[INFO] [stderr]     Checking rgb v0.8.53
[INFO] [stderr]     Checking bytemuck v1.25.2
[INFO] [stderr]     Checking thiserror v2.0.20
[INFO] [stderr]     Checking fax v0.2.7
[INFO] [stderr]     Checking naga-types v30.0.0
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]     Checking wgpu-types v30.0.0
[INFO] [stderr]     Checking tiny-skia-path v0.11.4
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking qoi v0.4.1
[INFO] [stderr]     Checking moxcms v0.8.1
[INFO] [stderr]     Checking tiny-skia v0.11.4
[INFO] [stderr]     Checking x11rb v0.13.2
[INFO] [stderr]    Compiling winit v0.30.13
[INFO] [stderr]     Checking xkbcommon-dl v0.4.2
[INFO] [stderr]    Compiling zerocopy-derive v0.8.56
[INFO] [stderr]    Compiling profiling-procmacros v1.0.18
[INFO] [stderr]    Compiling equator-macro v0.4.2
[INFO] [stderr]     Checking profiling v1.0.18
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]     Checking equator v0.4.2
[INFO] [stderr]    Compiling arg_enum_proc_macro v0.3.4
[INFO] [stderr]     Checking aligned-vec v0.6.4
[INFO] [stderr]     Checking v_frame v0.3.9
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]     Checking av1-grain v0.2.5
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking calloop v0.13.0
[INFO] [stderr]     Checking av-scenechange v0.14.1
[INFO] [stderr]    Compiling include_dir_macros v0.7.4
[INFO] [stderr]     Checking calloop-wayland-source v0.3.0
[INFO] [stderr]     Checking pollster v1.0.1
[INFO] [stderr]     Checking include_dir v0.7.4
[INFO] [stderr]     Checking wayland-protocols-wlr v0.3.12
[INFO] [stderr]     Checking wayland-protocols-plasma v0.3.12
[INFO] [stderr]     Checking smithay-client-toolkit v0.19.2
[INFO] [stderr]     Checking sctk-adwaita v0.10.1
[INFO] [stderr]     Checking half v2.7.1
[INFO] [stderr]     Checking ahash v0.8.12
[INFO] [stderr]     Checking tiff v0.11.3
[INFO] [stderr]     Checking exr v1.74.2
[INFO] [stderr]     Checking ravif v0.13.0
[INFO] [stderr]     Checking gpu-allocator v0.28.0
[INFO] [stderr]     Checking image v0.25.10
[INFO] [stderr]     Checking wgpu-naga-bridge v30.0.0
[INFO] [stderr]     Checking wgpu-core-deps-windows-linux-android v30.0.0
[INFO] [stderr]     Checking nubes_reboot v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]  --> src/app.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fs::File;
[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 imports: `BufRead` and `BufReader`
[INFO] [stdout]  --> src/app.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::{BufRead, BufReader};
[INFO] [stdout]   |               ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::constants`
[INFO] [stdout]  --> src/app.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::constants;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graphics::texture::texture_atlas::TextureAtlas`
[INFO] [stdout]  --> src/app.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::graphics::texture::texture_atlas::TextureAtlas;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::math::point2f::Point2f`
[INFO] [stdout]  --> src/app.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::math::point2f::Point2f;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::math::positive_f32::PositiveF32`
[INFO] [stdout]  --> src/app.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::math::positive_f32::PositiveF32;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]  --> src/app.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fs::File;
[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 imports: `BufRead` and `BufReader`
[INFO] [stdout]  --> src/app.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::{BufRead, BufReader};
[INFO] [stdout]   |               ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::constants`
[INFO] [stdout]  --> src/app.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::constants;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::graphics::texture::texture_atlas::TextureAtlas`
[INFO] [stdout]  --> src/app.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::graphics::texture::texture_atlas::TextureAtlas;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::math::point2f::Point2f`
[INFO] [stdout]  --> src/app.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::math::point2f::Point2f;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::math::positive_f32::PositiveF32`
[INFO] [stdout]  --> src/app.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::math::positive_f32::PositiveF32;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GenericImageView`
[INFO] [stdout]  --> src/util/image_utils.rs:2:30
[INFO] [stdout]   |
[INFO] [stdout] 2 | use image::{EncodableLayout, GenericImageView};
[INFO] [stdout]   |                              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GenericImageView`
[INFO] [stdout]  --> src/util/image_utils.rs:2:30
[INFO] [stdout]   |
[INFO] [stdout] 2 | use image::{EncodableLayout, GenericImageView};
[INFO] [stdout]   |                              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `app` is never read
[INFO] [stdout]   --> src/engine.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Engine<T: App> {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 17 |     app: T
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]   --> src/math/segment2f.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl Segment2f {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub fn len(&self) -> f32 {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `center`, `width`, and `height` are never used
[INFO] [stdout]   --> src/math/rect2f.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl Rect2f {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub fn center(&self) -> Point2f {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn width(&self) -> f32 {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn height(&self) -> f32 {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ATLAS_MIN_SIZE` is never used
[INFO] [stdout]   --> src/constants.rs:18:11
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub const ATLAS_MIN_SIZE: usize = 64;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NotRGBAImageError` is never constructed
[INFO] [stdout]  --> src/util/image_utils.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct NotRGBAImageError;
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `NotRGBAImageError` is never constructed
[INFO] [stdout]   --> src/util/image_utils.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub enum ReadImageError {
[INFO] [stdout]    |          -------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 20 |     NotRGBAImageError
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ReadImageError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_data`, `blank_image`, `set_pixel`, `copy_with_offset`, and `sub_image` are never used
[INFO] [stdout]    --> src/util/image_utils.rs:62:12
[INFO] [stdout]     |
[INFO] [stdout]  61 | impl ImageData {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout]  62 |     pub fn from_data(data: &[u8], width: u32, height: u32) -> Result<Self, NotRGBAImageError> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  68 |     pub fn blank_image(width: u32, height: u32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |     pub fn set_pixel(&mut self, row: u32, col: u32, pixel: image::Rgba<u8>) -> Result<(), PixelOutOfBoundError> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     pub fn copy_with_offset(&mut self, row_offset: u32, col_offset: u32, source: &Self) -> Result<(), PixelOutOfBoundError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |     pub fn sub_image(&self, row_offset: u32, col_offset: u32, width: u32, height: u32) -> Result<Self, PixelOutOfBoundError> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `process_inputs`, `update`, `one_sec_update`, and `render` are never used
[INFO] [stdout]   --> src/app.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub trait App {
[INFO] [stdout]    |           --- methods in this trait
[INFO] [stdout] 11 |     fn init() -> Self;
[INFO] [stdout] 12 |     fn process_inputs(&mut self);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 13 |     fn update(&mut self);
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 14 |     fn one_sec_update(&mut self);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 15 |     fn render(&mut self);
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Map` is never constructed
[INFO] [stdout]   --> src/app.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | struct Map {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Renderable` is never used
[INFO] [stdout]   --> src/graphics/renderer/render_primitive.rs:61:11
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub trait Renderable {
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `width` and `height` are never read
[INFO] [stdout]   --> src/graphics/texture/mod.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct Texture {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 11 |     id: TextureId,
[INFO] [stdout] 12 |     width: u32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 13 |     height: u32,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Texture` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_cell_in_texture`, `u`, and `v` are never used
[INFO] [stdout]   --> src/graphics/texture/uv_rect.rs:16:18
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl TexCoord {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub const fn from_cell_in_texture(cell: PixelCoord, tex_size: (u32, u32)) -> Self {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub const fn u(&self) -> f32 {
[INFO] [stdout]    |                  ^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub const fn v(&self) -> f32 {
[INFO] [stdout]    |                  ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_pixels_in_texture`, `du`, and `dv` are never used
[INFO] [stdout]   --> src/graphics/texture/uv_rect.rs:49:18
[INFO] [stdout]    |
[INFO] [stdout] 44 | impl UVOffset {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub const fn from_pixels_in_texture(pixel_offset: (u32, u32), tex_size: (u32, u32)) -> Self {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub const fn du(&self) -> f32 {
[INFO] [stdout]    |                  ^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub const fn dv(&self) -> f32 {
[INFO] [stdout]    |                  ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `from_corners`, `sub_texture_from_sizes`, and `sub_texture` are never used
[INFO] [stdout]   --> src/graphics/texture/uv_rect.rs:80:12
[INFO] [stdout]    |
[INFO] [stdout] 79 | impl UVRect {
[INFO] [stdout]    | ----------- associated functions in this implementation
[INFO] [stdout] 80 |     pub fn from_corners(bottom_left: TexCoord, top_right: TexCoord) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 88 |     pub fn sub_texture_from_sizes(bottom_left: PixelCoord, sub_tex_size: (u32, u32), tex_size: (u32, u32)) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95 |     pub fn sub_texture(bottom_left: PixelCoord, sub_tex_size: (u32, u32), tex: &Tex) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]   --> src/graphics/tex/mod.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub struct Tex {
[INFO] [stdout]    |            --- field in this struct
[INFO] [stdout] 46 |     id: TexId,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Tex` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `id` and `wgpu_texture` are never used
[INFO] [stdout]    --> src/graphics/tex/mod.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  54 | impl Tex {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn id(&self) -> TexId {
[INFO] [stdout]     |            ^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     pub fn wgpu_texture(&self) -> &wgpu::TextureView {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TexHandleData` is never constructed
[INFO] [stdout]  --> src/graphics/tex/texture_handle.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | struct TexHandleData {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TexHandle` is never constructed
[INFO] [stdout]   --> src/graphics/tex/texture_handle.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct TexHandle {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `update`, `id`, `snapshot`, and `invalidate` are never used
[INFO] [stdout]   --> src/graphics/tex/texture_handle.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl TexHandle {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 21 |     pub fn new(texture: Tex, uv_rect: UVRect) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn update(&self, texture: Tex, uv_rect: UVRect) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub fn id(&self) -> AutoGeneratedId<Self> {
[INFO] [stdout]    |            ^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn snapshot(&self) -> (AutoGeneratedId<Self>, Tex, UVRect, bool) {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub fn invalidate(&self) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TileCantFitInAtlasError` is never constructed
[INFO] [stdout]   --> src/graphics/tex/atlas/mod.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct TileCantFitInAtlasError;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TexAtl` is never constructed
[INFO] [stdout]   --> src/graphics/tex/atlas/mod.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct TexAtl {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/graphics/tex/atlas/mod.rs:34:8
[INFO] [stdout]     |
[INFO] [stdout]  33 | impl TexAtl {
[INFO] [stdout]     | ----------- associated items in this implementation
[INFO] [stdout]  34 |     fn new(device: &wgpu::Device, queue: &wgpu::Queue) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout]  54 |     pub fn add_tile(&mut self, tile: &ImageData) -> Result<TexHandle, TileCantFitInAtlasError> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  58 |     pub fn add_tiles(&mut self, tiles: &[&ImageData]) -> Result<Vec<TexHandle>, TileCantFitInAtlasError> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  89 |     fn remove_tile(&mut self, tex_handle: TexHandle) {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  96 |     fn remove_tiles(&mut self, tex_handles: &[TexHandle]) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     fn pack(&mut self) -> Result<(), TileCantFitInAtlasError> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 |     fn contained_tiles(&self) -> Vec<ImageData> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     fn tile_ordering(tile_a: &ImageData, tile_b: &ImageData) -> std::cmp::Ordering {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 155 |     fn place_tiles(tiles: &[&ImageData], empty_spaces: &Vec<EmptySpace>)
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TileCantFitInEmptySpaceError` is never constructed
[INFO] [stdout]  --> src/graphics/tex/atlas/structures.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct TileCantFitInEmptySpaceError;
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PixelCoord` is never constructed
[INFO] [stdout]   --> src/graphics/tex/atlas/structures.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct PixelCoord {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `offset`, `row`, and `col` are never used
[INFO] [stdout]   --> src/graphics/tex/atlas/structures.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl PixelCoord {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 23 |     pub fn new(row: u32, col: u32) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub fn offset(&self, row_offset: u32, col_offset: u32) -> Self {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub const fn row(&self) -> u32 {
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub const fn col(&self) -> u32 {
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EmptySpace` is never constructed
[INFO] [stdout]   --> src/graphics/tex/atlas/structures.rs:41:12
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub struct EmptySpace {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `starting_space`, `can_image_fit`, `split_space`, and `corner` are never used
[INFO] [stdout]   --> src/graphics/tex/atlas/structures.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 47 | impl EmptySpace {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 48 |     pub fn starting_space(width: u32, height: u32) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn can_image_fit(&self, width: u32, height: u32) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub fn split_space(&self, width: u32, height: u32) -> Vec<Self> {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub fn corner(&self) -> PixelCoord {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TileEntry` is never constructed
[INFO] [stdout]   --> src/graphics/tex/atlas/structures.rs:87:12
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub struct TileEntry {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `new_from_placement`, `location`, `width`, `height`, and `handle` are never used
[INFO] [stdout]    --> src/graphics/tex/atlas/structures.rs:95:12
[INFO] [stdout]     |
[INFO] [stdout]  94 | impl TileEntry {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout]  95 |     pub fn new(location: PixelCoord, width: u32, height: u32, texture_handle: TexHandle) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  99 |     pub fn new_from_placement(location: PixelCoord, width: u32, height: u32, tex: Tex) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn location(&self) -> PixelCoord {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |     pub fn width(&self) -> u32 {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 118 |     pub fn height(&self) -> u32 {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     pub fn handle(&self) -> TexHandle {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `app` is never read
[INFO] [stdout]   --> src/engine.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Engine<T: App> {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 17 |     app: T
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]   --> src/math/segment2f.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl Segment2f {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub fn len(&self) -> f32 {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `center`, `width`, and `height` are never used
[INFO] [stdout]   --> src/math/rect2f.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl Rect2f {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub fn center(&self) -> Point2f {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn width(&self) -> f32 {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn height(&self) -> f32 {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ATLAS_MIN_SIZE` is never used
[INFO] [stdout]   --> src/constants.rs:18:11
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub const ATLAS_MIN_SIZE: usize = 64;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NotRGBAImageError` is never constructed
[INFO] [stdout]  --> src/util/image_utils.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct NotRGBAImageError;
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `NotRGBAImageError` is never constructed
[INFO] [stdout]   --> src/util/image_utils.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub enum ReadImageError {
[INFO] [stdout]    |          -------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 20 |     NotRGBAImageError
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ReadImageError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_data`, `blank_image`, `set_pixel`, `copy_with_offset`, and `sub_image` are never used
[INFO] [stdout]    --> src/util/image_utils.rs:62:12
[INFO] [stdout]     |
[INFO] [stdout]  61 | impl ImageData {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout]  62 |     pub fn from_data(data: &[u8], width: u32, height: u32) -> Result<Self, NotRGBAImageError> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  68 |     pub fn blank_image(width: u32, height: u32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |     pub fn set_pixel(&mut self, row: u32, col: u32, pixel: image::Rgba<u8>) -> Result<(), PixelOutOfBoundError> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     pub fn copy_with_offset(&mut self, row_offset: u32, col_offset: u32, source: &Self) -> Result<(), PixelOutOfBoundError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |     pub fn sub_image(&self, row_offset: u32, col_offset: u32, width: u32, height: u32) -> Result<Self, PixelOutOfBoundError> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `process_inputs`, `update`, `one_sec_update`, and `render` are never used
[INFO] [stdout]   --> src/app.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub trait App {
[INFO] [stdout]    |           --- methods in this trait
[INFO] [stdout] 11 |     fn init() -> Self;
[INFO] [stdout] 12 |     fn process_inputs(&mut self);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 13 |     fn update(&mut self);
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 14 |     fn one_sec_update(&mut self);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 15 |     fn render(&mut self);
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Map` is never constructed
[INFO] [stdout]   --> src/app.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | struct Map {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Renderable` is never used
[INFO] [stdout]   --> src/graphics/renderer/render_primitive.rs:61:11
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub trait Renderable {
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `width` and `height` are never read
[INFO] [stdout]   --> src/graphics/texture/mod.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct Texture {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 11 |     id: TextureId,
[INFO] [stdout] 12 |     width: u32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 13 |     height: u32,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Texture` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_cell_in_texture`, `u`, and `v` are never used
[INFO] [stdout]   --> src/graphics/texture/uv_rect.rs:16:18
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl TexCoord {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub const fn from_cell_in_texture(cell: PixelCoord, tex_size: (u32, u32)) -> Self {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub const fn u(&self) -> f32 {
[INFO] [stdout]    |                  ^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub const fn v(&self) -> f32 {
[INFO] [stdout]    |                  ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_pixels_in_texture`, `du`, and `dv` are never used
[INFO] [stdout]   --> src/graphics/texture/uv_rect.rs:49:18
[INFO] [stdout]    |
[INFO] [stdout] 44 | impl UVOffset {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub const fn from_pixels_in_texture(pixel_offset: (u32, u32), tex_size: (u32, u32)) -> Self {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub const fn du(&self) -> f32 {
[INFO] [stdout]    |                  ^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub const fn dv(&self) -> f32 {
[INFO] [stdout]    |                  ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `from_corners`, `sub_texture_from_sizes`, and `sub_texture` are never used
[INFO] [stdout]   --> src/graphics/texture/uv_rect.rs:80:12
[INFO] [stdout]    |
[INFO] [stdout] 79 | impl UVRect {
[INFO] [stdout]    | ----------- associated functions in this implementation
[INFO] [stdout] 80 |     pub fn from_corners(bottom_left: TexCoord, top_right: TexCoord) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 88 |     pub fn sub_texture_from_sizes(bottom_left: PixelCoord, sub_tex_size: (u32, u32), tex_size: (u32, u32)) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95 |     pub fn sub_texture(bottom_left: PixelCoord, sub_tex_size: (u32, u32), tex: &Tex) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]   --> src/graphics/tex/mod.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub struct Tex {
[INFO] [stdout]    |            --- field in this struct
[INFO] [stdout] 46 |     id: TexId,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Tex` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `id` and `wgpu_texture` are never used
[INFO] [stdout]    --> src/graphics/tex/mod.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  54 | impl Tex {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn id(&self) -> TexId {
[INFO] [stdout]     |            ^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     pub fn wgpu_texture(&self) -> &wgpu::TextureView {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TexHandleData` is never constructed
[INFO] [stdout]  --> src/graphics/tex/texture_handle.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | struct TexHandleData {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TexHandle` is never constructed
[INFO] [stdout]   --> src/graphics/tex/texture_handle.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct TexHandle {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `update`, `id`, `snapshot`, and `invalidate` are never used
[INFO] [stdout]   --> src/graphics/tex/texture_handle.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl TexHandle {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 21 |     pub fn new(texture: Tex, uv_rect: UVRect) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn update(&self, texture: Tex, uv_rect: UVRect) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub fn id(&self) -> AutoGeneratedId<Self> {
[INFO] [stdout]    |            ^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn snapshot(&self) -> (AutoGeneratedId<Self>, Tex, UVRect, bool) {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub fn invalidate(&self) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TileCantFitInAtlasError` is never constructed
[INFO] [stdout]   --> src/graphics/tex/atlas/mod.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct TileCantFitInAtlasError;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TexAtl` is never constructed
[INFO] [stdout]   --> src/graphics/tex/atlas/mod.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct TexAtl {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/graphics/tex/atlas/mod.rs:34:8
[INFO] [stdout]     |
[INFO] [stdout]  33 | impl TexAtl {
[INFO] [stdout]     | ----------- associated items in this implementation
[INFO] [stdout]  34 |     fn new(device: &wgpu::Device, queue: &wgpu::Queue) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout]  54 |     pub fn add_tile(&mut self, tile: &ImageData) -> Result<TexHandle, TileCantFitInAtlasError> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  58 |     pub fn add_tiles(&mut self, tiles: &[&ImageData]) -> Result<Vec<TexHandle>, TileCantFitInAtlasError> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  89 |     fn remove_tile(&mut self, tex_handle: TexHandle) {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  96 |     fn remove_tiles(&mut self, tex_handles: &[TexHandle]) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     fn pack(&mut self) -> Result<(), TileCantFitInAtlasError> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 |     fn contained_tiles(&self) -> Vec<ImageData> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     fn tile_ordering(tile_a: &ImageData, tile_b: &ImageData) -> std::cmp::Ordering {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 155 |     fn place_tiles(tiles: &[&ImageData], empty_spaces: &Vec<EmptySpace>)
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TileCantFitInEmptySpaceError` is never constructed
[INFO] [stdout]  --> src/graphics/tex/atlas/structures.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct TileCantFitInEmptySpaceError;
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PixelCoord` is never constructed
[INFO] [stdout]   --> src/graphics/tex/atlas/structures.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct PixelCoord {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `offset`, `row`, and `col` are never used
[INFO] [stdout]   --> src/graphics/tex/atlas/structures.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl PixelCoord {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 23 |     pub fn new(row: u32, col: u32) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub fn offset(&self, row_offset: u32, col_offset: u32) -> Self {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub const fn row(&self) -> u32 {
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub const fn col(&self) -> u32 {
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EmptySpace` is never constructed
[INFO] [stdout]   --> src/graphics/tex/atlas/structures.rs:41:12
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub struct EmptySpace {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `starting_space`, `can_image_fit`, `split_space`, and `corner` are never used
[INFO] [stdout]   --> src/graphics/tex/atlas/structures.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 47 | impl EmptySpace {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 48 |     pub fn starting_space(width: u32, height: u32) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn can_image_fit(&self, width: u32, height: u32) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub fn split_space(&self, width: u32, height: u32) -> Vec<Self> {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub fn corner(&self) -> PixelCoord {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TileEntry` is never constructed
[INFO] [stdout]   --> src/graphics/tex/atlas/structures.rs:87:12
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub struct TileEntry {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `new_from_placement`, `location`, `width`, `height`, and `handle` are never used
[INFO] [stdout]    --> src/graphics/tex/atlas/structures.rs:95:12
[INFO] [stdout]     |
[INFO] [stdout]  94 | impl TileEntry {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout]  95 |     pub fn new(location: PixelCoord, width: u32, height: u32, texture_handle: TexHandle) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  99 |     pub fn new_from_placement(location: PixelCoord, width: u32, height: u32, tex: Tex) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn location(&self) -> PixelCoord {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |     pub fn width(&self) -> u32 {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 118 |     pub fn height(&self) -> u32 {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     pub fn handle(&self) -> TexHandle {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 51s
[INFO] running `Command { std: "docker" "inspect" "fc31f7ecf9a966a299ea2a90eff7b87f68b5147efd72e7bc1a06e9b753864e20", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fc31f7ecf9a966a299ea2a90eff7b87f68b5147efd72e7bc1a06e9b753864e20", kill_on_drop: false }`
[INFO] [stdout] fc31f7ecf9a966a299ea2a90eff7b87f68b5147efd72e7bc1a06e9b753864e20
