[INFO] cloning repository https://github.com/TommyLamm/iCraft
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/TommyLamm/iCraft" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTommyLamm%2FiCraft", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTommyLamm%2FiCraft'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a1f7dc328672c71e3e5269b5d1a77a8c3e15b72c
[INFO] checking TommyLamm/iCraft against f4dd856795debe636f2ba39a900f162f5abeb7e8 for pr-160904
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTommyLamm%2FiCraft" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/TommyLamm/iCraft
[INFO] finished tweaking git repo https://github.com/TommyLamm/iCraft
[INFO] tweaked toml for git repo https://github.com/TommyLamm/iCraft written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/TommyLamm/iCraft on toolchain f4dd856795debe636f2ba39a900f162f5abeb7e8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f4dd856795debe636f2ba39a900f162f5abeb7e8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/TommyLamm/iCraft 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" "+f4dd856795debe636f2ba39a900f162f5abeb7e8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/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:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 0c687e8545bfc45612541aeb7aff41e27c74958c5074a0b2ad93a9abf4e4840f
[INFO] running `Command { std: "docker" "start" "0c687e8545bfc45612541aeb7aff41e27c74958c5074a0b2ad93a9abf4e4840f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0c687e8545bfc45612541aeb7aff41e27c74958c5074a0b2ad93a9abf4e4840f", 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" "0c687e8545bfc45612541aeb7aff41e27c74958c5074a0b2ad93a9abf4e4840f" "/opt/rustwide/cargo-home/bin/cargo" "+f4dd856795debe636f2ba39a900f162f5abeb7e8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0c687e8545bfc45612541aeb7aff41e27c74958c5074a0b2ad93a9abf4e4840f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "0c687e8545bfc45612541aeb7aff41e27c74958c5074a0b2ad93a9abf4e4840f" "/opt/rustwide/cargo-home/bin/cargo" "+f4dd856795debe636f2ba39a900f162f5abeb7e8" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling zerocopy v0.8.54
[INFO] [stderr]    Compiling quote v1.0.46
[INFO] [stderr]    Compiling wayland-sys v0.31.11
[INFO] [stderr]    Compiling cc v1.2.67
[INFO] [stderr]     Checking arrayvec v0.7.8
[INFO] [stderr]    Compiling quick-xml v0.39.4
[INFO] [stderr]    Compiling wayland-client v0.31.14
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]     Checking getrandom v0.1.16
[INFO] [stderr]     Checking polling v3.11.0
[INFO] [stderr]     Checking rayon-core v1.12.1
[INFO] [stderr]     Checking flate2 v1.1.9
[INFO] [stderr]    Compiling wgpu-hal v0.19.5
[INFO] [stderr]     Checking spirv v0.3.0+sdk-1.3.268.0
[INFO] [stderr]     Checking gpu-alloc-types v0.3.1
[INFO] [stderr]     Checking gpu-descriptor-types v0.1.2
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking either v1.16.0
[INFO] [stderr]     Checking gpu-alloc v0.6.2
[INFO] [stderr]     Checking owned_ttf_parser v0.25.1
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]     Checking ash v0.37.3+1.3.251
[INFO] [stderr]     Checking alsa-sys v0.3.1
[INFO] [stderr]     Checking khronos-egl v6.0.0
[INFO] [stderr]     Checking spin v0.9.9
[INFO] [stderr]    Compiling wgpu-core v0.19.4
[INFO] [stderr]     Checking memmap2 v0.9.11
[INFO] [stderr]     Checking wgpu-types v0.19.2
[INFO] [stderr]     Checking weezl v0.1.12
[INFO] [stderr]     Checking glow v0.13.1
[INFO] [stderr]     Checking miniz_oxide v0.7.4
[INFO] [stderr]     Checking flume v0.11.1
[INFO] [stderr]    Compiling winit v0.30.13
[INFO] [stderr]     Checking ab_glyph v0.2.32
[INFO] [stderr]     Checking alsa v0.9.1
[INFO] [stderr]     Checking rayon v1.10.0
[INFO] [stderr]    Compiling syn v3.0.5
[INFO] [stderr]     Checking ogg v0.8.0
[INFO] [stderr]     Checking gethostname v1.1.0
[INFO] [stderr]    Compiling wgpu v0.19.4
[INFO] [stderr]     Checking zune-inflate v0.2.54
[INFO] [stderr]     Checking fdeflate v0.3.7
[INFO] [stderr]     Checking color_quant v1.1.0
[INFO] [stderr]     Checking tracing-core v0.1.36
[INFO] [stderr]     Checking bumpalo v3.20.3
[INFO] [stderr]     Checking half v2.2.1
[INFO] [stderr]     Checking lebe v0.5.3
[INFO] [stderr]    Compiling zip v2.4.2
[INFO] [stderr]     Checking bit_field v0.10.3
[INFO] [stderr]     Checking png v0.17.16
[INFO] [stderr]     Checking zopfli v0.8.3
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]    Compiling wayland-scanner v0.31.10
[INFO] [stderr]     Checking x11rb v0.13.2
[INFO] [stderr]     Checking exr v1.71.0
[INFO] [stderr]     Checking lewton v0.10.2
[INFO] [stderr]     Checking cpal v0.15.3
[INFO] [stderr]     Checking gif v0.13.3
[INFO] [stderr]     Checking x11-dl v2.21.0
[INFO] [stderr]     Checking rand_xorshift v0.2.0
[INFO] [stderr]     Checking xkbcommon-dl v0.4.2
[INFO] [stderr]     Checking signal-hook-registry v1.4.2
[INFO] [stderr]     Checking socket2 v0.6.5
[INFO] [stderr]     Checking mio v1.2.2
[INFO] [stderr]     Checking hound v3.5.1
[INFO] [stderr]     Checking claxon v0.4.3
[INFO] [stderr]    Compiling wayland-backend v0.3.15
[INFO] [stderr]     Checking smol_str v0.2.2
[INFO] [stderr]     Checking glam v0.25.0
[INFO] [stderr]     Checking pollster v0.3.0
[INFO] [stderr]     Checking wayland-csd-frame v0.3.0
[INFO] [stderr]    Compiling displaydoc v0.2.7
[INFO] [stderr]     Checking wayland-protocols v0.32.13
[INFO] [stderr]     Checking wayland-cursor v0.31.14
[INFO] [stderr]     Checking jpeg-decoder v0.3.2
[INFO] [stderr]    Compiling bytemuck_derive v1.11.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling tokio-macros v2.7.1
[INFO] [stderr]     Checking tokio v1.53.1
[INFO] [stderr]     Checking tiff v0.9.1
[INFO] [stderr]     Checking thiserror v2.0.18
[INFO] [stderr]     Checking bytemuck v1.25.1
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking calloop v0.13.0
[INFO] [stderr]     Checking symphonia-core v0.5.5
[INFO] [stderr]     Checking tiny-skia-path v0.11.4
[INFO] [stderr]     Checking qoi v0.4.1
[INFO] [stderr]     Checking image v0.24.9
[INFO] [stderr]     Checking calloop-wayland-source v0.3.0
[INFO] [stderr]     Checking ahash v0.8.12
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking tiny-skia v0.11.4
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking indexmap v2.2.6
[INFO] [stderr]     Checking gpu-descriptor v0.2.4
[INFO] [stderr]     Checking symphonia-metadata v0.5.5
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking symphonia-bundle-mp3 v0.5.5
[INFO] [stderr]     Checking naga v0.19.2
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking serde_json v1.0.117
[INFO] [stderr]     Checking noise v0.8.2
[INFO] [stderr]     Checking symphonia v0.5.5
[INFO] [stderr]     Checking rodio v0.19.0
[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 icraft v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<u64>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]   --> src/network/session.rs:55:25
[INFO] [stdout]    |
[INFO] [stdout] 55 |         let _ = counter.fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| {
[INFO] [stdout]    |                         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 55 -         let _ = counter.fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| {
[INFO] [stdout] 55 +         let _ = counter.try_update(Ordering::Relaxed, Ordering::Relaxed, |value| {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<u64>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]   --> src/network/session.rs:61:25
[INFO] [stdout]    |
[INFO] [stdout] 61 |         let _ = counter.fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| {
[INFO] [stdout]    |                         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 61 -         let _ = counter.fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| {
[INFO] [stdout] 61 +         let _ = counter.try_update(Ordering::Relaxed, Ordering::Relaxed, |value| {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]   --> src/network/session.rs:89:18
[INFO] [stdout]    |
[INFO] [stdout] 89 |                 .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| {
[INFO] [stdout]    |                  ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 89 -                 .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| {
[INFO] [stdout] 89 +                 .try_update(Ordering::Relaxed, Ordering::Relaxed, |value| {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]   --> src/network/session.rs:98:18
[INFO] [stdout]    |
[INFO] [stdout] 98 |                 .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| {
[INFO] [stdout]    |                  ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 98 -                 .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| {
[INFO] [stdout] 98 +                 .try_update(Ordering::Relaxed, Ordering::Relaxed, |value| {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<u64>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]   --> src/network/session.rs:55:25
[INFO] [stdout]    |
[INFO] [stdout] 55 |         let _ = counter.fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| {
[INFO] [stdout]    |                         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 55 -         let _ = counter.fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| {
[INFO] [stdout] 55 +         let _ = counter.try_update(Ordering::Relaxed, Ordering::Relaxed, |value| {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<u64>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]   --> src/network/session.rs:61:25
[INFO] [stdout]    |
[INFO] [stdout] 61 |         let _ = counter.fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| {
[INFO] [stdout]    |                         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 61 -         let _ = counter.fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| {
[INFO] [stdout] 61 +         let _ = counter.try_update(Ordering::Relaxed, Ordering::Relaxed, |value| {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]   --> src/network/session.rs:89:18
[INFO] [stdout]    |
[INFO] [stdout] 89 |                 .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| {
[INFO] [stdout]    |                  ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 89 -                 .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| {
[INFO] [stdout] 89 +                 .try_update(Ordering::Relaxed, Ordering::Relaxed, |value| {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]   --> src/network/session.rs:98:18
[INFO] [stdout]    |
[INFO] [stdout] 98 |                 .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| {
[INFO] [stdout]    |                  ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 98 -                 .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |value| {
[INFO] [stdout] 98 +                 .try_update(Ordering::Relaxed, Ordering::Relaxed, |value| {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `accessibility::AccessibilitySettings`
[INFO] [stdout]  --> src/menu/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     accessibility::AccessibilitySettings,
[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: `PROTOCOL_VERSION` and `Packet`
[INFO] [stdout]  --> src/menu/../server_address_book.rs:7:32
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::network::protocol::{Packet, PROTOCOL_VERSION};
[INFO] [stdout]   |                                ^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AddressBookError` and `ServerPingResult`
[INFO] [stdout]   --> src/menu/mod.rs:22:31
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub use server_address_book::{AddressBookError, ServerAddressBook, ServerPingResult};
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^                     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `parse_key`
[INFO] [stdout]   --> src/menu/mod.rs:57:68
[INFO] [stdout]    |
[INFO] [stdout] 57 | use settings::{cycle_fps_cap, fps_cap_label, key_name, parse_bool, parse_key};
[INFO] [stdout]    |                                                                    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Language`
[INFO] [stdout]   --> src/menu/mod.rs:58:51
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub use settings::{ControlBindings, GameSettings, Language};
[INFO] [stdout]    |                                                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `EntityManager`
[INFO] [stdout]  --> src/mob_renderer.rs:2:29
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::entity::{Entity, EntityManager, EntityType};
[INFO] [stdout]   |                             ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::state::Vertex`
[INFO] [stdout]  --> src/mob_renderer.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::state::Vertex;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `mark_section_mesh_dependencies`
[INFO] [stdout]  --> src/state.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     mark_section_mesh_dependencies, surrounding_chunk_coords, PresentationChunks,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TerrainVertex`
[INFO] [stdout]  --> src/state.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     TerrainVertex,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ToolType`
[INFO] [stdout]   --> src/state.rs:13:56
[INFO] [stdout]    |
[INFO] [stdout] 13 |     CreativeTab, GameMode, Inventory, Item, ItemStack, ToolType, CREATIVE_COLUMNS, CREATIVE_ROWS,
[INFO] [stdout]    |                                                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `player_aabb_at`
[INFO] [stdout]   --> src/state.rs:17:22
[INFO] [stdout]    |
[INFO] [stdout] 17 | use crate::physics::{player_aabb_at, BlockPlacementDecision, PlayerPhysics};
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `empty_region_rebuild_worthwhile` and `region_allocation_handle_is_live`
[INFO] [stdout]   --> src/state.rs:20:43
[INFO] [stdout]    |
[INFO] [stdout] 20 |     chunk_mesh_is_registered_with_region, empty_region_rebuild_worthwhile,
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 21 |     region_allocation_handle_is_live, should_decrement_region_active_chunks, UploadMetrics,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PlayerSnapshot`, `interpolate_snapshot`, and `sequence_is_newer`
[INFO] [stdout]   --> src/state.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 |     interpolate_snapshot, placement_decision_for_players, sequence_is_newer,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^                                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 25 |     validated_remote_position, PlayerSnapshot, RemotePlayerState, ReplicatedEntityState,
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TrackedNetworkSender`
[INFO] [stdout]   --> src/state.rs:29:76
[INFO] [stdout]    |
[INFO] [stdout] 29 | use crate::presentation::network_inbound::{NetworkInbound, NetworkStaging, TrackedNetworkSender};
[INFO] [stdout]    |                                                                            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::authority::mining::calculate_block_break_rewards`
[INFO] [stdout]   --> src/state.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub use crate::authority::mining::calculate_block_break_rewards;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GpuMeshLayer`
[INFO] [stdout]   --> src/state.rs:50:16
[INFO] [stdout]    |
[INFO] [stdout] 50 |     ChunkMesh, GpuMeshLayer, GpuMeshLevel, GpuSectionMesh, RenderRegion,
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `accessibility::AccessibilitySettings`
[INFO] [stdout]  --> src/menu/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     accessibility::AccessibilitySettings,
[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: `AddressBookError`
[INFO] [stdout]   --> src/menu/mod.rs:22:31
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub use server_address_book::{AddressBookError, ServerAddressBook, ServerPingResult};
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Language`
[INFO] [stdout]   --> src/menu/mod.rs:58:51
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub use settings::{ControlBindings, GameSettings, Language};
[INFO] [stdout]    |                                                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/menu/tests.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use super::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::state::Vertex`
[INFO] [stdout]  --> src/mob_renderer.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::state::Vertex;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TerrainVertex`
[INFO] [stdout]  --> src/state.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     TerrainVertex,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ToolType`
[INFO] [stdout]   --> src/state.rs:13:56
[INFO] [stdout]    |
[INFO] [stdout] 13 |     CreativeTab, GameMode, Inventory, Item, ItemStack, ToolType, CREATIVE_COLUMNS, CREATIVE_ROWS,
[INFO] [stdout]    |                                                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TrackedNetworkSender`
[INFO] [stdout]   --> src/state.rs:29:76
[INFO] [stdout]    |
[INFO] [stdout] 29 | use crate::presentation::network_inbound::{NetworkInbound, NetworkStaging, TrackedNetworkSender};
[INFO] [stdout]    |                                                                            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GpuMeshLayer`
[INFO] [stdout]   --> src/state.rs:50:16
[INFO] [stdout]    |
[INFO] [stdout] 50 |     ChunkMesh, GpuMeshLayer, GpuMeshLevel, GpuSectionMesh, RenderRegion,
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/presentation/tests/authority_policy_tests.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/presentation/tests/camera_input_tests.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use super::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/presentation/tests/camera_perspective_tests.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/presentation/tests/creative_flight_input_tests.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/presentation/tests/debug_tests.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PROTOCOL_VERSION`
[INFO] [stdout]    --> src/presentation/tests/debug_tests.rs:490:44
[INFO] [stdout]     |
[INFO] [stdout] 490 |     use crate::network::protocol::{Packet, PROTOCOL_VERSION};
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PROTOCOL_VERSION`
[INFO] [stdout]    --> src/presentation/tests/debug_tests.rs:532:44
[INFO] [stdout]     |
[INFO] [stdout] 532 |     use crate::network::protocol::{Packet, PROTOCOL_VERSION};
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/presentation/tests/gpu_timestamp_state_tests.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use super::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/presentation/tests/reach_tests.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/presentation/tests/remote_sync_tests.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PROTOCOL_VERSION`
[INFO] [stdout]    --> src/presentation/tests/remote_sync_tests.rs:104:44
[INFO] [stdout]     |
[INFO] [stdout] 104 |     use crate::network::protocol::{Packet, PROTOCOL_VERSION};
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/presentation/tests/render_region_lifecycle_tests.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use super::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/presentation/tests/sprint_policy_tests.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shift_held`
[INFO] [stdout]    --> src/app.rs:531:62
[INFO] [stdout]     |
[INFO] [stdout] 531 | fn handle_game_keyboard(state: &mut State, event: &KeyEvent, shift_held: bool) -> bool {
[INFO] [stdout]     |                                                              ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shift_held`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/presentation/frame.rs:3418:13
[INFO] [stdout]      |
[INFO] [stdout] 3418 |         let mut push = |cpu: &mut Vec<u8>,
[INFO] [stdout]      |             ----^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/state.rs:5171:20
[INFO] [stdout]      |
[INFO] [stdout] 5171 |             let Ok(mut status) = slot.status.try_lock() else {
[INFO] [stdout]      |                    ----^^^^^^
[INFO] [stdout]      |                    |
[INFO] [stdout]      |                    help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `count` is never used
[INFO] [stdout]    --> src/accessibility.rs:168:12
[INFO] [stdout]     |
[INFO] [stdout] 159 | impl FocusNavigator {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 168 |     pub fn count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `len` and `is_empty` are never used
[INFO] [stdout]    --> src/accessibility.rs:249:12
[INFO] [stdout]     |
[INFO] [stdout] 218 | impl SubtitleQueue {
[INFO] [stdout]     | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 249 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 253 |     pub fn is_empty(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `direction_from_vector` is never used
[INFO] [stdout]    --> src/accessibility.rs:377:8
[INFO] [stdout]     |
[INFO] [stdout] 377 | pub fn direction_from_vector(x: f32, z: f32, right_x: f32, right_z: f32) -> SubtitleDirection {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `description` and `xp_reward` are never read
[INFO] [stdout]   --> src/advancements.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct Advancement {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub description: &'static str,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub xp_reward: u32,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Advancement` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `description` is never read
[INFO] [stdout]   --> src/advancements.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct ToastNotification {
[INFO] [stdout]    |            ----------------- field in this struct
[INFO] [stdout] 49 |     pub title: String,
[INFO] [stdout] 50 |     pub description: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ToastNotification` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `check_trigger` and `trigger_matches` are never used
[INFO] [stdout]    --> src/advancements.rs:792:12
[INFO] [stdout]     |
[INFO] [stdout] 758 | impl AdvancementManager {
[INFO] [stdout]     | ----------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 792 |     pub fn check_trigger(&mut self, trigger: &AdvancementTrigger) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 833 |     fn trigger_matches(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `hovered_advancement` is never read
[INFO] [stdout]    --> src/advancements.rs:860:9
[INFO] [stdout]     |
[INFO] [stdout] 854 | pub struct AdvancementGui {
[INFO] [stdout]     |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 860 |     pub hovered_advancement: Option<&'static str>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `toggle` is never used
[INFO] [stdout]    --> src/advancements.rs:890:12
[INFO] [stdout]     |
[INFO] [stdout] 866 | impl AdvancementGui {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 890 |     pub fn toggle(&mut self) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VISIBLE_REQUIRED_KEYS` is never used
[INFO] [stdout]   --> src/localization.rs:49:11
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub const VISIBLE_REQUIRED_KEYS: &[&str] = &[
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `missing` is never read
[INFO] [stdout]    --> src/localization.rs:203:5
[INFO] [stdout]     |
[INFO] [stdout] 199 | pub struct TranslationCatalog {
[INFO] [stdout]     |            ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 203 |     missing: HashSet<String>,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TranslationCatalog` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/localization.rs:207:12
[INFO] [stdout]     |
[INFO] [stdout] 206 | impl TranslationCatalog {
[INFO] [stdout]     | ----------------------- associated items in this implementation
[INFO] [stdout] 207 |     pub fn builtin(language: Language) -> Self {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn from_json(language: Language, english_json: &str, active_json: &str) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 240 |     pub fn from_resource_packs(manager: &ResourcePackManager, language: Language) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 272 |     pub fn translate(&mut self, key: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 327 |     pub fn format(&mut self, key: &str, arguments: &[(&str, &str)]) -> String {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 338 |     pub fn plural(&mut self, key: &str, count: u64) -> String {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 349 |     pub fn missing_keys(&self) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 355 |     pub fn visible_coverage(&self) -> f32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 366 |     pub fn validate_visible_keys(&self) -> Vec<String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `builtin_catalog` is never used
[INFO] [stdout]    --> src/localization.rs:423:4
[INFO] [stdout]     |
[INFO] [stdout] 423 | fn builtin_catalog(language: Language) -> &'static TranslationCatalog {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `translate` is never used
[INFO] [stdout]    --> src/localization.rs:432:8
[INFO] [stdout]     |
[INFO] [stdout] 432 | pub fn translate(language: Language, key: &str) -> String {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format` is never used
[INFO] [stdout]    --> src/localization.rs:436:8
[INFO] [stdout]     |
[INFO] [stdout] 436 | pub fn format(language: Language, key: &str, arguments: &[(&str, &str)]) -> String {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `wire_value` is never used
[INFO] [stdout]   --> src/weather.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl Weather {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] 16 |     pub fn wire_value(self) -> u8 {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Snow` is never constructed
[INFO] [stdout]   --> src/weather.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub enum Precipitation {
[INFO] [stdout]    |          ------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 38 |     Snow,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Precipitation` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `FurnaceSmelt`, `FurnaceLit`, `ShieldBlock`, and `ShieldBreak` are never constructed
[INFO] [stdout]   --> src/audio.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub enum SoundId {
[INFO] [stdout]    |          ------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 27 |     FurnaceSmelt,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 28 |     FurnaceLit,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 29 |     ShieldBlock,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 30 |     ShieldBreak,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SoundId` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `update_looping_sound_position` are never used
[INFO] [stdout]    --> src/audio.rs:418:12
[INFO] [stdout]     |
[INFO] [stdout] 417 | impl AudioManager {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] 418 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 632 |     pub fn update_looping_sound_position(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `max_slots` and `telemetry` are never used
[INFO] [stdout]   --> src/gpu_frame_resources.rs:53:12
[INFO] [stdout]    |
[INFO] [stdout] 45 | impl FrameResourcePool {
[INFO] [stdout]    | ---------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub fn max_slots(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn telemetry(&self) -> PoolTelemetry {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_world_creation_options` is never used
[INFO] [stdout]    --> src/menu/mod.rs:165:8
[INFO] [stdout]     |
[INFO] [stdout] 165 | pub fn load_world_creation_options(world_dir: &Path) -> WorldCreationOptions {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `update_world_metadata` is never used
[INFO] [stdout]    --> src/menu/mod.rs:225:8
[INFO] [stdout]     |
[INFO] [stdout] 225 | pub fn update_world_metadata(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Ping` is never constructed
[INFO] [stdout]   --> src/menu/../server_address_book.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub enum AddressBookError {
[INFO] [stdout]    |          ---------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 39 |     Ping(String),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AddressBookError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `recent_results` is never used
[INFO] [stdout]    --> src/menu/../server_address_book.rs:121:12
[INFO] [stdout]     |
[INFO] [stdout] 108 | impl ServerAddressBook {
[INFO] [stdout]     | ---------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 121 |     pub fn recent_results(&self) -> &[ServerPingResult] {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `setter` is never read
[INFO] [stdout]   --> src/menu/controls.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub(super) struct ControlBindingMeta {
[INFO] [stdout]    |                   ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub setter: fn(&mut ControlBindings, KeyCode),
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `kind` is never read
[INFO] [stdout]   --> src/menu/widgets.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub(super) struct Widget {
[INFO] [stdout]    |                   ------ field in this struct
[INFO] [stdout] 15 |     pub kind: WidgetKind,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Widget` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FLAG_CRYSTAL_SPIN` is never used
[INFO] [stdout]   --> src/mob_parts.rs:33:11
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub const FLAG_CRYSTAL_SPIN: u8 = 1 << 5;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `light` is never read
[INFO] [stdout]     --> src/mob_parts.rs:1725:5
[INFO] [stdout]      |
[INFO] [stdout] 1721 | struct AnimCtx<'a> {
[INFO] [stdout]      |        ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 1725 |     light: f32,
[INFO] [stdout]      |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `region_coord` and `region_uniform_buffer` are never read
[INFO] [stdout]   --> src/presentation/gpu_terrain.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct RenderRegion {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] 45 |     pub region_coord: (i32, i32),
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub region_uniform_buffer: wgpu::Buffer,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `total_indices` is never used
[INFO] [stdout]    --> src/presentation/gpu_terrain.rs:479:19
[INFO] [stdout]     |
[INFO] [stdout] 431 | impl GpuSectionMesh {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 479 |     pub(crate) fn total_indices(&self) -> usize {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `finest_bounds` and `total_indices` are never used
[INFO] [stdout]    --> src/presentation/gpu_terrain.rs:548:19
[INFO] [stdout]     |
[INFO] [stdout] 510 | impl ChunkMesh {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 548 |     pub(crate) fn finest_bounds(&self) -> Option<MeshBounds> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 555 |     pub(crate) fn total_indices(&self) -> usize {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/presentation/interpolation.rs:59:16
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub(crate) struct RemotePlayerState {
[INFO] [stdout]    |                   ----------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 59 |     pub(crate) health: f32,
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 60 |     pub(crate) hunger: f32,
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 61 |     pub(crate) is_dead: bool,
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout] 62 |     pub(crate) spawn_point: Option<[i32; 3]>,
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout] 63 |     pub(crate) spawn_dimension: Option<crate::dimension::Dimension>,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^
[INFO] [stdout] 64 |     pub(crate) is_sleeping: bool,
[INFO] [stdout] 65 |     pub(crate) bed_pos: Option<[i32; 3]>,
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout] 66 |     pub(crate) dimension: crate::dimension::Dimension,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RemotePlayerState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> src/presentation/network_inbound.rs:251:19
[INFO] [stdout]     |
[INFO] [stdout]  79 | impl NetworkStaging {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 251 |     pub(crate) fn len(&self) -> usize {
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `ui_hit` is never used
[INFO] [stdout]    --> src/presentation_click.rs:234:12
[INFO] [stdout]     |
[INFO] [stdout] 213 | impl<S: Copy> InventoryHitProbe<S> {
[INFO] [stdout]     | ---------------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 234 |     pub fn ui_hit(self) -> InventoryHit<S> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sprint_exhaustion_amount` is never used
[INFO] [stdout]    --> src/state.rs:781:4
[INFO] [stdout]     |
[INFO] [stdout] 781 | fn sprint_exhaustion_amount(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_language`, `trigger_advancement`, and `damage_selected_tool` are never used
[INFO] [stdout]     --> src/state.rs:1337:12
[INFO] [stdout]      |
[INFO] [stdout] 1324 | impl State {
[INFO] [stdout]      | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1337 |     pub fn set_language(&mut self, language: crate::localization::Language) {
[INFO] [stdout]      |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 2829 |     pub fn trigger_advancement(&mut self, trigger: crate::advancements::AdvancementTrigger) {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 4274 |     fn damage_selected_tool(&mut self, salt: u32) {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `biome_debug_name` is never used
[INFO] [stdout]     --> src/state.rs:5965:4
[INFO] [stdout]      |
[INFO] [stdout] 5965 | fn biome_debug_name(biome: Biome) -> &'static str {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_item_at_slot` and `refresh_workstations` are never used
[INFO] [stdout]    --> src/presentation/inventory_ui.rs:399:12
[INFO] [stdout]     |
[INFO] [stdout] 138 | impl State {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 399 |     pub fn set_item_at_slot(&mut self, slot: SlotType, stack: Option<ItemStack>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 442 |     pub(super) fn refresh_workstations(&mut self) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shift_held`
[INFO] [stdout]    --> src/app.rs:531:62
[INFO] [stdout]     |
[INFO] [stdout] 531 | fn handle_game_keyboard(state: &mut State, event: &KeyEvent, shift_held: bool) -> bool {
[INFO] [stdout]     |                                                              ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shift_held`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/presentation/frame.rs:3418:13
[INFO] [stdout]      |
[INFO] [stdout] 3418 |         let mut push = |cpu: &mut Vec<u8>,
[INFO] [stdout]      |             ----^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/state.rs:5171:20
[INFO] [stdout]      |
[INFO] [stdout] 5171 |             let Ok(mut status) = slot.status.try_lock() else {
[INFO] [stdout]      |                    ----^^^^^^
[INFO] [stdout]      |                    |
[INFO] [stdout]      |                    help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `count` is never used
[INFO] [stdout]    --> src/accessibility.rs:168:12
[INFO] [stdout]     |
[INFO] [stdout] 159 | impl FocusNavigator {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 168 |     pub fn count(&self) -> usize {
[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 `is_empty` is never used
[INFO] [stdout]    --> src/accessibility.rs:253:12
[INFO] [stdout]     |
[INFO] [stdout] 218 | impl SubtitleQueue {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 253 |     pub fn is_empty(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `xp_reward` is never read
[INFO] [stdout]   --> src/advancements.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct Advancement {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub xp_reward: u32,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Advancement` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `description` is never read
[INFO] [stdout]   --> src/advancements.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct ToastNotification {
[INFO] [stdout]    |            ----------------- field in this struct
[INFO] [stdout] 49 |     pub title: String,
[INFO] [stdout] 50 |     pub description: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ToastNotification` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `hovered_advancement` is never read
[INFO] [stdout]    --> src/advancements.rs:860:9
[INFO] [stdout]     |
[INFO] [stdout] 854 | pub struct AdvancementGui {
[INFO] [stdout]     |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 860 |     pub hovered_advancement: Option<&'static str>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `toggle` is never used
[INFO] [stdout]    --> src/advancements.rs:890:12
[INFO] [stdout]     |
[INFO] [stdout] 866 | impl AdvancementGui {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 890 |     pub fn toggle(&mut self) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_resource_packs` is never used
[INFO] [stdout]    --> src/localization.rs:240:12
[INFO] [stdout]     |
[INFO] [stdout] 206 | impl TranslationCatalog {
[INFO] [stdout]     | ----------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 240 |     pub fn from_resource_packs(manager: &ResourcePackManager, language: Language) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Snow` is never constructed
[INFO] [stdout]   --> src/weather.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub enum Precipitation {
[INFO] [stdout]    |          ------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 38 |     Snow,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Precipitation` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `FurnaceSmelt`, `FurnaceLit`, `ShieldBlock`, and `ShieldBreak` are never constructed
[INFO] [stdout]   --> src/audio.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub enum SoundId {
[INFO] [stdout]    |          ------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 27 |     FurnaceSmelt,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 28 |     FurnaceLit,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 29 |     ShieldBlock,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 30 |     ShieldBreak,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SoundId` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `update_looping_sound_position` are never used
[INFO] [stdout]    --> src/audio.rs:418:12
[INFO] [stdout]     |
[INFO] [stdout] 417 | impl AudioManager {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] 418 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 632 |     pub fn update_looping_sound_position(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `max_slots` is never used
[INFO] [stdout]   --> src/gpu_frame_resources.rs:53:12
[INFO] [stdout]    |
[INFO] [stdout] 45 | impl FrameResourcePool {
[INFO] [stdout]    | ---------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub fn max_slots(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `update_world_metadata` is never used
[INFO] [stdout]    --> src/menu/mod.rs:225:8
[INFO] [stdout]     |
[INFO] [stdout] 225 | pub fn update_world_metadata(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Ping` is never constructed
[INFO] [stdout]   --> src/menu/../server_address_book.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub enum AddressBookError {
[INFO] [stdout]    |          ---------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 39 |     Ping(String),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AddressBookError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `kind` is never read
[INFO] [stdout]   --> src/menu/widgets.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub(super) struct Widget {
[INFO] [stdout]    |                   ------ field in this struct
[INFO] [stdout] 15 |     pub kind: WidgetKind,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Widget` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FLAG_CRYSTAL_SPIN` is never used
[INFO] [stdout]   --> src/mob_parts.rs:33:11
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub const FLAG_CRYSTAL_SPIN: u8 = 1 << 5;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `light` is never read
[INFO] [stdout]     --> src/mob_parts.rs:1725:5
[INFO] [stdout]      |
[INFO] [stdout] 1721 | struct AnimCtx<'a> {
[INFO] [stdout]      |        ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 1725 |     light: f32,
[INFO] [stdout]      |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `region_coord` and `region_uniform_buffer` are never read
[INFO] [stdout]   --> src/presentation/gpu_terrain.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct RenderRegion {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] 45 |     pub region_coord: (i32, i32),
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub region_uniform_buffer: wgpu::Buffer,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `total_indices` is never used
[INFO] [stdout]    --> src/presentation/gpu_terrain.rs:479:19
[INFO] [stdout]     |
[INFO] [stdout] 431 | impl GpuSectionMesh {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 479 |     pub(crate) fn total_indices(&self) -> usize {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `finest_bounds` and `total_indices` are never used
[INFO] [stdout]    --> src/presentation/gpu_terrain.rs:548:19
[INFO] [stdout]     |
[INFO] [stdout] 510 | impl ChunkMesh {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 548 |     pub(crate) fn finest_bounds(&self) -> Option<MeshBounds> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 555 |     pub(crate) fn total_indices(&self) -> usize {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/presentation/interpolation.rs:59:16
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub(crate) struct RemotePlayerState {
[INFO] [stdout]    |                   ----------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 59 |     pub(crate) health: f32,
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 60 |     pub(crate) hunger: f32,
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 61 |     pub(crate) is_dead: bool,
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout] 62 |     pub(crate) spawn_point: Option<[i32; 3]>,
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout] 63 |     pub(crate) spawn_dimension: Option<crate::dimension::Dimension>,
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^
[INFO] [stdout] 64 |     pub(crate) is_sleeping: bool,
[INFO] [stdout] 65 |     pub(crate) bed_pos: Option<[i32; 3]>,
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout] 66 |     pub(crate) dimension: crate::dimension::Dimension,
[INFO] [stdout]    |                ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RemotePlayerState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> src/presentation/network_inbound.rs:251:19
[INFO] [stdout]     |
[INFO] [stdout]  79 | impl NetworkStaging {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 251 |     pub(crate) fn len(&self) -> usize {
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_language`, `trigger_advancement`, and `damage_selected_tool` are never used
[INFO] [stdout]     --> src/state.rs:1337:12
[INFO] [stdout]      |
[INFO] [stdout] 1324 | impl State {
[INFO] [stdout]      | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1337 |     pub fn set_language(&mut self, language: crate::localization::Language) {
[INFO] [stdout]      |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 2829 |     pub fn trigger_advancement(&mut self, trigger: crate::advancements::AdvancementTrigger) {
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 4274 |     fn damage_selected_tool(&mut self, salt: u32) {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_item_at_slot` and `refresh_workstations` are never used
[INFO] [stdout]    --> src/presentation/inventory_ui.rs:399:12
[INFO] [stdout]     |
[INFO] [stdout] 138 | impl State {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 399 |     pub fn set_item_at_slot(&mut self, slot: SlotType, stack: Option<ItemStack>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 442 |     pub(super) fn refresh_workstations(&mut self) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 40s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: wgpu v0.19.4, wgpu-core v0.19.4, wgpu-hal v0.19.5
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 5`
[INFO] running `Command { std: "docker" "inspect" "0c687e8545bfc45612541aeb7aff41e27c74958c5074a0b2ad93a9abf4e4840f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0c687e8545bfc45612541aeb7aff41e27c74958c5074a0b2ad93a9abf4e4840f", kill_on_drop: false }`
[INFO] [stdout] 0c687e8545bfc45612541aeb7aff41e27c74958c5074a0b2ad93a9abf4e4840f
