[INFO] cloning repository https://github.com/bklimt/meez3d
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/bklimt/meez3d" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbklimt%2Fmeez3d", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbklimt%2Fmeez3d'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 84821d46388cde795b8a867bd809130d80303748
[INFO] checking bklimt/meez3d against try#f77b5bc6c7c84df104f86b0dd01d9490e3923fa8 for pr-147834
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbklimt%2Fmeez3d" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/bklimt/meez3d
[INFO] finished tweaking git repo https://github.com/bklimt/meez3d
[INFO] tweaked toml for git repo https://github.com/bklimt/meez3d written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/bklimt/meez3d on toolchain f77b5bc6c7c84df104f86b0dd01d9490e3923fa8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f77b5bc6c7c84df104f86b0dd01d9490e3923fa8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/bklimt/meez3d 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" "+f77b5bc6c7c84df104f86b0dd01d9490e3923fa8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+f77b5bc6c7c84df104f86b0dd01d9490e3923fa8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 51696215546cd982ff59d22af44a1c6713f545b6ac13dfd3bd7a700a55b28efe
[INFO] running `Command { std: "docker" "start" "-a" "51696215546cd982ff59d22af44a1c6713f545b6ac13dfd3bd7a700a55b28efe", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "51696215546cd982ff59d22af44a1c6713f545b6ac13dfd3bd7a700a55b28efe", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "51696215546cd982ff59d22af44a1c6713f545b6ac13dfd3bd7a700a55b28efe", kill_on_drop: false }`
[INFO] [stdout] 51696215546cd982ff59d22af44a1c6713f545b6ac13dfd3bd7a700a55b28efe
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+f77b5bc6c7c84df104f86b0dd01d9490e3923fa8" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c6a979bb526ac1b6c6628f406f83518e959740354482612b67e78e0bf542cdd6
[INFO] running `Command { std: "docker" "start" "-a" "c6a979bb526ac1b6c6628f406f83518e959740354482612b67e78e0bf542cdd6", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.172
[INFO] [stderr]     Checking bitflags v2.9.0
[INFO] [stderr]     Checking libloading v0.8.6
[INFO] [stderr]     Checking smallvec v1.15.0
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]     Checking linux-raw-sys v0.4.15
[INFO] [stderr]    Compiling cc v1.2.19
[INFO] [stderr]    Compiling syn v2.0.100
[INFO] [stderr]    Compiling wayland-sys v0.31.6
[INFO] [stderr]    Compiling cfg_aliases v0.1.1
[INFO] [stderr]     Checking dlib v0.5.2
[INFO] [stderr]    Compiling quick-xml v0.37.4
[INFO] [stderr]    Compiling wayland-client v0.31.8
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]     Checking tracing-core v0.1.33
[INFO] [stderr]     Checking zerocopy v0.7.35
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]     Checking arrayvec v0.7.6
[INFO] [stderr]    Compiling wayland-scanner v0.31.6
[INFO] [stderr]    Compiling zerocopy v0.8.24
[INFO] [stderr]     Checking bit-vec v0.6.3
[INFO] [stderr]     Checking raw-window-handle v0.6.2
[INFO] [stderr]    Compiling khronos-egl v6.0.0
[INFO] [stderr]    Compiling cfg_aliases v0.2.1
[INFO] [stderr]     Checking allocator-api2 v0.2.21
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.100
[INFO] [stderr]     Checking simd-adler32 v0.3.7
[INFO] [stderr]    Compiling wayland-backend v0.3.8
[INFO] [stderr]    Compiling version-compare v0.1.1
[INFO] [stderr]    Compiling ash v0.37.3+1.3.251
[INFO] [stderr]     Checking indexmap v2.9.0
[INFO] [stderr]    Compiling sdl2-sys v0.37.0
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]     Checking bit-set v0.5.3
[INFO] [stderr]     Checking codespan-reporting v0.11.1
[INFO] [stderr]     Checking getrandom v0.2.15
[INFO] [stderr]     Checking parking_lot_core v0.9.10
[INFO] [stderr]    Compiling wgpu-hal v0.19.5
[INFO] [stderr]     Checking gpu-alloc-types v0.3.0
[INFO] [stderr]     Checking spirv v0.3.0+sdk-1.3.268.0
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking gpu-descriptor-types v0.1.2
[INFO] [stderr]    Compiling libudev-sys v0.1.4
[INFO] [stderr]     Checking libloading v0.7.4
[INFO] [stderr]    Compiling smithay-client-toolkit v0.18.1
[INFO] [stderr]     Checking ttf-parser v0.25.1
[INFO] [stderr]     Checking cursor-icon v1.1.0
[INFO] [stderr]     Checking hexf-parse v0.2.1
[INFO] [stderr]     Checking arrayref v0.3.9
[INFO] [stderr]     Checking strict-num v0.1.1
[INFO] [stderr]     Checking adler2 v2.0.0
[INFO] [stderr]     Checking xkeysym v0.2.1
[INFO] [stderr]     Checking unicode-xid v0.2.6
[INFO] [stderr]     Checking xcursor v0.3.8
[INFO] [stderr]    Compiling rustix v1.0.5
[INFO] [stderr]     Checking rustc-hash v1.1.0
[INFO] [stderr]     Checking gpu-descriptor v0.2.4
[INFO] [stderr]     Checking miniz_oxide v0.8.8
[INFO] [stderr]     Checking gpu-alloc v0.6.0
[INFO] [stderr]     Checking parking_lot v0.12.3
[INFO] [stderr]     Checking memmap2 v0.9.5
[INFO] [stderr]     Checking inotify-sys v0.1.5
[INFO] [stderr]    Compiling wgpu-core v0.19.4
[INFO] [stderr]     Checking wgpu-types v0.19.2
[INFO] [stderr]    Compiling x11-dl v2.21.0
[INFO] [stderr]     Checking renderdoc-sys v1.1.0
[INFO] [stderr]     Checking profiling v1.0.16
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling log v0.4.27
[INFO] [stderr]     Checking glow v0.13.1
[INFO] [stderr]    Compiling bumpalo v3.17.0
[INFO] [stderr]     Checking ab_glyph_rasterizer v0.1.8
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.100
[INFO] [stderr]     Checking owned_ttf_parser v0.25.0
[INFO] [stderr]     Checking ab_glyph v0.2.29
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking flate2 v1.1.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling bytemuck_derive v1.9.3
[INFO] [stderr]     Checking polling v3.7.4
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]     Checking inotify v0.10.2
[INFO] [stderr]     Checking wayland-csd-frame v0.3.0
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking fdeflate v0.3.7
[INFO] [stderr]    Compiling winit v0.29.15
[INFO] [stderr]    Compiling wgpu v0.19.4
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking bytemuck v1.22.0
[INFO] [stderr]     Checking calloop v0.12.4
[INFO] [stderr]     Checking naga v0.19.2
[INFO] [stderr]     Checking uuid v1.16.0
[INFO] [stderr]     Checking tiny-skia-path v0.11.4
[INFO] [stderr]    Compiling gilrs v0.10.10
[INFO] [stderr]     Checking x11rb-protocol v0.13.1
[INFO] [stderr]     Checking as-raw-xcb-connection v1.0.1
[INFO] [stderr]     Checking vec_map v0.8.2
[INFO] [stderr]    Compiling rustversion v1.0.20
[INFO] [stderr]    Compiling cgmath v0.18.0
[INFO] [stderr]     Checking tiny-skia v0.11.4
[INFO] [stderr]    Compiling sdl2 v0.37.0
[INFO] [stderr]     Checking gilrs-core v0.5.15
[INFO] [stderr]     Checking wayland-protocols v0.31.2
[INFO] [stderr]     Checking calloop-wayland-source v0.2.0
[INFO] [stderr]     Checking wayland-cursor v0.31.8
[INFO] [stderr]     Checking xattr v1.5.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking png v0.17.16
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.100
[INFO] [stderr]     Checking xkbcommon-dl v0.4.2
[INFO] [stderr]     Checking filetime v0.2.25
[INFO] [stderr]     Checking approx v0.4.0
[INFO] [stderr]     Checking jpeg-decoder v0.3.1
[INFO] [stderr]    Compiling wasm-bindgen v0.2.100
[INFO] [stderr]     Checking static_assertions v1.1.0
[INFO] [stderr]     Checking smol_str v0.2.2
[INFO] [stderr]     Checking color_quant v1.1.0
[INFO] [stderr]     Checking image v0.24.9
[INFO] [stderr]     Checking wayland-protocols-wlr v0.2.0
[INFO] [stderr]     Checking wayland-protocols-plasma v0.2.0
[INFO] [stderr]     Checking tar v0.4.44
[INFO] [stderr]     Checking quick-xml v0.31.0
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.100
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking anstyle-parse v0.2.6
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]     Checking anstyle v1.0.10
[INFO] [stderr]     Checking anstyle-query v1.1.2
[INFO] [stderr]     Checking colorchoice v1.0.3
[INFO] [stderr]     Checking regex-syntax v0.8.5
[INFO] [stderr]     Checking clap_lex v0.7.4
[INFO] [stderr]    Compiling clap_derive v4.5.32
[INFO] [stderr]     Checking anstream v0.6.18
[INFO] [stderr]     Checking clap_builder v4.5.37
[INFO] [stderr]     Checking js-sys v0.3.77
[INFO] [stderr]     Checking sctk-adwaita v0.8.3
[INFO] [stderr]     Checking is-terminal v0.4.16
[INFO] [stderr]     Checking humantime v2.2.0
[INFO] [stderr]     Checking pollster v0.3.0
[INFO] [stderr]     Checking console_error_panic_hook v0.1.7
[INFO] [stderr]     Checking regex-automata v0.4.9
[INFO] [stderr]     Checking clap v4.5.37
[INFO] [stderr]     Checking regex v1.11.1
[INFO] [stderr]     Checking env_logger v0.10.2
[INFO] [stderr]     Checking web-sys v0.3.77
[INFO] [stderr]     Checking wasm-bindgen-futures v0.4.50
[INFO] [stderr]     Checking x11rb v0.13.1
[INFO] [stderr]     Checking console_log v1.0.0
[INFO] [stderr]     Checking meez3d v0.1.0 (/opt/rustwide/workdir/meez3d)
[INFO] [stdout] warning: unused import: `FRAME_RATE`
[INFO] [stdout]   --> meez3d/src/level.rs:12:19
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::{Font, FRAME_RATE};
[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: `std::path::PathBuf`
[INFO] [stdout]  --> meez3d/src/scene.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::path::PathBuf;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `path::Path`
[INFO] [stdout]  --> meez3d/src/stagemanager.rs:1:16
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{mem, path::Path};
[INFO] [stdout]   |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::Ordering`
[INFO] [stdout]  --> meez3d/src/tilemap.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::cmp::Ordering;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TileProperties`
[INFO] [stdout]   --> meez3d/src/tilemap.rs:13:38
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::tileset::{LocalTileIndex, TileProperties, TileSet};
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_traits::Zero`
[INFO] [stdout]   --> meez3d/src/tilemap.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use num_traits::Zero;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> meez3d/src/tilemap.rs:632:33
[INFO] [stdout]     |
[INFO] [stdout] 632 |                     source.w -= (pos_right - dest.right());
[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] 632 -                     source.w -= (pos_right - dest.right());
[INFO] [stdout] 632 +                     source.w -= pos_right - dest.right() ;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> meez3d/src/tilemap.rs:639:33
[INFO] [stdout]     |
[INFO] [stdout] 639 |                     source.h -= (pos_bottom - dest.bottom());
[INFO] [stdout]     |                                 ^                          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 639 -                     source.h -= (pos_bottom - dest.bottom());
[INFO] [stdout] 639 +                     source.h -= pos_bottom - dest.bottom() ;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bail`
[INFO] [stdout]  --> meez3d/src/utils.rs:4:22
[INFO] [stdout]   |
[INFO] [stdout] 4 | use anyhow::{anyhow, bail, Error, Result};
[INFO] [stdout]   |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::geometry::Rect`
[INFO] [stdout]  --> meez3d/src/utils.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::geometry::Rect;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FRAME_RATE`
[INFO] [stdout]   --> meez3d/src/level.rs:12:19
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::{Font, FRAME_RATE};
[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: `std::path::PathBuf`
[INFO] [stdout]  --> meez3d/src/scene.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::path::PathBuf;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `path::Path`
[INFO] [stdout]  --> meez3d/src/stagemanager.rs:1:16
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{mem, path::Path};
[INFO] [stdout]   |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::Ordering`
[INFO] [stdout]  --> meez3d/src/tilemap.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::cmp::Ordering;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TileProperties`
[INFO] [stdout]   --> meez3d/src/tilemap.rs:13:38
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::tileset::{LocalTileIndex, TileProperties, TileSet};
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_traits::Zero`
[INFO] [stdout]   --> meez3d/src/tilemap.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use num_traits::Zero;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> meez3d/src/tilemap.rs:632:33
[INFO] [stdout]     |
[INFO] [stdout] 632 |                     source.w -= (pos_right - dest.right());
[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] 632 -                     source.w -= (pos_right - dest.right());
[INFO] [stdout] 632 +                     source.w -= pos_right - dest.right() ;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> meez3d/src/tilemap.rs:639:33
[INFO] [stdout]     |
[INFO] [stdout] 639 |                     source.h -= (pos_bottom - dest.bottom());
[INFO] [stdout]     |                                 ^                          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 639 -                     source.h -= (pos_bottom - dest.bottom());
[INFO] [stdout] 639 +                     source.h -= pos_bottom - dest.bottom() ;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bail`
[INFO] [stdout]  --> meez3d/src/utils.rs:4:22
[INFO] [stdout]   |
[INFO] [stdout] 4 | use anyhow::{anyhow, bail, Error, Result};
[INFO] [stdout]   |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::geometry::Rect`
[INFO] [stdout]  --> meez3d/src/utils.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::geometry::Rect;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]    --> meez3d/src/level.rs:325:9
[INFO] [stdout]     |
[INFO] [stdout] 325 |         context: &RenderContext,
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sounds`
[INFO] [stdout]    --> meez3d/src/level.rs:327:9
[INFO] [stdout]     |
[INFO] [stdout] 327 |         sounds: &mut SoundManager,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_sounds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `font`
[INFO] [stdout]    --> meez3d/src/level.rs:378:49
[INFO] [stdout]     |
[INFO] [stdout] 378 |     fn draw(&self, context: &mut RenderContext, font: &Font, previous: Option<&dyn Scene>) {
[INFO] [stdout]     |                                                 ^^^^ help: if this is intentional, prefix it with an underscore: `_font`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `previous`
[INFO] [stdout]    --> meez3d/src/level.rs:378:62
[INFO] [stdout]     |
[INFO] [stdout] 378 |     fn draw(&self, context: &mut RenderContext, font: &Font, previous: Option<&dyn Scene>) {
[INFO] [stdout]     |                                                              ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_previous`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]    --> meez3d/src/level.rs:325:9
[INFO] [stdout]     |
[INFO] [stdout] 325 |         context: &RenderContext,
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sounds`
[INFO] [stdout]    --> meez3d/src/level.rs:327:9
[INFO] [stdout]     |
[INFO] [stdout] 327 |         sounds: &mut SoundManager,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_sounds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `delta`
[INFO] [stdout]    --> meez3d/src/menu.rs:110:31
[INFO] [stdout]     |
[INFO] [stdout] 110 |     fn next_button(&mut self, delta: i32, direction: ButtonOrderDirection) {
[INFO] [stdout]     |                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_delta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `direction`
[INFO] [stdout]    --> meez3d/src/menu.rs:110:43
[INFO] [stdout]     |
[INFO] [stdout] 110 |     fn next_button(&mut self, delta: i32, direction: ButtonOrderDirection) {
[INFO] [stdout]     |                                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_direction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `font`
[INFO] [stdout]    --> meez3d/src/level.rs:378:49
[INFO] [stdout]     |
[INFO] [stdout] 378 |     fn draw(&self, context: &mut RenderContext, font: &Font, previous: Option<&dyn Scene>) {
[INFO] [stdout]     |                                                 ^^^^ help: if this is intentional, prefix it with an underscore: `_font`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `previous`
[INFO] [stdout]    --> meez3d/src/level.rs:378:62
[INFO] [stdout]     |
[INFO] [stdout] 378 |     fn draw(&self, context: &mut RenderContext, font: &Font, previous: Option<&dyn Scene>) {
[INFO] [stdout]     |                                                              ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_previous`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `delta`
[INFO] [stdout]    --> meez3d/src/menu.rs:110:31
[INFO] [stdout]     |
[INFO] [stdout] 110 |     fn next_button(&mut self, delta: i32, direction: ButtonOrderDirection) {
[INFO] [stdout]     |                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_delta`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `direction`
[INFO] [stdout]    --> meez3d/src/menu.rs:110:43
[INFO] [stdout]     |
[INFO] [stdout] 110 |     fn next_button(&mut self, delta: i32, direction: ButtonOrderDirection) {
[INFO] [stdout]     |                                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_direction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `font`
[INFO] [stdout]   --> meez3d/src/uibutton.rs:95:73
[INFO] [stdout]    |
[INFO] [stdout] 95 |     pub fn draw(&self, context: &mut RenderContext, layer: RenderLayer, font: &Font) {
[INFO] [stdout]    |                                                                         ^^^^ help: if this is intentional, prefix it with an underscore: `_font`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `font`
[INFO] [stdout]   --> meez3d/src/uibutton.rs:95:73
[INFO] [stdout]    |
[INFO] [stdout] 95 |     pub fn draw(&self, context: &mut RenderContext, layer: RenderLayer, font: &Font) {
[INFO] [stdout]    |                                                                         ^^^^ help: if this is intentional, prefix it with an underscore: `_font`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> meez3d/src/properties.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |     Int(i32),
[INFO] [stdout]    |     --- ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PropertyValue` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 27 -     Int(i32),
[INFO] [stdout] 27 +     Int(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_defaults` and `get_int` are never used
[INFO] [stdout]   --> meez3d/src/properties.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl PropertyMap {
[INFO] [stdout]    | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn set_defaults(&mut self, other: &PropertyMap) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub fn get_int(&self, k: &str) -> Result<Option<i32>> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PushPause` is never constructed
[INFO] [stdout]   --> meez3d/src/scene.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub enum SceneResult {
[INFO] [stdout]    |          ----------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 16 |     PushPause,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SmallIntSet` is never constructed
[INFO] [stdout]  --> meez3d/src/smallintset.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct SmallIntSet<T> {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `insert`, `contains`, `clear`, and `iter` are never used
[INFO] [stdout]   --> meez3d/src/smallintset.rs:9:12
[INFO] [stdout]    |
[INFO] [stdout]  5 | / impl<T> SmallIntSet<T>
[INFO] [stdout]  6 | | where
[INFO] [stdout]  7 | |     T: PartialEq,
[INFO] [stdout]    | |_________________- associated items in this implementation
[INFO] [stdout]  8 |   {
[INFO] [stdout]  9 |       pub fn new() -> Self {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 13 |       pub fn insert(&mut self, item: T) {
[INFO] [stdout]    |              ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |       pub fn contains(&self, item: T) -> bool {
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |       pub fn clear(&mut self) {
[INFO] [stdout]    |              ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |       pub fn iter(&self) -> std::slice::Iter<'_, T> {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `NextFrame` is never used
[INFO] [stdout]    --> meez3d/src/sprite.rs:114:6
[INFO] [stdout]     |
[INFO] [stdout] 114 | enum NextFrame {
[INFO] [stdout]     |      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `next` is never used
[INFO] [stdout]    --> meez3d/src/sprite.rs:120:8
[INFO] [stdout]     |
[INFO] [stdout] 119 | impl NextFrame {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] 120 |     fn next(&self, frame: u32) -> u32 {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AnimationStateMachineRule` is never constructed
[INFO] [stdout]    --> meez3d/src/sprite.rs:128:8
[INFO] [stdout]     |
[INFO] [stdout] 128 | struct AnimationStateMachineRule {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `matches`, and `apply` are never used
[INFO] [stdout]    --> meez3d/src/sprite.rs:135:8
[INFO] [stdout]     |
[INFO] [stdout] 134 | impl AnimationStateMachineRule {
[INFO] [stdout]     | ------------------------------ associated items in this implementation
[INFO] [stdout] 135 |     fn new(text: &str, acceptable_states: &HashSet<String>) -> Result<AnimationStateMachineRule> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 202 |     fn matches(&self, current_frame: u32, current_state: &str) -> bool {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     fn apply(&self, current_frame: u32) -> u32 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AnimationStateMachine` is never constructed
[INFO] [stdout]    --> meez3d/src/sprite.rs:221:12
[INFO] [stdout]     |
[INFO] [stdout] 221 | pub struct AnimationStateMachine {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_file`, `new`, and `next_frame` are never used
[INFO] [stdout]    --> meez3d/src/sprite.rs:226:12
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl AnimationStateMachine {
[INFO] [stdout]     | -------------------------- associated items in this implementation
[INFO] [stdout] 226 |     pub fn from_file(path: &Path, files: &FileManager) -> Result<AnimationStateMachine> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 237 |     pub fn new(text: &str) -> Result<AnimationStateMachine> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 264 |     pub fn next_frame(&self, current_frame: u32, current_state: &str) -> Result<u32> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TileSetSourceXml` is never constructed
[INFO] [stdout]   --> meez3d/src/tilemap.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | struct TileSetSourceXml {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DataXml` is never constructed
[INFO] [stdout]   --> meez3d/src/tilemap.rs:31:8
[INFO] [stdout]    |
[INFO] [stdout] 31 | struct DataXml {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LayerXml` is never constructed
[INFO] [stdout]   --> meez3d/src/tilemap.rs:40:8
[INFO] [stdout]    |
[INFO] [stdout] 40 | struct LayerXml {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ImageXml` is never constructed
[INFO] [stdout]   --> meez3d/src/tilemap.rs:56:8
[INFO] [stdout]    |
[INFO] [stdout] 56 | struct ImageXml {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ImageLayerXml` is never constructed
[INFO] [stdout]   --> meez3d/src/tilemap.rs:62:8
[INFO] [stdout]    |
[INFO] [stdout] 62 | struct ImageLayerXml {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ObjectXml` is never constructed
[INFO] [stdout]   --> meez3d/src/tilemap.rs:74:8
[INFO] [stdout]    |
[INFO] [stdout] 74 | struct ObjectXml {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ObjectGroupXml` is never constructed
[INFO] [stdout]   --> meez3d/src/tilemap.rs:92:8
[INFO] [stdout]    |
[INFO] [stdout] 92 | struct ObjectGroupXml {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `TileMapXmlField` is never used
[INFO] [stdout]   --> meez3d/src/tilemap.rs:99:6
[INFO] [stdout]    |
[INFO] [stdout] 99 | enum TileMapXmlField {
[INFO] [stdout]    |      ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_backgroundcolor` is never used
[INFO] [stdout]    --> meez3d/src/tilemap.rs:106:4
[INFO] [stdout]     |
[INFO] [stdout] 106 | fn default_backgroundcolor() -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TileMapXml` is never constructed
[INFO] [stdout]    --> meez3d/src/tilemap.rs:111:8
[INFO] [stdout]     |
[INFO] [stdout] 111 | struct TileMapXml {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ImageLayer` is never constructed
[INFO] [stdout]    --> meez3d/src/tilemap.rs:152:8
[INFO] [stdout]     |
[INFO] [stdout] 152 | struct ImageLayer {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_xml` is never used
[INFO] [stdout]    --> meez3d/src/tilemap.rs:157:8
[INFO] [stdout]     |
[INFO] [stdout] 156 | impl ImageLayer {
[INFO] [stdout]     | --------------- associated function in this implementation
[INFO] [stdout] 157 |     fn from_xml(
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TileLayer` is never constructed
[INFO] [stdout]    --> meez3d/src/tilemap.rs:171:8
[INFO] [stdout]     |
[INFO] [stdout] 171 | struct TileLayer {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_xml`, `get`, and `get_mut` are never used
[INFO] [stdout]    --> meez3d/src/tilemap.rs:181:8
[INFO] [stdout]     |
[INFO] [stdout] 180 | impl TileLayer {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 181 |     fn from_xml(xml: LayerXml) -> Result<TileLayer> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 223 |     fn get(&self, row: usize, col: usize) -> Option<&TileIndex> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 227 |     fn get_mut(&mut self, row: usize, col: usize) -> Option<&mut TileIndex> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Layer` is never used
[INFO] [stdout]    --> meez3d/src/tilemap.rs:249:6
[INFO] [stdout]     |
[INFO] [stdout] 249 | enum Layer {
[INFO] [stdout]     |      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Overflow` is never used
[INFO] [stdout]    --> meez3d/src/tilemap.rs:255:10
[INFO] [stdout]     |
[INFO] [stdout] 255 | pub enum Overflow {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ConveyorDirection` is never used
[INFO] [stdout]    --> meez3d/src/tilemap.rs:274:10
[INFO] [stdout]     |
[INFO] [stdout] 274 | pub enum ConveyorDirection {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ButtonType` is never used
[INFO] [stdout]    --> meez3d/src/tilemap.rs:291:10
[INFO] [stdout]     |
[INFO] [stdout] 291 | pub enum ButtonType {
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MapObjectProperties` is never constructed
[INFO] [stdout]    --> meez3d/src/tilemap.rs:312:12
[INFO] [stdout]     |
[INFO] [stdout] 312 | pub struct MapObjectProperties {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MapObject` is never constructed
[INFO] [stdout]    --> meez3d/src/tilemap.rs:340:12
[INFO] [stdout]     |
[INFO] [stdout] 340 | pub struct MapObject {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> meez3d/src/tilemap.rs:348:8
[INFO] [stdout]     |
[INFO] [stdout] 347 | impl MapObject {
[INFO] [stdout]     | -------------- associated function in this implementation
[INFO] [stdout] 348 |     fn new(xml: ObjectXml, tilesets: &TileSetList) -> Result<MapObject> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TileSetList` is never constructed
[INFO] [stdout]    --> meez3d/src/tilemap.rs:389:8
[INFO] [stdout]     |
[INFO] [stdout] 389 | struct TileSetList {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add`, and `lookup` are never used
[INFO] [stdout]    --> meez3d/src/tilemap.rs:394:8
[INFO] [stdout]     |
[INFO] [stdout] 393 | impl TileSetList {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] 394 |     fn new() -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 400 |     fn add(&mut self, tileset: TileSet) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 405 |     fn lookup(&self, tile_gid: TileIndex) -> (&TileSet, LocalTileIndex) {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TileMapProperties` is never constructed
[INFO] [stdout]    --> meez3d/src/tilemap.rs:415:12
[INFO] [stdout]     |
[INFO] [stdout] 415 | pub struct TileMapProperties {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TileMap` is never constructed
[INFO] [stdout]    --> meez3d/src/tilemap.rs:435:12
[INFO] [stdout]     |
[INFO] [stdout] 435 | pub struct TileMap {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> meez3d/src/tilemap.rs:449:12
[INFO] [stdout]     |
[INFO] [stdout] 448 | impl TileMap {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 449 |     pub fn from_file(
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 462 |     fn from_xml(
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 542 |     fn draw_image_layer(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 565 |     fn draw_tile_layer(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 663 |     fn draw_layer(
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 679 |     pub fn draw_background(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 695 |     pub fn draw_foreground(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 761 |     pub fn get_animation(&self, tile_gid: TileIndex) -> Option<&Animation> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `solid` and `raw` are never read
[INFO] [stdout]    --> meez3d/src/tileset.rs:98:9
[INFO] [stdout]     |
[INFO] [stdout]  97 | pub struct TileProperties {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout]  98 |     pub solid: bool,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]  99 |     pub animation: Option<String>,
[INFO] [stdout] 100 |     pub raw: PropertyMap,
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `firstgid`, `animations`, `properties`, and `tile_properties` are never read
[INFO] [stdout]    --> meez3d/src/tileset.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 125 | pub struct TileSet {
[INFO] [stdout]     |            ------- fields in this struct
[INFO] [stdout] 126 |     _name: String,
[INFO] [stdout] 127 |     firstgid: TileIndex,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 133 |     pub animations: SmallIntMap<LocalTileIndex, Animation>,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 134 |     pub properties: TileSetProperties,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 135 |     tile_properties: SmallIntMap<LocalTileIndex, TileProperties>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_local_tile_index`, `get_global_tile_index`, `gid_sort_key`, and `get_tile_properties` are never used
[INFO] [stdout]    --> meez3d/src/tileset.rs:226:12
[INFO] [stdout]     |
[INFO] [stdout] 138 | impl TileSet {
[INFO] [stdout]     | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 226 |     pub fn get_local_tile_index(&self, tile_gid: TileIndex) -> Option<LocalTileIndex> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 236 |     pub fn get_global_tile_index(&self, tile_id: LocalTileIndex) -> TileIndex {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 |     pub fn gid_sort_key(&self) -> i32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 269 |     pub fn get_tile_properties(&self, tile_id: LocalTileIndex) -> Option<&TileProperties> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `texture` is never read
[INFO] [stdout]   --> meez3d/src/wgpu/texture.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Texture {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] 12 |     pub texture: wgpu::Texture,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> meez3d/src/properties.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |     Int(i32),
[INFO] [stdout]    |     --- ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PropertyValue` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 27 -     Int(i32),
[INFO] [stdout] 27 +     Int(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_defaults` and `get_int` are never used
[INFO] [stdout]   --> meez3d/src/properties.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl PropertyMap {
[INFO] [stdout]    | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn set_defaults(&mut self, other: &PropertyMap) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub fn get_int(&self, k: &str) -> Result<Option<i32>> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PushPause` is never constructed
[INFO] [stdout]   --> meez3d/src/scene.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub enum SceneResult {
[INFO] [stdout]    |          ----------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 16 |     PushPause,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SmallIntSet` is never constructed
[INFO] [stdout]  --> meez3d/src/smallintset.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct SmallIntSet<T> {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `insert`, `contains`, `clear`, and `iter` are never used
[INFO] [stdout]   --> meez3d/src/smallintset.rs:9:12
[INFO] [stdout]    |
[INFO] [stdout]  5 | / impl<T> SmallIntSet<T>
[INFO] [stdout]  6 | | where
[INFO] [stdout]  7 | |     T: PartialEq,
[INFO] [stdout]    | |_________________- associated items in this implementation
[INFO] [stdout]  8 |   {
[INFO] [stdout]  9 |       pub fn new() -> Self {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 13 |       pub fn insert(&mut self, item: T) {
[INFO] [stdout]    |              ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |       pub fn contains(&self, item: T) -> bool {
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |       pub fn clear(&mut self) {
[INFO] [stdout]    |              ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |       pub fn iter(&self) -> std::slice::Iter<'_, T> {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `NextFrame` is never used
[INFO] [stdout]    --> meez3d/src/sprite.rs:114:6
[INFO] [stdout]     |
[INFO] [stdout] 114 | enum NextFrame {
[INFO] [stdout]     |      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `next` is never used
[INFO] [stdout]    --> meez3d/src/sprite.rs:120:8
[INFO] [stdout]     |
[INFO] [stdout] 119 | impl NextFrame {
[INFO] [stdout]     | -------------- method in this implementation
[INFO] [stdout] 120 |     fn next(&self, frame: u32) -> u32 {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AnimationStateMachineRule` is never constructed
[INFO] [stdout]    --> meez3d/src/sprite.rs:128:8
[INFO] [stdout]     |
[INFO] [stdout] 128 | struct AnimationStateMachineRule {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `matches`, and `apply` are never used
[INFO] [stdout]    --> meez3d/src/sprite.rs:135:8
[INFO] [stdout]     |
[INFO] [stdout] 134 | impl AnimationStateMachineRule {
[INFO] [stdout]     | ------------------------------ associated items in this implementation
[INFO] [stdout] 135 |     fn new(text: &str, acceptable_states: &HashSet<String>) -> Result<AnimationStateMachineRule> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 202 |     fn matches(&self, current_frame: u32, current_state: &str) -> bool {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     fn apply(&self, current_frame: u32) -> u32 {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AnimationStateMachine` is never constructed
[INFO] [stdout]    --> meez3d/src/sprite.rs:221:12
[INFO] [stdout]     |
[INFO] [stdout] 221 | pub struct AnimationStateMachine {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_file`, `new`, and `next_frame` are never used
[INFO] [stdout]    --> meez3d/src/sprite.rs:226:12
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl AnimationStateMachine {
[INFO] [stdout]     | -------------------------- associated items in this implementation
[INFO] [stdout] 226 |     pub fn from_file(path: &Path, files: &FileManager) -> Result<AnimationStateMachine> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 237 |     pub fn new(text: &str) -> Result<AnimationStateMachine> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 264 |     pub fn next_frame(&self, current_frame: u32, current_state: &str) -> Result<u32> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TileSetSourceXml` is never constructed
[INFO] [stdout]   --> meez3d/src/tilemap.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | struct TileSetSourceXml {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DataXml` is never constructed
[INFO] [stdout]   --> meez3d/src/tilemap.rs:31:8
[INFO] [stdout]    |
[INFO] [stdout] 31 | struct DataXml {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LayerXml` is never constructed
[INFO] [stdout]   --> meez3d/src/tilemap.rs:40:8
[INFO] [stdout]    |
[INFO] [stdout] 40 | struct LayerXml {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ImageXml` is never constructed
[INFO] [stdout]   --> meez3d/src/tilemap.rs:56:8
[INFO] [stdout]    |
[INFO] [stdout] 56 | struct ImageXml {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ImageLayerXml` is never constructed
[INFO] [stdout]   --> meez3d/src/tilemap.rs:62:8
[INFO] [stdout]    |
[INFO] [stdout] 62 | struct ImageLayerXml {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ObjectXml` is never constructed
[INFO] [stdout]   --> meez3d/src/tilemap.rs:74:8
[INFO] [stdout]    |
[INFO] [stdout] 74 | struct ObjectXml {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ObjectGroupXml` is never constructed
[INFO] [stdout]   --> meez3d/src/tilemap.rs:92:8
[INFO] [stdout]    |
[INFO] [stdout] 92 | struct ObjectGroupXml {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `TileMapXmlField` is never used
[INFO] [stdout]   --> meez3d/src/tilemap.rs:99:6
[INFO] [stdout]    |
[INFO] [stdout] 99 | enum TileMapXmlField {
[INFO] [stdout]    |      ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_backgroundcolor` is never used
[INFO] [stdout]    --> meez3d/src/tilemap.rs:106:4
[INFO] [stdout]     |
[INFO] [stdout] 106 | fn default_backgroundcolor() -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TileMapXml` is never constructed
[INFO] [stdout]    --> meez3d/src/tilemap.rs:111:8
[INFO] [stdout]     |
[INFO] [stdout] 111 | struct TileMapXml {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ImageLayer` is never constructed
[INFO] [stdout]    --> meez3d/src/tilemap.rs:152:8
[INFO] [stdout]     |
[INFO] [stdout] 152 | struct ImageLayer {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_xml` is never used
[INFO] [stdout]    --> meez3d/src/tilemap.rs:157:8
[INFO] [stdout]     |
[INFO] [stdout] 156 | impl ImageLayer {
[INFO] [stdout]     | --------------- associated function in this implementation
[INFO] [stdout] 157 |     fn from_xml(
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TileLayer` is never constructed
[INFO] [stdout]    --> meez3d/src/tilemap.rs:171:8
[INFO] [stdout]     |
[INFO] [stdout] 171 | struct TileLayer {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_xml`, `get`, and `get_mut` are never used
[INFO] [stdout]    --> meez3d/src/tilemap.rs:181:8
[INFO] [stdout]     |
[INFO] [stdout] 180 | impl TileLayer {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 181 |     fn from_xml(xml: LayerXml) -> Result<TileLayer> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 223 |     fn get(&self, row: usize, col: usize) -> Option<&TileIndex> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 227 |     fn get_mut(&mut self, row: usize, col: usize) -> Option<&mut TileIndex> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Layer` is never used
[INFO] [stdout]    --> meez3d/src/tilemap.rs:249:6
[INFO] [stdout]     |
[INFO] [stdout] 249 | enum Layer {
[INFO] [stdout]     |      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Overflow` is never used
[INFO] [stdout]    --> meez3d/src/tilemap.rs:255:10
[INFO] [stdout]     |
[INFO] [stdout] 255 | pub enum Overflow {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ConveyorDirection` is never used
[INFO] [stdout]    --> meez3d/src/tilemap.rs:274:10
[INFO] [stdout]     |
[INFO] [stdout] 274 | pub enum ConveyorDirection {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ButtonType` is never used
[INFO] [stdout]    --> meez3d/src/tilemap.rs:291:10
[INFO] [stdout]     |
[INFO] [stdout] 291 | pub enum ButtonType {
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MapObjectProperties` is never constructed
[INFO] [stdout]    --> meez3d/src/tilemap.rs:312:12
[INFO] [stdout]     |
[INFO] [stdout] 312 | pub struct MapObjectProperties {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MapObject` is never constructed
[INFO] [stdout]    --> meez3d/src/tilemap.rs:340:12
[INFO] [stdout]     |
[INFO] [stdout] 340 | pub struct MapObject {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> meez3d/src/tilemap.rs:348:8
[INFO] [stdout]     |
[INFO] [stdout] 347 | impl MapObject {
[INFO] [stdout]     | -------------- associated function in this implementation
[INFO] [stdout] 348 |     fn new(xml: ObjectXml, tilesets: &TileSetList) -> Result<MapObject> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TileSetList` is never constructed
[INFO] [stdout]    --> meez3d/src/tilemap.rs:389:8
[INFO] [stdout]     |
[INFO] [stdout] 389 | struct TileSetList {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add`, and `lookup` are never used
[INFO] [stdout]    --> meez3d/src/tilemap.rs:394:8
[INFO] [stdout]     |
[INFO] [stdout] 393 | impl TileSetList {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] 394 |     fn new() -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 400 |     fn add(&mut self, tileset: TileSet) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 405 |     fn lookup(&self, tile_gid: TileIndex) -> (&TileSet, LocalTileIndex) {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TileMapProperties` is never constructed
[INFO] [stdout]    --> meez3d/src/tilemap.rs:415:12
[INFO] [stdout]     |
[INFO] [stdout] 415 | pub struct TileMapProperties {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TileMap` is never constructed
[INFO] [stdout]    --> meez3d/src/tilemap.rs:435:12
[INFO] [stdout]     |
[INFO] [stdout] 435 | pub struct TileMap {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> meez3d/src/tilemap.rs:449:12
[INFO] [stdout]     |
[INFO] [stdout] 448 | impl TileMap {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 449 |     pub fn from_file(
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 462 |     fn from_xml(
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 542 |     fn draw_image_layer(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 565 |     fn draw_tile_layer(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 663 |     fn draw_layer(
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 679 |     pub fn draw_background(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 695 |     pub fn draw_foreground(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 761 |     pub fn get_animation(&self, tile_gid: TileIndex) -> Option<&Animation> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `solid` and `raw` are never read
[INFO] [stdout]    --> meez3d/src/tileset.rs:98:9
[INFO] [stdout]     |
[INFO] [stdout]  97 | pub struct TileProperties {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout]  98 |     pub solid: bool,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]  99 |     pub animation: Option<String>,
[INFO] [stdout] 100 |     pub raw: PropertyMap,
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `firstgid`, `animations`, `properties`, and `tile_properties` are never read
[INFO] [stdout]    --> meez3d/src/tileset.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 125 | pub struct TileSet {
[INFO] [stdout]     |            ------- fields in this struct
[INFO] [stdout] 126 |     _name: String,
[INFO] [stdout] 127 |     firstgid: TileIndex,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 133 |     pub animations: SmallIntMap<LocalTileIndex, Animation>,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 134 |     pub properties: TileSetProperties,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 135 |     tile_properties: SmallIntMap<LocalTileIndex, TileProperties>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_local_tile_index`, `get_global_tile_index`, `gid_sort_key`, and `get_tile_properties` are never used
[INFO] [stdout]    --> meez3d/src/tileset.rs:226:12
[INFO] [stdout]     |
[INFO] [stdout] 138 | impl TileSet {
[INFO] [stdout]     | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 226 |     pub fn get_local_tile_index(&self, tile_gid: TileIndex) -> Option<LocalTileIndex> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 236 |     pub fn get_global_tile_index(&self, tile_id: LocalTileIndex) -> TileIndex {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 |     pub fn gid_sort_key(&self) -> i32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 269 |     pub fn get_tile_properties(&self, tile_id: LocalTileIndex) -> Option<&TileProperties> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `texture` is never read
[INFO] [stdout]   --> meez3d/src/wgpu/texture.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Texture {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] 12 |     pub texture: wgpu::Texture,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking meez3d_wasm v0.1.0 (/opt/rustwide/workdir/meez3d_wasm)
[INFO] [stderr]     Checking meez3d_winit v0.1.0 (/opt/rustwide/workdir/meez3d_winit)
[INFO] [stderr]     Checking meez3d_wgpu v0.1.0 (/opt/rustwide/workdir/meez3d_wgpu)
[INFO] [stdout] warning: unused variable: `fps`
[INFO] [stdout]    --> meez3d_wgpu/src/main.rs:135:9
[INFO] [stdout]     |
[INFO] [stdout] 135 |     let fps = frame as f64 / speed_test_duration.as_secs_f64();
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_fps`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `fps`
[INFO] [stdout]    --> meez3d_wgpu/src/main.rs:135:9
[INFO] [stdout]     |
[INFO] [stdout] 135 |     let fps = frame as f64 / speed_test_duration.as_secs_f64();
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_fps`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 03s
[INFO] running `Command { std: "docker" "inspect" "c6a979bb526ac1b6c6628f406f83518e959740354482612b67e78e0bf542cdd6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c6a979bb526ac1b6c6628f406f83518e959740354482612b67e78e0bf542cdd6", kill_on_drop: false }`
[INFO] [stdout] c6a979bb526ac1b6c6628f406f83518e959740354482612b67e78e0bf542cdd6
