[INFO] cloning repository https://github.com/VoxanyNet/interceptors
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/VoxanyNet/interceptors" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FVoxanyNet%2Finterceptors", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FVoxanyNet%2Finterceptors'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 0051d0d8f9863667c2a4c11a3fd4192ef1a014d3
[INFO] testing VoxanyNet/interceptors against 1.94.0 for beta-1.95-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FVoxanyNet%2Finterceptors" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-3-tc1/source/.cargo/config.toml
[INFO] started tweaking git repo https://github.com/VoxanyNet/interceptors
[INFO] finished tweaking git repo https://github.com/VoxanyNet/interceptors
[INFO] tweaked toml for git repo https://github.com/VoxanyNet/interceptors written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/VoxanyNet/interceptors on toolchain 1.94.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.94.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/VoxanyNet/interceptors 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" "+1.94.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded serde_arrays v0.2.0
[INFO] [stderr]   Downloaded bit_field v0.10.3
[INFO] [stderr]   Downloaded y4m v0.8.0
[INFO] [stderr]   Downloaded activity-macros v0.9.0
[INFO] [stderr]   Downloaded activity v0.9.0
[INFO] [stderr]   Downloaded bitcode_derive v0.6.5
[INFO] [stderr]   Downloaded activity-sys v0.9.0
[INFO] [stderr]   Downloaded gif v0.14.1
[INFO] [stderr]   Downloaded bitcode v0.6.6
[INFO] [stderr]   Downloaded image-webp v0.2.4
[INFO] [stderr]   Downloaded zune-jpeg v0.5.7
[INFO] [stderr]   Downloaded png v0.18.0
[INFO] [stderr]   Downloaded libfuzzer-sys v0.4.10
[INFO] [stderr]   Downloaded nom v8.0.0
[INFO] [stderr]   Downloaded imgref v1.12.0
[INFO] [stderr]   Downloaded portable-atomic v1.12.0
[INFO] [stderr]   Downloaded bitstream-io v4.9.0
[INFO] [stderr]   Downloaded noise v0.9.0
[INFO] [stderr]   Downloaded exr v1.74.0
[INFO] [stderr]   Downloaded rapier2d v0.32.0
[INFO] [stderr]   Downloaded serde_json v1.0.142
[INFO] [stderr]   Downloaded av1-grain v0.2.5
[INFO] [stderr]   Downloaded built v0.8.0
[INFO] [stderr]   Downloaded ravif v0.12.0
[INFO] [stderr]   Downloaded zune-core v0.5.0
[INFO] [stderr]   Downloaded ena v0.14.3
[INFO] [stderr]   Downloaded robust v1.2.0
[INFO] [stderr]   Downloaded av-scenechange v0.14.1
[INFO] [stderr]   Downloaded spade v2.14.0
[INFO] [stderr]   Downloaded rgb v0.8.52
[INFO] [stderr]   Downloaded lebe v0.5.3
[INFO] [stderr]   Downloaded ordered-float v5.0.0
[INFO] [stderr]   Downloaded parry2d v0.26.0
[INFO] [stderr]   Downloaded serde-wasm-bindgen v0.4.5
[INFO] [stderr]   Downloaded ewebsock v0.8.0
[INFO] [stderr]   Downloaded avif-serialize v0.8.6
[INFO] [stderr]   Downloaded as-slice v0.2.1
[INFO] [stderr]   Downloaded aligned v0.4.3
[INFO] [stderr]   Downloaded glam v0.30.5
[INFO] [stderr]   Downloaded pastey v0.1.1
[INFO] [stderr]   Downloaded glamx v0.1.3
[INFO] [stderr]   Downloaded quad-snd v0.2.8
[INFO] [stderr]   Downloaded pxfm v0.1.27
[INFO] [stderr]   Downloaded cs-utils v0.21.1
[INFO] [stderr]   Downloaded rav1e v0.8.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.94.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 85ac6982db98201658f08a2751fb80caa98f2f21d124e8e2d29e328d68dee3b2
[INFO] running `Command { std: "docker" "start" "-a" "85ac6982db98201658f08a2751fb80caa98f2f21d124e8e2d29e328d68dee3b2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "85ac6982db98201658f08a2751fb80caa98f2f21d124e8e2d29e328d68dee3b2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "85ac6982db98201658f08a2751fb80caa98f2f21d124e8e2d29e328d68dee3b2", kill_on_drop: false }`
[INFO] [stdout] 85ac6982db98201658f08a2751fb80caa98f2f21d124e8e2d29e328d68dee3b2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.94.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3f2c005288900d4069685080739884c30f2a0030a3c3af746106c137bedbc59e
[INFO] running `Command { std: "docker" "start" "-a" "3f2c005288900d4069685080739884c30f2a0030a3c3af746106c137bedbc59e", kill_on_drop: false }`
[INFO] [stderr]    Compiling unicode-ident v1.0.18
[INFO] [stderr]    Compiling proc-macro2 v1.0.95
[INFO] [stderr]    Compiling cfg-if v1.0.1
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling libm v0.2.15
[INFO] [stderr]    Compiling libc v0.2.174
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.100
[INFO] [stderr]    Compiling memchr v2.7.5
[INFO] [stderr]    Compiling typenum v1.18.0
[INFO] [stderr]    Compiling zerocopy v0.8.26
[INFO] [stderr]    Compiling bumpalo v3.19.0
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling rustversion v1.0.21
[INFO] [stderr]    Compiling syn v2.0.104
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling bytemuck v1.23.1
[INFO] [stderr]    Compiling wasm-bindgen v0.2.100
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling version_check v0.9.5
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling anyhow v1.0.99
[INFO] [stderr]    Compiling thiserror v2.0.12
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling flate2 v1.1.2
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling approx v0.5.1
[INFO] [stderr]    Compiling safe_arch v0.7.4
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling regex-syntax v0.8.8
[INFO] [stderr]    Compiling stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling as-slice v0.2.1
[INFO] [stderr]    Compiling hashbrown v0.15.4
[INFO] [stderr]    Compiling wide v0.7.33
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling fdeflate v0.3.7
[INFO] [stderr]    Compiling itoa v1.0.15
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling quad-alsa-sys v0.3.2
[INFO] [stderr]    Compiling built v0.8.0
[INFO] [stderr]    Compiling num-rational v0.4.2
[INFO] [stderr]    Compiling regex-automata v0.4.13
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]    Compiling av-scenechange v0.14.1
[INFO] [stderr]    Compiling rav1e v0.8.1
[INFO] [stderr]    Compiling smallvec v0.6.14
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling aligned v0.4.3
[INFO] [stderr]    Compiling ogg v0.7.1
[INFO] [stderr]    Compiling nom v8.0.0
[INFO] [stderr]    Compiling core2 v0.4.0
[INFO] [stderr]    Compiling bytes v1.10.1
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.100
[INFO] [stderr]    Compiling quick-error v2.0.1
[INFO] [stderr]    Compiling pastey v0.1.1
[INFO] [stderr]    Compiling y4m v0.8.0
[INFO] [stderr]    Compiling cpufeatures v0.2.17
[INFO] [stderr]    Compiling dasp_frame v0.11.0
[INFO] [stderr]    Compiling sha1 v0.10.6
[INFO] [stderr]    Compiling http v1.3.1
[INFO] [stderr]    Compiling maybe-rayon v0.1.1
[INFO] [stderr]    Compiling lewton v0.9.4
[INFO] [stderr]    Compiling bitstream-io v4.9.0
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.100
[INFO] [stderr]    Compiling regex v1.12.2
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling zerocopy-derive v0.8.26
[INFO] [stderr]    Compiling equator-macro v0.4.2
[INFO] [stderr]    Compiling thiserror-impl v2.0.12
[INFO] [stderr]    Compiling equator v0.4.2
[INFO] [stderr]    Compiling aligned-vec v0.6.4
[INFO] [stderr]    Compiling v_frame v0.3.9
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.100
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]    Compiling profiling-procmacros v1.0.17
[INFO] [stderr]    Compiling profiling v1.0.17
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling nalgebra-macros v0.3.0
[INFO] [stderr]    Compiling arg_enum_proc_macro v0.3.4
[INFO] [stderr]    Compiling fax_derive v0.2.0
[INFO] [stderr]    Compiling simd_helpers v0.1.0
[INFO] [stderr]    Compiling js-sys v0.3.77
[INFO] [stderr]    Compiling zune-core v0.4.12
[INFO] [stderr]    Compiling new_debug_unreachable v1.0.6
[INFO] [stderr]    Compiling foldhash v0.2.0
[INFO] [stderr]    Compiling hound v3.5.1
[INFO] [stderr]    Compiling imgref v1.12.0
[INFO] [stderr]    Compiling noop_proc_macro v0.3.0
[INFO] [stderr]    Compiling data-encoding v2.9.0
[INFO] [stderr]    Compiling weezl v0.1.12
[INFO] [stderr]    Compiling robust v1.2.0
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling quad-snd v0.2.8
[INFO] [stderr]    Compiling audrey v0.3.0
[INFO] [stderr]    Compiling loop9 v0.1.5
[INFO] [stderr]    Compiling zune-jpeg v0.4.21
[INFO] [stderr]    Compiling png v0.17.16
[INFO] [stderr]    Compiling fax v0.2.6
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling pxfm v0.1.27
[INFO] [stderr]    Compiling ordered-float v5.0.0
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling is-terminal v0.4.17
[INFO] [stderr]    Compiling zune-inflate v0.2.54
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling arrayvec v0.7.6
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling bitflags v2.9.1
[INFO] [stderr]    Compiling glam v0.30.5
[INFO] [stderr]    Compiling av1-grain v0.2.5
[INFO] [stderr]    Compiling simba v0.9.1
[INFO] [stderr]    Compiling avif-serialize v0.8.6
[INFO] [stderr]    Compiling wasm-bindgen-futures v0.4.50
[INFO] [stderr]    Compiling web-sys v0.3.77
[INFO] [stderr]    Compiling serde_arrays v0.2.0
[INFO] [stderr]    Compiling spade v2.14.0
[INFO] [stderr]    Compiling ena v0.14.3
[INFO] [stderr]    Compiling byteorder-lite v0.1.0
[INFO] [stderr]    Compiling slab v0.4.10
[INFO] [stderr]    Compiling bit_field v0.10.3
[INFO] [stderr]    Compiling clap_lex v0.7.6
[INFO] [stderr]    Compiling lebe v0.5.3
[INFO] [stderr]    Compiling humantime v2.3.0
[INFO] [stderr]    Compiling downcast-rs v2.0.1
[INFO] [stderr]    Compiling serde_json v1.0.142
[INFO] [stderr]    Compiling litrs v0.4.2
[INFO] [stderr]    Compiling rgb v0.8.52
[INFO] [stderr]    Compiling zune-core v0.5.0
[INFO] [stderr]    Compiling env_logger v0.10.2
[INFO] [stderr]    Compiling fontdue v0.9.3
[INFO] [stderr]    Compiling document-features v0.2.11
[INFO] [stderr]    Compiling zune-jpeg v0.5.7
[INFO] [stderr]    Compiling exr v1.74.0
[INFO] [stderr]    Compiling clap_builder v4.5.53
[INFO] [stderr]    Compiling moxcms v0.7.11
[INFO] [stderr]    Compiling image-webp v0.2.4
[INFO] [stderr]    Compiling activity-macros v0.9.0
[INFO] [stderr]    Compiling serde-wasm-bindgen v0.4.5
[INFO] [stderr]    Compiling ravif v0.12.0
[INFO] [stderr]    Compiling activity-sys v0.9.0
[INFO] [stderr]    Compiling tungstenite v0.24.0
[INFO] [stderr]    Compiling png v0.18.0
[INFO] [stderr]    Compiling bit-vec v0.8.0
[INFO] [stderr]    Compiling vec_map v0.8.2
[INFO] [stderr]    Compiling glam v0.27.0
[INFO] [stderr]    Compiling nalgebra v0.34.1
[INFO] [stderr]    Compiling image v0.24.9
[INFO] [stderr]    Compiling tiff v0.10.3
[INFO] [stderr]    Compiling miniquad v0.4.8
[INFO] [stderr]    Compiling gif v0.14.1
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling clap_derive v4.5.49
[INFO] [stderr]    Compiling bitcode_derive v0.6.5
[INFO] [stderr]    Compiling strum_macros v0.27.2
[INFO] [stderr]    Compiling env_filter v0.1.4
[INFO] [stderr]    Compiling rand_xorshift v0.3.0
[INFO] [stderr]    Compiling qoi v0.4.1
[INFO] [stderr]    Compiling include_dir_macros v0.7.4
[INFO] [stderr]    Compiling glob v0.3.3
[INFO] [stderr]    Compiling rustc-hash v2.1.1
[INFO] [stderr]    Compiling ryu v1.0.20
[INFO] [stderr]    Compiling jiff v0.2.15
[INFO] [stderr]    Compiling bitcode v0.6.6
[INFO] [stderr]    Compiling clap v4.5.53
[INFO] [stderr]    Compiling macroquad v0.4.14
[INFO] [stderr]    Compiling strum v0.27.2
[INFO] [stderr]    Compiling include_dir v0.7.4
[INFO] [stderr]    Compiling image v0.25.9
[INFO] [stderr]    Compiling noise v0.9.0
[INFO] [stderr]    Compiling derive_more v2.1.1
[INFO] [stderr]    Compiling ewebsock v0.8.0
[INFO] [stderr]    Compiling activity v0.9.0
[INFO] [stderr]    Compiling pretty_env_logger v0.5.0
[INFO] [stderr]    Compiling tungstenite v0.23.0
[INFO] [stderr]    Compiling cs-utils v0.21.1
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling colored v3.0.0
[INFO] [stderr]    Compiling env_logger v0.11.8
[INFO] [stderr]    Compiling web-time v1.1.0
[INFO] [stderr]    Compiling glamx v0.1.3
[INFO] [stderr]    Compiling parry2d v0.26.0
[INFO] [stderr]    Compiling rapier2d v0.32.0
[INFO] [stderr]    Compiling interceptors v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Path`
[INFO] [stdout]  --> src/lib.rs:1:129
[INFO] [stdout]   |
[INFO] [stdout] 1 | ...:PI, fs::read_to_string, net::{TcpListener, TcpStream}, path::{Path, PathBuf}, process::exit, str::FromStr};
[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: `glamx::IVec2`
[INFO] [stdout]  --> src/lib.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use glamx::IVec2;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `prelude::load_material`
[INFO] [stdout]  --> src/lib.rs:6:148
[INFO] [stdout]   |
[INFO] [stdout] 6 | ..._released, mouse_position}, math::{Rect, Vec2, vec2}, prelude::load_material, shapes::DrawRectangleParams, texture::{DrawTexturePa...
[INFO] [stdout]   |                                                          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AxisMask`, `VoxelData`, and `VoxelsChunkRef`
[INFO] [stdout]  --> src/lib.rs:7:45
[INFO] [stdout]   |
[INFO] [stdout] 7 | ..., prelude::{AxisMask, ColliderBuilder, ColliderHandle, QueryFilter, RigidBodyHandle, VoxelData, Voxels, VoxelsChunkRef}};
[INFO] [stdout]   |                ^^^^^^^^                                                                 ^^^^^^^^^          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `collections::VecDeque`
[INFO] [stdout]  --> src/area.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::VecDeque, path::PathBuf, str::FromStr};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `WHITE`, `clear_background`, `draw_rectangle`, `gl_use_default_material`, `gl_use_material`, `screen_height`, `screen_width`, and `time::get_time`
[INFO] [stdout]  --> src/area.rs:4:48
[INFO] [stdout]   |
[INFO] [stdout] 4 | ...D, WHITE}, input::{KeyCode, is_key_released}, math::Rect, prelude::{gl_use_default_material, gl_use_material}, shapes::{draw_circle, draw_rectangle}, time::get_time, window::{clear_background, screen_height, screen_width}};
[INFO] [stdout]   |       ^^^^^                                                            ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^                         ^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^           ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `test`
[INFO] [stdout]   --> src/area.rs:11:14
[INFO] [stdout]    |
[INFO] [stdout] 11 | macro_rules! test {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `camera::Camera2D`, `is_key_pressed`, and `mouse_position`
[INFO] [stdout]  --> src/player.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | ...::{camera::Camera2D, color::{BLACK, WHITE}, input::{KeyCode, is_key_down, is_key_pressed, is_mouse_button_down, is_mouse_button_released, mouse_position, m...
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^                                                       ^^^^^^^^^^^^^^                                                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `bullet_trail::BulletTrail`, `dissolved_pixel::DissolvedPixel`, `enemy::Enemy`, `prop::Prop`, `weapon::weapon::WeaponOwner`, and `weapon_fire_context::WeaponFireContext`
[INFO] [stdout]   --> src/player.rs:10:149
[INFO] [stdout]    |
[INFO] [stdout] 10 | ...t, bullet_trail::BulletTrail, computer::{Item, ItemSave}, dissolved_pixel::DissolvedPixel, drawable::{DrawContext, Drawable}, dropped_item::{DroppedItem, RemoveDroppedItemUpdate}, enemy::Enemy, font_loader::FontLoader, get_angle_between_rapier_points, inventory::Inventory, mouse_world_pos, prop::Prop, rapier_mouse_world_pos, rapier_to_macroquad, space::Space, texture_loader::ClientTextureLoader, tile::Tile, updates::NetworkPacket, uuid_u64, weapons::{bullet_impact_data::BulletImpactData, weapon::weapon::WeaponOwner, weapon_fire_context::WeaponFireContext, w...
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                                           ^^^^^^^^^^^^                                                                                                   ^^^^^^^^^^                                                                                                                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]     --> src/player.rs:1020:16
[INFO] [stdout]      |
[INFO] [stdout] 1020 |             if (collider_handle == self.body.collider_handle) {
[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] 1020 -             if (collider_handle == self.body.collider_handle) {
[INFO] [stdout] 1020 +             if collider_handle == self.body.collider_handle  {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]     --> src/player.rs:1026:16
[INFO] [stdout]      |
[INFO] [stdout] 1026 |             if (collider_handle == self.head.collider_handle) {
[INFO] [stdout]      |                ^                                            ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1026 -             if (collider_handle == self.head.collider_handle) {
[INFO] [stdout] 1026 +             if collider_handle == self.head.collider_handle  {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BLUE`, `GREEN`, `MaterialParams`, `TextParams`, `VIOLET`, `audio::play_sound_once`, `draw_circle`, `draw_text_ex`, `draw_text`, and `load_material`
[INFO] [stdout]  --> src/prop.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | ...::{audio::play_sound_once, camera::{Camera2D, set_camera}, color::{BLACK, BLUE, Color, GREEN, RED, VIOLET, WHITE}, math::{Rect, Vec2}, prelude::{MaterialParams, gl_use_default_material, gl_use_material, load_material}, shapes::{draw_circle, draw_rectangle}, text::{TextParams, draw_text, draw_text_ex}, ...
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^^^^^                                                 ^^^^         ^^^^^       ^^^^^^                                        ^^^^^^^^^^^^^^                                            ^^^^^^^^^^^^^            ^^^^^^^^^^^                          ^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AxisMask`
[INFO] [stdout]  --> src/prop.rs:8:25
[INFO] [stdout]   |
[INFO] [stdout] 8 | use rapier2d::prelude::{AxisMask, ColliderBuilder, ColliderHandle, RigidBodyBuilder, RigidBodyHandle, RigidBodyType, RigidBodyVelocit...
[INFO] [stdout]   |                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Area` and `ClientId`
[INFO] [stdout]   --> src/prop.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::{ClientId, ClientTickContext, Owner, Prefabs, TextureLoader, TickContext, area::{Area, AreaContext, AreaId}, dissolved_pi...
[INFO] [stdout]    |             ^^^^^^^^                                                                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]     --> src/prop.rs:1000:17
[INFO] [stdout]      |
[INFO] [stdout] 1000 |                 (removed_voxel.x as f32 * (8. / self.scale)), 
[INFO] [stdout]      |                 ^                                          ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1000 -                 (removed_voxel.x as f32 * (8. / self.scale)), 
[INFO] [stdout] 1000 +                 removed_voxel.x as f32 * (8. / self.scale), 
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]     --> src/prop.rs:1001:17
[INFO] [stdout]      |
[INFO] [stdout] 1001 |                 ((((removed_voxel.y as f32 * (8. / self.scale)) * -1.) + texture.height()) - (8. / self.scale)),
[INFO] [stdout]      |                 ^                                                                                             ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1001 -                 ((((removed_voxel.y as f32 * (8. / self.scale)) * -1.) + texture.height()) - (8. / self.scale)),
[INFO] [stdout] 1001 +                 (((removed_voxel.y as f32 * (8. / self.scale)) * -1.) + texture.height()) - (8. / self.scale),
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ClientId`
[INFO] [stdout]  --> src/bullet_trail.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::{ClientId, Owner, TickContext, area::AreaId, drawable::Drawable, rapier_to_macroquad, uuid_u64};
[INFO] [stdout]   |             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `bullet_trail::BulletTrail`, `dissolved_pixel::DissolvedPixel`, `self`, and `weapon_fire_context::WeaponFireContext`
[INFO] [stdout]  --> src/enemy.rs:8:82
[INFO] [stdout]   |
[INFO] [stdout] 8 | ...::{self, AreaContext, AreaId}, body_part::BodyPart, bullet_trail::BulletTrail, collider_groups::{BODY_PART_GROUP, DETACHED_BODY_PART_GROUP}, dissolved_pixel::DissolvedPixel, drawable::{DrawContext, Drawable}, get_angle_between_rapier_points, player::{Facing, Player, PlayerId}, prop::Prop, rapier_to_macroquad, space::Space, updates::NetworkPacket, uuid_u64, weapons::{bullet_impact_data::BulletImpactData, weapon::weapon::WeaponOwner, weapon_fire_context::WeaponFireContext, w...
[INFO] [stdout]   |       ^^^^                                             ^^^^^^^^^^^^^^^^^^^^^^^^^                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                                                                                                                                                                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `math::Vector`
[INFO] [stdout]  --> src/weapons/weapon/weapon.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 | use rapier2d::{math::Vector, prelude::{ColliderHandle, ImpulseJointHandle, InteractionGroups, RevoluteJointBuilder, RigidBodyBuilder,...
[INFO] [stdout]   |                ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AreaId`, `ClientId`, `Owner`, `SwapIter`, `self`, and `weapon_fire_context::WeaponFireContext`
[INFO] [stdout]  --> src/weapons/weapon/weapon.rs:9:13
[INFO] [stdout]   |
[INFO] [stdout] 9 | ...::{ClientId, ClientTickContext, Owner, SwapIter, TickContext, area::{self, AreaContext, AreaId}, bullet_trail::{BulletTrail, SpawnBulletTrail}, collider_from_texture_size, draw_preview, draw_texture_onto_physics_body, enemy::EnemyId, get_intersections, get_preview_resolution, player::{Facing, PlayerContext, PlayerId}, prop::StupidDissolvedPixelVelocityUpdate, space::Space, texture_loader::ClientTextureLoader, weapons::{bullet_impact_data::BulletImpactData, weapon::weapon_save::WeaponSave, weapon_fire_context::WeaponFireContext, w...
[INFO] [stdout]   |       ^^^^^^^^                     ^^^^^  ^^^^^^^^                      ^^^^               ^^^^^^                                                                                                                                                                                                                                                                                                                                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ClientId`
[INFO] [stdout]  --> src/weapons/weapon/weapon_save.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::{ClientId, weapons::weapon::weapon::WeaponOwner};
[INFO] [stdout]   |             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ClientId`, `PlayerContext`, and `weapon_fire_context::WeaponFireContext`
[INFO] [stdout]  --> src/weapons/shotgun/weapon.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | ...::{ClientId, TickContext, area::AreaContext, player::{Facing, PlayerContext}, space::Space, texture_loader::ClientTextureLoader, weapons::{shotgun::weapon_save::ShotgunSave, weapon::weapon::{WeaponBase, WeaponOwner}, weapon_fire_context::WeaponFireContext, w...
[INFO] [stdout]   |       ^^^^^^^^                                                   ^^^^^^^^^^^^^                                                                                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ClientId`, `PlayerContext`, and `weapon_fire_context::WeaponFireContext`
[INFO] [stdout]  --> src/weapons/lmg/weapon.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | ...::{ClientId, TickContext, area::AreaContext, player::{Facing, PlayerContext}, space::Space, texture_loader::ClientTextureLoader, weapons::{lmg::weapon_save::LMGSave, weapon::weapon::{WeaponBase, WeaponOwner}, weapon_fire_context::WeaponFireContext, w...
[INFO] [stdout]   |       ^^^^^^^^                                                   ^^^^^^^^^^^^^                                                                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ClientId`, `PlayerContext`, and `weapon_fire_context::WeaponFireContext`
[INFO] [stdout]  --> src/weapons/smg/weapon.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | ...::{ClientId, TickContext, area::AreaContext, player::{Facing, PlayerContext}, space::Space, texture_loader::ClientTextureLoader, weapons::{smg::weapon_save::SMGSave, weapon::weapon::{WeaponBase, WeaponOwner}, weapon_fire_context::WeaponFireContext, w...
[INFO] [stdout]   |       ^^^^^^^^                                                   ^^^^^^^^^^^^^                                                                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AreaContext`, `AreaId`, `Player`, `TickContext`, `bullet_trail::BulletTrail`, `dissolved_pixel::DissolvedPixel`, `enemy::Enemy`, `prop::Prop`, and `space::Space`
[INFO] [stdout]  --> src/weapons/weapon_fire_context.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | ...::{TickContext, area::{AreaContext, AreaId}, bullet_trail::BulletTrail, dissolved_pixel::DissolvedPixel, enemy::Enemy, player::{Facing, Player}, prop::Prop, space::Space, w...
[INFO] [stdout]   |       ^^^^^^^^^^^         ^^^^^^^^^^^  ^^^^^^   ^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^                   ^^^^^^   ^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Player` and `weapon_fire_context::WeaponFireContext`
[INFO] [stdout]  --> src/weapons/weapon_type.rs:5:83
[INFO] [stdout]   |
[INFO] [stdout] 5 | ...g, Player, PlayerContext}, space::Space, texture_loader::ClientTextureLoader, weapons::{lmg::weapon::LMG, shotgun::weapon::Shotgun, smg::weapon::SMG, weapon_fire_context::WeaponFireContext, w...
[INFO] [stdout]   |       ^^^^^^                                                                                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `collections::HashSet`
[INFO] [stdout]  --> src/prop_fragment.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashSet, path::PathBuf};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `rapier2d::dynamics::RigidBodyBuilder::position`: renamed to `RigidBodyBuilder::pose`
[INFO] [stdout]   --> src/dropped_item.rs:64:18
[INFO] [stdout]    |
[INFO] [stdout] 64 |                 .position(save.pos)
[INFO] [stdout]    |                  ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `rapier2d::dynamics::RigidBodyBuilder::position`: renamed to `RigidBodyBuilder::pose`
[INFO] [stdout]    --> src/dropped_item.rs:119:18
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 .position(pos)
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `rapier2d::dynamics::RigidBodyBuilder::position`: renamed to `RigidBodyBuilder::pose`
[INFO] [stdout]   --> src/dissolved_pixel.rs:83:18
[INFO] [stdout]    |
[INFO] [stdout] 83 |                 .position(pos)
[INFO] [stdout]    |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Pixel`
[INFO] [stdout]  --> src/prop.rs:6:31
[INFO] [stdout]   |
[INFO] [stdout] 6 | use image::{GenericImageView, Pixel};
[INFO] [stdout]   |                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `camera_to_screen_ratio`
[INFO] [stdout]    --> src/player.rs:373:13
[INFO] [stdout]     |
[INFO] [stdout] 373 |         let camera_to_screen_ratio = Vec2 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_camera_to_screen_ratio`
[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/player.rs:600:21
[INFO] [stdout]     |
[INFO] [stdout] 600 |                 let mut player_context = PlayerContext {
[INFO] [stdout]     |                     ----^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/player.rs:664:9
[INFO] [stdout]     |
[INFO] [stdout] 664 |         ctx: &mut ClientTickContext, 
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `area_context`
[INFO] [stdout]    --> src/player.rs:665:9
[INFO] [stdout]     |
[INFO] [stdout] 665 |         area_context: &mut AreaContext
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_area_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/player.rs:727:9
[INFO] [stdout]     |
[INFO] [stdout] 727 |         ctx: &mut ClientTickContext,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/player.rs:752:9
[INFO] [stdout]     |
[INFO] [stdout] 752 |         ctx: &mut ClientTickContext,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/player.rs:987:9
[INFO] [stdout]     |
[INFO] [stdout] 987 |         ctx: &mut ClientTickContext,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `collider`
[INFO] [stdout]     --> src/player.rs:1008:31
[INFO] [stdout]      |
[INFO] [stdout] 1008 |         for (collider_handle, collider, ray_intersection) in query_pipeline.intersect_ray(
[INFO] [stdout]      |                               ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_collider`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]    --> src/prop.rs:152:14
[INFO] [stdout]     |
[INFO] [stdout] 152 |         for (idx, seed) in potential_island_seeds
[INFO] [stdout]     |              ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/prop.rs:488:56
[INFO] [stdout]     |
[INFO] [stdout] 488 |     pub fn play_impact_sound(&mut self, space: &Space, ctx: &mut ClientTickContext) {
[INFO] [stdout]     |                                                        ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `voxels`
[INFO] [stdout]    --> src/prop.rs:514:13
[INFO] [stdout]     |
[INFO] [stdout] 514 |         let voxels = space.collider_set.get_mut(self.collider_handle).unwrap().shape_mut().as_voxels_mut().unwrap();
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_voxels`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `then`
[INFO] [stdout]     --> src/prop.rs:1102:13
[INFO] [stdout]      |
[INFO] [stdout] 1102 |         let then = web_time::Instant::now();
[INFO] [stdout]      |             ^^^^ help: if this is intentional, prefix it with an underscore: `_then`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `collider`
[INFO] [stdout]     --> src/prop.rs:1108:13
[INFO] [stdout]      |
[INFO] [stdout] 1108 |         let collider = draw_context.space.collider_set.get(self.collider_handle).unwrap();
[INFO] [stdout]      |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_collider`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `color` is assigned to, but never used
[INFO] [stdout]     --> src/prop.rs:1159:13
[INFO] [stdout]      |
[INFO] [stdout] 1159 |         let mut color = WHITE;
[INFO] [stdout]      |             ^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_color` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `color` is never read
[INFO] [stdout]     --> src/prop.rs:1160:9
[INFO] [stdout]      |
[INFO] [stdout] 1160 |         color.a = 0.5;
[INFO] [stdout]      |         ^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout]      = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `then`
[INFO] [stdout]    --> src/enemy.rs:660:13
[INFO] [stdout]     |
[INFO] [stdout] 660 |         let then = web_time::Instant::now();
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_then`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `lowest_distance` is never read
[INFO] [stdout]    --> src/enemy.rs:789:21
[INFO] [stdout]     |
[INFO] [stdout] 789 |                     lowest_distance = distance;
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/weapons/weapon/weapon.rs:315:9
[INFO] [stdout]     |
[INFO] [stdout] 315 |         ctx: &mut TickContext,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `area_context`
[INFO] [stdout]    --> src/weapons/weapon/weapon.rs:316:9
[INFO] [stdout]     |
[INFO] [stdout] 316 |         area_context: &mut AreaContext,
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_area_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `player_context`
[INFO] [stdout]    --> src/weapons/weapon/weapon.rs:317:9
[INFO] [stdout]     |
[INFO] [stdout] 317 |         player_context: &mut PlayerContext,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_player_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `impacts`
[INFO] [stdout]    --> src/weapons/weapon/weapon.rs:318:9
[INFO] [stdout]     |
[INFO] [stdout] 318 |         impacts: Vec<BulletImpactData>,
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_impacts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `entry_index` is never read
[INFO] [stdout]    --> src/editor_context_menu.rs:287:13
[INFO] [stdout]     |
[INFO] [stdout] 287 |             entry_index += 1;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `round_to_nearest` is never used
[INFO] [stdout]    --> src/lib.rs:859:4
[INFO] [stdout]     |
[INFO] [stdout] 859 | fn round_to_nearest(x: i32, n: i32) -> i32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]     --> src/player.rs:1235:5
[INFO] [stdout]      |
[INFO] [stdout] 1230 | pub struct PlayerContext<'a> {
[INFO] [stdout]      |            ------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 1235 |     max_speed: &'a mut Vec2,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] 1236 |     pub owner: &'a mut Owner,
[INFO] [stdout] 1237 |     previous_velocity: &'a mut RigidBodyVelocity<f32>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 1238 |     head_joint_handle: &'a mut Option<ImpulseJointHandle>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 1239 |     pub facing: &'a mut Facing,
[INFO] [stdout] 1240 |     cursor_pos_rapier: &'a mut glamx::Vec2,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 1241 |     previous_cursor_pos: &'a mut glamx::Vec2,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1244 |     junk: &'a mut Vec<ItemSlot>, // you can hold unlimited junk
[INFO] [stdout]      |     ^^^^
[INFO] [stdout] 1245 |     last_changed_inventory_slot: &'a mut web_time::Instant,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 1246 |     pub previous_selected_item: &'a mut usize,
[INFO] [stdout] 1247 |     last_dash: &'a mut web_time::Instant,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] 1248 |     previous_pos: &'a mut Pose2,
[INFO] [stdout]      |     ^^^^^^^^^^^^
[INFO] [stdout] 1249 |     last_position_update: &'a mut web_time::Instant,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 1250 |     last_autofire: &'a mut web_time::Instant,
[INFO] [stdout]      |     ^^^^^^^^^^^^^
[INFO] [stdout] 1251 |     flying: &'a mut bool,
[INFO] [stdout]      |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `scale` and `owner` are never read
[INFO] [stdout]   --> src/body_part.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct BodyPart {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     scale: u16, 
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 13 |     owner: Owner,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BodyPart` 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 `cost` is never read
[INFO] [stdout]   --> src/computer.rs:70:5
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub struct StoreItem {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 70 |     cost: u32,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `previous_velocity` is never read
[INFO] [stdout]   --> src/dropped_item.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct DroppedItem {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 32 |     previous_velocity: RigidBodyVelocity<f32>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DroppedItem` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `body_handle` and `collider_handle` are never read
[INFO] [stdout]  --> src/junk.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Junk {
[INFO] [stdout]   |            ---- fields in this struct
[INFO] [stdout] 4 |     body_handle: RigidBodyHandle,
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 5 |     collider_handle: ColliderHandle,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `texture`, `texture_source`, `body`, `collider`, and `scale` are never read
[INFO] [stdout]   --> src/fragment.rs:9:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct Fragment {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout]  9 |     texture: PathBuf,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 10 |     texture_source: Rect,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 11 |     body: RigidBodyHandle,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 12 |     collider: ColliderHandle,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 13 |     scale: f32
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `collider` is never read
[INFO] [stdout]   --> src/prop_fragment.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct PropFragment {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 10 |     sprite_path: PathBuf,
[INFO] [stdout] 11 |     collider: ColliderHandle,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ColliderBuilder`
[INFO] [stdout]  --> src/client/client.rs:5:40
[INFO] [stdout]   |
[INFO] [stdout] 5 | use rapier2d::{math::Vector, prelude::{ColliderBuilder, SharedShape}};
[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: `AreaId`
[INFO] [stdout]  --> src/server/server.rs:3:119
[INFO] [stdout]   |
[INFO] [stdout] 3 | use interceptors_lib::{ClientId, Owner, Prefabs, ServerAssets, ServerIO, ServerTickContext, TickContext, area::{Area, AreaId, AreaSav...
[INFO] [stdout]   |                                                                                                                       ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/server/server.rs:219:21
[INFO] [stdout]     |
[INFO] [stdout] 217 |                       panic!();
[INFO] [stdout]     |                       -------- any code following this expression is unreachable
[INFO] [stdout] 218 |                       // just forward it for now
[INFO] [stdout] 219 | /                     self.network_io.send_all_except(
[INFO] [stdout] 220 | |                         network_packet, 
[INFO] [stdout] 221 | |                         client_id
[INFO] [stdout] 222 | |                     );
[INFO] [stdout]     | |______________________^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `material`, `spawned`, and `test_button` are never read
[INFO] [stdout]   --> src/client/client.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct Client {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 22 |     material: Material,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     spawned: bool,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 29 |     fonts: FontLoader,
[INFO] [stdout] 30 |     test_button: Button,
[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 `update_camera_to_match_screen_size` is never used
[INFO] [stdout]    --> src/client/client.rs:605:12
[INFO] [stdout]     |
[INFO] [stdout] 170 | impl Client {
[INFO] [stdout]     | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 605 |     pub fn update_camera_to_match_screen_size(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `played_radio_chatter` and `start` are never read
[INFO] [stdout]   --> src/client/main_menu.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct MainMenu {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     played_radio_chatter: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 17 |     start: web_time::Instant,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `draw_coords`, `reload_textures`, and `play_radio_chatter` are never used
[INFO] [stdout]    --> src/client/main_menu.rs:25:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl MainMenu {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  25 |     pub fn draw_coords(&self, cursor: Vec2) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  33 |     async fn reload_textures(&mut self) {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 178 |     fn play_radio_chatter(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `update`
[INFO] [stdout]    --> src/server/server.rs:216:45
[INFO] [stdout]     |
[INFO] [stdout] 216 |                 NetworkPacket::SetPropVoxel(update) => {
[INFO] [stdout]     |                                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_update`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `round_to_nearest_50` is never used
[INFO] [stdout]   --> src/editor/main.rs:30:4
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn round_to_nearest_50(n: f32) -> f32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `last_cursor_move` is never read
[INFO] [stdout]   --> src/editor/editor.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct AreaEditor {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 35 |     last_cursor_move: web_time::Instant,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 5m 12s
[INFO] running `Command { std: "docker" "inspect" "3f2c005288900d4069685080739884c30f2a0030a3c3af746106c137bedbc59e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3f2c005288900d4069685080739884c30f2a0030a3c3af746106c137bedbc59e", kill_on_drop: false }`
[INFO] [stdout] 3f2c005288900d4069685080739884c30f2a0030a3c3af746106c137bedbc59e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.94.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] adc410691bf179724ef382f3043ac9f1702e92c09a40f15cf3d37fdcf6449ba3
[INFO] running `Command { std: "docker" "start" "-a" "adc410691bf179724ef382f3043ac9f1702e92c09a40f15cf3d37fdcf6449ba3", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `Path`
[INFO] [stdout]  --> src/lib.rs:1:129
[INFO] [stdout]   |
[INFO] [stdout] 1 | ...:PI, fs::read_to_string, net::{TcpListener, TcpStream}, path::{Path, PathBuf}, process::exit, str::FromStr};
[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: `glamx::IVec2`
[INFO] [stdout]  --> src/lib.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use glamx::IVec2;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `prelude::load_material`
[INFO] [stdout]  --> src/lib.rs:6:148
[INFO] [stdout]   |
[INFO] [stdout] 6 | ..._released, mouse_position}, math::{Rect, Vec2, vec2}, prelude::load_material, shapes::DrawRectangleParams, texture::{DrawTexturePa...
[INFO] [stdout]   |                                                          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AxisMask`, `VoxelData`, and `VoxelsChunkRef`
[INFO] [stdout]  --> src/lib.rs:7:45
[INFO] [stdout]   |
[INFO] [stdout] 7 | ..., prelude::{AxisMask, ColliderBuilder, ColliderHandle, QueryFilter, RigidBodyHandle, VoxelData, Voxels, VoxelsChunkRef}};
[INFO] [stdout]   |                ^^^^^^^^                                                                 ^^^^^^^^^          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `collections::VecDeque`
[INFO] [stdout]  --> src/area.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::VecDeque, path::PathBuf, str::FromStr};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `WHITE`, `clear_background`, `draw_rectangle`, `gl_use_default_material`, `gl_use_material`, `screen_height`, `screen_width`, and `time::get_time`
[INFO] [stdout]  --> src/area.rs:4:48
[INFO] [stdout]   |
[INFO] [stdout] 4 | ...D, WHITE}, input::{KeyCode, is_key_released}, math::Rect, prelude::{gl_use_default_material, gl_use_material}, shapes::{draw_circle, draw_rectangle}, time::get_time, window::{clear_background, screen_height, screen_width}};
[INFO] [stdout]   |       ^^^^^                                                            ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^                         ^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^           ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `test`
[INFO] [stdout]   --> src/area.rs:11:14
[INFO] [stdout]    |
[INFO] [stdout] 11 | macro_rules! test {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `camera::Camera2D`, `is_key_pressed`, and `mouse_position`
[INFO] [stdout]  --> src/player.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | ...::{camera::Camera2D, color::{BLACK, WHITE}, input::{KeyCode, is_key_down, is_key_pressed, is_mouse_button_down, is_mouse_button_released, mouse_position, m...
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^                                                       ^^^^^^^^^^^^^^                                                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `bullet_trail::BulletTrail`, `dissolved_pixel::DissolvedPixel`, `enemy::Enemy`, `prop::Prop`, `weapon::weapon::WeaponOwner`, and `weapon_fire_context::WeaponFireContext`
[INFO] [stdout]   --> src/player.rs:10:149
[INFO] [stdout]    |
[INFO] [stdout] 10 | ...t, bullet_trail::BulletTrail, computer::{Item, ItemSave}, dissolved_pixel::DissolvedPixel, drawable::{DrawContext, Drawable}, dropped_item::{DroppedItem, RemoveDroppedItemUpdate}, enemy::Enemy, font_loader::FontLoader, get_angle_between_rapier_points, inventory::Inventory, mouse_world_pos, prop::Prop, rapier_mouse_world_pos, rapier_to_macroquad, space::Space, texture_loader::ClientTextureLoader, tile::Tile, updates::NetworkPacket, uuid_u64, weapons::{bullet_impact_data::BulletImpactData, weapon::weapon::WeaponOwner, weapon_fire_context::WeaponFireContext, w...
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                                           ^^^^^^^^^^^^                                                                                                   ^^^^^^^^^^                                                                                                                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]     --> src/player.rs:1020:16
[INFO] [stdout]      |
[INFO] [stdout] 1020 |             if (collider_handle == self.body.collider_handle) {
[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] 1020 -             if (collider_handle == self.body.collider_handle) {
[INFO] [stdout] 1020 +             if collider_handle == self.body.collider_handle  {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]     --> src/player.rs:1026:16
[INFO] [stdout]      |
[INFO] [stdout] 1026 |             if (collider_handle == self.head.collider_handle) {
[INFO] [stdout]      |                ^                                            ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1026 -             if (collider_handle == self.head.collider_handle) {
[INFO] [stdout] 1026 +             if collider_handle == self.head.collider_handle  {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BLUE`, `GREEN`, `MaterialParams`, `TextParams`, `VIOLET`, `audio::play_sound_once`, `draw_circle`, `draw_text_ex`, `draw_text`, and `load_material`
[INFO] [stdout]  --> src/prop.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | ...::{audio::play_sound_once, camera::{Camera2D, set_camera}, color::{BLACK, BLUE, Color, GREEN, RED, VIOLET, WHITE}, math::{Rect, Vec2}, prelude::{MaterialParams, gl_use_default_material, gl_use_material, load_material}, shapes::{draw_circle, draw_rectangle}, text::{TextParams, draw_text, draw_text_ex}, ...
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^^^^^                                                 ^^^^         ^^^^^       ^^^^^^                                        ^^^^^^^^^^^^^^                                            ^^^^^^^^^^^^^            ^^^^^^^^^^^                          ^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AxisMask`
[INFO] [stdout]  --> src/prop.rs:8:25
[INFO] [stdout]   |
[INFO] [stdout] 8 | use rapier2d::prelude::{AxisMask, ColliderBuilder, ColliderHandle, RigidBodyBuilder, RigidBodyHandle, RigidBodyType, RigidBodyVelocit...
[INFO] [stdout]   |                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Area` and `ClientId`
[INFO] [stdout]   --> src/prop.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::{ClientId, ClientTickContext, Owner, Prefabs, TextureLoader, TickContext, area::{Area, AreaContext, AreaId}, dissolved_pi...
[INFO] [stdout]    |             ^^^^^^^^                                                                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]     --> src/prop.rs:1000:17
[INFO] [stdout]      |
[INFO] [stdout] 1000 |                 (removed_voxel.x as f32 * (8. / self.scale)), 
[INFO] [stdout]      |                 ^                                          ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1000 -                 (removed_voxel.x as f32 * (8. / self.scale)), 
[INFO] [stdout] 1000 +                 removed_voxel.x as f32 * (8. / self.scale), 
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]     --> src/prop.rs:1001:17
[INFO] [stdout]      |
[INFO] [stdout] 1001 |                 ((((removed_voxel.y as f32 * (8. / self.scale)) * -1.) + texture.height()) - (8. / self.scale)),
[INFO] [stdout]      |                 ^                                                                                             ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1001 -                 ((((removed_voxel.y as f32 * (8. / self.scale)) * -1.) + texture.height()) - (8. / self.scale)),
[INFO] [stdout] 1001 +                 (((removed_voxel.y as f32 * (8. / self.scale)) * -1.) + texture.height()) - (8. / self.scale),
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ClientId`
[INFO] [stdout]  --> src/bullet_trail.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::{ClientId, Owner, TickContext, area::AreaId, drawable::Drawable, rapier_to_macroquad, uuid_u64};
[INFO] [stdout]   |             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `bullet_trail::BulletTrail`, `dissolved_pixel::DissolvedPixel`, `self`, and `weapon_fire_context::WeaponFireContext`
[INFO] [stdout]  --> src/enemy.rs:8:82
[INFO] [stdout]   |
[INFO] [stdout] 8 | ...::{self, AreaContext, AreaId}, body_part::BodyPart, bullet_trail::BulletTrail, collider_groups::{BODY_PART_GROUP, DETACHED_BODY_PART_GROUP}, dissolved_pixel::DissolvedPixel, drawable::{DrawContext, Drawable}, get_angle_between_rapier_points, player::{Facing, Player, PlayerId}, prop::Prop, rapier_to_macroquad, space::Space, updates::NetworkPacket, uuid_u64, weapons::{bullet_impact_data::BulletImpactData, weapon::weapon::WeaponOwner, weapon_fire_context::WeaponFireContext, w...
[INFO] [stdout]   |       ^^^^                                             ^^^^^^^^^^^^^^^^^^^^^^^^^                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                                                                                                                                                                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `math::Vector`
[INFO] [stdout]  --> src/weapons/weapon/weapon.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 | use rapier2d::{math::Vector, prelude::{ColliderHandle, ImpulseJointHandle, InteractionGroups, RevoluteJointBuilder, RigidBodyBuilder,...
[INFO] [stdout]   |                ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AreaId`, `ClientId`, `Owner`, `SwapIter`, `self`, and `weapon_fire_context::WeaponFireContext`
[INFO] [stdout]  --> src/weapons/weapon/weapon.rs:9:13
[INFO] [stdout]   |
[INFO] [stdout] 9 | ...::{ClientId, ClientTickContext, Owner, SwapIter, TickContext, area::{self, AreaContext, AreaId}, bullet_trail::{BulletTrail, SpawnBulletTrail}, collider_from_texture_size, draw_preview, draw_texture_onto_physics_body, enemy::EnemyId, get_intersections, get_preview_resolution, player::{Facing, PlayerContext, PlayerId}, prop::StupidDissolvedPixelVelocityUpdate, space::Space, texture_loader::ClientTextureLoader, weapons::{bullet_impact_data::BulletImpactData, weapon::weapon_save::WeaponSave, weapon_fire_context::WeaponFireContext, w...
[INFO] [stdout]   |       ^^^^^^^^                     ^^^^^  ^^^^^^^^                      ^^^^               ^^^^^^                                                                                                                                                                                                                                                                                                                                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ClientId`
[INFO] [stdout]  --> src/weapons/weapon/weapon_save.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::{ClientId, weapons::weapon::weapon::WeaponOwner};
[INFO] [stdout]   |             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ClientId`, `PlayerContext`, and `weapon_fire_context::WeaponFireContext`
[INFO] [stdout]  --> src/weapons/shotgun/weapon.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | ...::{ClientId, TickContext, area::AreaContext, player::{Facing, PlayerContext}, space::Space, texture_loader::ClientTextureLoader, weapons::{shotgun::weapon_save::ShotgunSave, weapon::weapon::{WeaponBase, WeaponOwner}, weapon_fire_context::WeaponFireContext, w...
[INFO] [stdout]   |       ^^^^^^^^                                                   ^^^^^^^^^^^^^                                                                                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ClientId`, `PlayerContext`, and `weapon_fire_context::WeaponFireContext`
[INFO] [stdout]  --> src/weapons/lmg/weapon.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | ...::{ClientId, TickContext, area::AreaContext, player::{Facing, PlayerContext}, space::Space, texture_loader::ClientTextureLoader, weapons::{lmg::weapon_save::LMGSave, weapon::weapon::{WeaponBase, WeaponOwner}, weapon_fire_context::WeaponFireContext, w...
[INFO] [stdout]   |       ^^^^^^^^                                                   ^^^^^^^^^^^^^                                                                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ClientId`, `PlayerContext`, and `weapon_fire_context::WeaponFireContext`
[INFO] [stdout]  --> src/weapons/smg/weapon.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | ...::{ClientId, TickContext, area::AreaContext, player::{Facing, PlayerContext}, space::Space, texture_loader::ClientTextureLoader, weapons::{smg::weapon_save::SMGSave, weapon::weapon::{WeaponBase, WeaponOwner}, weapon_fire_context::WeaponFireContext, w...
[INFO] [stdout]   |       ^^^^^^^^                                                   ^^^^^^^^^^^^^                                                                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AreaContext`, `AreaId`, `Player`, `TickContext`, `bullet_trail::BulletTrail`, `dissolved_pixel::DissolvedPixel`, `enemy::Enemy`, `prop::Prop`, and `space::Space`
[INFO] [stdout]  --> src/weapons/weapon_fire_context.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | ...::{TickContext, area::{AreaContext, AreaId}, bullet_trail::BulletTrail, dissolved_pixel::DissolvedPixel, enemy::Enemy, player::{Facing, Player}, prop::Prop, space::Space, w...
[INFO] [stdout]   |       ^^^^^^^^^^^         ^^^^^^^^^^^  ^^^^^^   ^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^                   ^^^^^^   ^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Player` and `weapon_fire_context::WeaponFireContext`
[INFO] [stdout]  --> src/weapons/weapon_type.rs:5:83
[INFO] [stdout]   |
[INFO] [stdout] 5 | ...g, Player, PlayerContext}, space::Space, texture_loader::ClientTextureLoader, weapons::{lmg::weapon::LMG, shotgun::weapon::Shotgun, smg::weapon::SMG, weapon_fire_context::WeaponFireContext, w...
[INFO] [stdout]   |       ^^^^^^                                                                                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `collections::HashSet`
[INFO] [stdout]  --> src/prop_fragment.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashSet, path::PathBuf};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `rapier2d::dynamics::RigidBodyBuilder::position`: renamed to `RigidBodyBuilder::pose`
[INFO] [stdout]   --> src/dropped_item.rs:64:18
[INFO] [stdout]    |
[INFO] [stdout] 64 |                 .position(save.pos)
[INFO] [stdout]    |                  ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `rapier2d::dynamics::RigidBodyBuilder::position`: renamed to `RigidBodyBuilder::pose`
[INFO] [stdout]    --> src/dropped_item.rs:119:18
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 .position(pos)
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `rapier2d::dynamics::RigidBodyBuilder::position`: renamed to `RigidBodyBuilder::pose`
[INFO] [stdout]   --> src/dissolved_pixel.rs:83:18
[INFO] [stdout]    |
[INFO] [stdout] 83 |                 .position(pos)
[INFO] [stdout]    |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Pixel`
[INFO] [stdout]  --> src/prop.rs:6:31
[INFO] [stdout]   |
[INFO] [stdout] 6 | use image::{GenericImageView, Pixel};
[INFO] [stdout]   |                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `camera_to_screen_ratio`
[INFO] [stdout]    --> src/player.rs:373:13
[INFO] [stdout]     |
[INFO] [stdout] 373 |         let camera_to_screen_ratio = Vec2 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_camera_to_screen_ratio`
[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/player.rs:600:21
[INFO] [stdout]     |
[INFO] [stdout] 600 |                 let mut player_context = PlayerContext {
[INFO] [stdout]     |                     ----^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/player.rs:664:9
[INFO] [stdout]     |
[INFO] [stdout] 664 |         ctx: &mut ClientTickContext, 
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `area_context`
[INFO] [stdout]    --> src/player.rs:665:9
[INFO] [stdout]     |
[INFO] [stdout] 665 |         area_context: &mut AreaContext
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_area_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/player.rs:727:9
[INFO] [stdout]     |
[INFO] [stdout] 727 |         ctx: &mut ClientTickContext,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/player.rs:752:9
[INFO] [stdout]     |
[INFO] [stdout] 752 |         ctx: &mut ClientTickContext,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/player.rs:987:9
[INFO] [stdout]     |
[INFO] [stdout] 987 |         ctx: &mut ClientTickContext,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `collider`
[INFO] [stdout]     --> src/player.rs:1008:31
[INFO] [stdout]      |
[INFO] [stdout] 1008 |         for (collider_handle, collider, ray_intersection) in query_pipeline.intersect_ray(
[INFO] [stdout]      |                               ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_collider`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]    --> src/prop.rs:152:14
[INFO] [stdout]     |
[INFO] [stdout] 152 |         for (idx, seed) in potential_island_seeds
[INFO] [stdout]     |              ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling interceptors v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/prop.rs:488:56
[INFO] [stdout]     |
[INFO] [stdout] 488 |     pub fn play_impact_sound(&mut self, space: &Space, ctx: &mut ClientTickContext) {
[INFO] [stdout]     |                                                        ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `voxels`
[INFO] [stdout]    --> src/prop.rs:514:13
[INFO] [stdout]     |
[INFO] [stdout] 514 |         let voxels = space.collider_set.get_mut(self.collider_handle).unwrap().shape_mut().as_voxels_mut().unwrap();
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_voxels`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `then`
[INFO] [stdout]     --> src/prop.rs:1102:13
[INFO] [stdout]      |
[INFO] [stdout] 1102 |         let then = web_time::Instant::now();
[INFO] [stdout]      |             ^^^^ help: if this is intentional, prefix it with an underscore: `_then`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `collider`
[INFO] [stdout]     --> src/prop.rs:1108:13
[INFO] [stdout]      |
[INFO] [stdout] 1108 |         let collider = draw_context.space.collider_set.get(self.collider_handle).unwrap();
[INFO] [stdout]      |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_collider`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `color` is assigned to, but never used
[INFO] [stdout]     --> src/prop.rs:1159:13
[INFO] [stdout]      |
[INFO] [stdout] 1159 |         let mut color = WHITE;
[INFO] [stdout]      |             ^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_color` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `color` is never read
[INFO] [stdout]     --> src/prop.rs:1160:9
[INFO] [stdout]      |
[INFO] [stdout] 1160 |         color.a = 0.5;
[INFO] [stdout]      |         ^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout]      = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `then`
[INFO] [stdout]    --> src/enemy.rs:660:13
[INFO] [stdout]     |
[INFO] [stdout] 660 |         let then = web_time::Instant::now();
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_then`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `lowest_distance` is never read
[INFO] [stdout]    --> src/enemy.rs:789:21
[INFO] [stdout]     |
[INFO] [stdout] 789 |                     lowest_distance = distance;
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/weapons/weapon/weapon.rs:315:9
[INFO] [stdout]     |
[INFO] [stdout] 315 |         ctx: &mut TickContext,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `area_context`
[INFO] [stdout]    --> src/weapons/weapon/weapon.rs:316:9
[INFO] [stdout]     |
[INFO] [stdout] 316 |         area_context: &mut AreaContext,
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_area_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `player_context`
[INFO] [stdout]    --> src/weapons/weapon/weapon.rs:317:9
[INFO] [stdout]     |
[INFO] [stdout] 317 |         player_context: &mut PlayerContext,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_player_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `impacts`
[INFO] [stdout]    --> src/weapons/weapon/weapon.rs:318:9
[INFO] [stdout]     |
[INFO] [stdout] 318 |         impacts: Vec<BulletImpactData>,
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_impacts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `entry_index` is never read
[INFO] [stdout]    --> src/editor_context_menu.rs:287:13
[INFO] [stdout]     |
[INFO] [stdout] 287 |             entry_index += 1;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `round_to_nearest` is never used
[INFO] [stdout]    --> src/lib.rs:859:4
[INFO] [stdout]     |
[INFO] [stdout] 859 | fn round_to_nearest(x: i32, n: i32) -> i32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]     --> src/player.rs:1235:5
[INFO] [stdout]      |
[INFO] [stdout] 1230 | pub struct PlayerContext<'a> {
[INFO] [stdout]      |            ------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 1235 |     max_speed: &'a mut Vec2,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] 1236 |     pub owner: &'a mut Owner,
[INFO] [stdout] 1237 |     previous_velocity: &'a mut RigidBodyVelocity<f32>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 1238 |     head_joint_handle: &'a mut Option<ImpulseJointHandle>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 1239 |     pub facing: &'a mut Facing,
[INFO] [stdout] 1240 |     cursor_pos_rapier: &'a mut glamx::Vec2,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 1241 |     previous_cursor_pos: &'a mut glamx::Vec2,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1244 |     junk: &'a mut Vec<ItemSlot>, // you can hold unlimited junk
[INFO] [stdout]      |     ^^^^
[INFO] [stdout] 1245 |     last_changed_inventory_slot: &'a mut web_time::Instant,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 1246 |     pub previous_selected_item: &'a mut usize,
[INFO] [stdout] 1247 |     last_dash: &'a mut web_time::Instant,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] 1248 |     previous_pos: &'a mut Pose2,
[INFO] [stdout]      |     ^^^^^^^^^^^^
[INFO] [stdout] 1249 |     last_position_update: &'a mut web_time::Instant,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 1250 |     last_autofire: &'a mut web_time::Instant,
[INFO] [stdout]      |     ^^^^^^^^^^^^^
[INFO] [stdout] 1251 |     flying: &'a mut bool,
[INFO] [stdout]      |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `scale` and `owner` are never read
[INFO] [stdout]   --> src/body_part.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct BodyPart {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     scale: u16, 
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 13 |     owner: Owner,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BodyPart` 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 `cost` is never read
[INFO] [stdout]   --> src/computer.rs:70:5
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub struct StoreItem {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 70 |     cost: u32,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `previous_velocity` is never read
[INFO] [stdout]   --> src/dropped_item.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct DroppedItem {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 32 |     previous_velocity: RigidBodyVelocity<f32>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DroppedItem` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `body_handle` and `collider_handle` are never read
[INFO] [stdout]  --> src/junk.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Junk {
[INFO] [stdout]   |            ---- fields in this struct
[INFO] [stdout] 4 |     body_handle: RigidBodyHandle,
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 5 |     collider_handle: ColliderHandle,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `texture`, `texture_source`, `body`, `collider`, and `scale` are never read
[INFO] [stdout]   --> src/fragment.rs:9:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct Fragment {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout]  9 |     texture: PathBuf,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 10 |     texture_source: Rect,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 11 |     body: RigidBodyHandle,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 12 |     collider: ColliderHandle,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 13 |     scale: f32
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `collider` is never read
[INFO] [stdout]   --> src/prop_fragment.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct PropFragment {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 10 |     sprite_path: PathBuf,
[INFO] [stdout] 11 |     collider: ColliderHandle,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ColliderBuilder`
[INFO] [stdout]  --> src/client/client.rs:5:40
[INFO] [stdout]   |
[INFO] [stdout] 5 | use rapier2d::{math::Vector, prelude::{ColliderBuilder, SharedShape}};
[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: `AreaId`
[INFO] [stdout]  --> src/server/server.rs:3:119
[INFO] [stdout]   |
[INFO] [stdout] 3 | use interceptors_lib::{ClientId, Owner, Prefabs, ServerAssets, ServerIO, ServerTickContext, TickContext, area::{Area, AreaId, AreaSav...
[INFO] [stdout]   |                                                                                                                       ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/server/server.rs:219:21
[INFO] [stdout]     |
[INFO] [stdout] 217 |                       panic!();
[INFO] [stdout]     |                       -------- any code following this expression is unreachable
[INFO] [stdout] 218 |                       // just forward it for now
[INFO] [stdout] 219 | /                     self.network_io.send_all_except(
[INFO] [stdout] 220 | |                         network_packet, 
[INFO] [stdout] 221 | |                         client_id
[INFO] [stdout] 222 | |                     );
[INFO] [stdout]     | |______________________^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `update`
[INFO] [stdout]    --> src/server/server.rs:216:45
[INFO] [stdout]     |
[INFO] [stdout] 216 |                 NetworkPacket::SetPropVoxel(update) => {
[INFO] [stdout]     |                                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_update`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `material`, `spawned`, and `test_button` are never read
[INFO] [stdout]   --> src/client/client.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct Client {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 22 |     material: Material,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     spawned: bool,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 29 |     fonts: FontLoader,
[INFO] [stdout] 30 |     test_button: Button,
[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 `update_camera_to_match_screen_size` is never used
[INFO] [stdout]    --> src/client/client.rs:605:12
[INFO] [stdout]     |
[INFO] [stdout] 170 | impl Client {
[INFO] [stdout]     | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 605 |     pub fn update_camera_to_match_screen_size(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `played_radio_chatter` and `start` are never read
[INFO] [stdout]   --> src/client/main_menu.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct MainMenu {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     played_radio_chatter: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 17 |     start: web_time::Instant,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `draw_coords`, `reload_textures`, and `play_radio_chatter` are never used
[INFO] [stdout]    --> src/client/main_menu.rs:25:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl MainMenu {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  25 |     pub fn draw_coords(&self, cursor: Vec2) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  33 |     async fn reload_textures(&mut self) {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 178 |     fn play_radio_chatter(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `round_to_nearest_50` is never used
[INFO] [stdout]   --> src/editor/main.rs:30:4
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn round_to_nearest_50(n: f32) -> f32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `last_cursor_move` is never read
[INFO] [stdout]   --> src/editor/editor.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct AreaEditor {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 35 |     last_cursor_move: web_time::Instant,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Path`
[INFO] [stdout]  --> src/lib.rs:1:129
[INFO] [stdout]   |
[INFO] [stdout] 1 | ...:PI, fs::read_to_string, net::{TcpListener, TcpStream}, path::{Path, PathBuf}, process::exit, str::FromStr};
[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: `glamx::IVec2`
[INFO] [stdout]  --> src/lib.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use glamx::IVec2;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `prelude::load_material`
[INFO] [stdout]  --> src/lib.rs:6:148
[INFO] [stdout]   |
[INFO] [stdout] 6 | ..._released, mouse_position}, math::{Rect, Vec2, vec2}, prelude::load_material, shapes::DrawRectangleParams, texture::{DrawTexturePa...
[INFO] [stdout]   |                                                          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AxisMask`, `VoxelData`, and `VoxelsChunkRef`
[INFO] [stdout]  --> src/lib.rs:7:45
[INFO] [stdout]   |
[INFO] [stdout] 7 | ..., prelude::{AxisMask, ColliderBuilder, ColliderHandle, QueryFilter, RigidBodyHandle, VoxelData, Voxels, VoxelsChunkRef}};
[INFO] [stdout]   |                ^^^^^^^^                                                                 ^^^^^^^^^          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `collections::VecDeque`
[INFO] [stdout]  --> src/area.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::VecDeque, path::PathBuf, str::FromStr};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `WHITE`, `clear_background`, `draw_rectangle`, `gl_use_default_material`, `gl_use_material`, `screen_height`, `screen_width`, and `time::get_time`
[INFO] [stdout]  --> src/area.rs:4:48
[INFO] [stdout]   |
[INFO] [stdout] 4 | ...D, WHITE}, input::{KeyCode, is_key_released}, math::Rect, prelude::{gl_use_default_material, gl_use_material}, shapes::{draw_circle, draw_rectangle}, time::get_time, window::{clear_background, screen_height, screen_width}};
[INFO] [stdout]   |       ^^^^^                                                            ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^                         ^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^           ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `test`
[INFO] [stdout]   --> src/area.rs:11:14
[INFO] [stdout]    |
[INFO] [stdout] 11 | macro_rules! test {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `camera::Camera2D`, `is_key_pressed`, and `mouse_position`
[INFO] [stdout]  --> src/player.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | ...::{camera::Camera2D, color::{BLACK, WHITE}, input::{KeyCode, is_key_down, is_key_pressed, is_mouse_button_down, is_mouse_button_released, mouse_position, m...
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^                                                       ^^^^^^^^^^^^^^                                                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `bullet_trail::BulletTrail`, `dissolved_pixel::DissolvedPixel`, `enemy::Enemy`, `prop::Prop`, `weapon::weapon::WeaponOwner`, and `weapon_fire_context::WeaponFireContext`
[INFO] [stdout]   --> src/player.rs:10:149
[INFO] [stdout]    |
[INFO] [stdout] 10 | ...t, bullet_trail::BulletTrail, computer::{Item, ItemSave}, dissolved_pixel::DissolvedPixel, drawable::{DrawContext, Drawable}, dropped_item::{DroppedItem, RemoveDroppedItemUpdate}, enemy::Enemy, font_loader::FontLoader, get_angle_between_rapier_points, inventory::Inventory, mouse_world_pos, prop::Prop, rapier_mouse_world_pos, rapier_to_macroquad, space::Space, texture_loader::ClientTextureLoader, tile::Tile, updates::NetworkPacket, uuid_u64, weapons::{bullet_impact_data::BulletImpactData, weapon::weapon::WeaponOwner, weapon_fire_context::WeaponFireContext, w...
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                                           ^^^^^^^^^^^^                                                                                                   ^^^^^^^^^^                                                                                                                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]     --> src/player.rs:1020:16
[INFO] [stdout]      |
[INFO] [stdout] 1020 |             if (collider_handle == self.body.collider_handle) {
[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] 1020 -             if (collider_handle == self.body.collider_handle) {
[INFO] [stdout] 1020 +             if collider_handle == self.body.collider_handle  {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]     --> src/player.rs:1026:16
[INFO] [stdout]      |
[INFO] [stdout] 1026 |             if (collider_handle == self.head.collider_handle) {
[INFO] [stdout]      |                ^                                            ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1026 -             if (collider_handle == self.head.collider_handle) {
[INFO] [stdout] 1026 +             if collider_handle == self.head.collider_handle  {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BLUE`, `GREEN`, `MaterialParams`, `TextParams`, `VIOLET`, `audio::play_sound_once`, `draw_circle`, `draw_text_ex`, `draw_text`, and `load_material`
[INFO] [stdout]  --> src/prop.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | ...::{audio::play_sound_once, camera::{Camera2D, set_camera}, color::{BLACK, BLUE, Color, GREEN, RED, VIOLET, WHITE}, math::{Rect, Vec2}, prelude::{MaterialParams, gl_use_default_material, gl_use_material, load_material}, shapes::{draw_circle, draw_rectangle}, text::{TextParams, draw_text, draw_text_ex}, ...
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^^^^^                                                 ^^^^         ^^^^^       ^^^^^^                                        ^^^^^^^^^^^^^^                                            ^^^^^^^^^^^^^            ^^^^^^^^^^^                          ^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AxisMask`
[INFO] [stdout]  --> src/prop.rs:8:25
[INFO] [stdout]   |
[INFO] [stdout] 8 | use rapier2d::prelude::{AxisMask, ColliderBuilder, ColliderHandle, RigidBodyBuilder, RigidBodyHandle, RigidBodyType, RigidBodyVelocit...
[INFO] [stdout]   |                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Area` and `ClientId`
[INFO] [stdout]   --> src/prop.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::{ClientId, ClientTickContext, Owner, Prefabs, TextureLoader, TickContext, area::{Area, AreaContext, AreaId}, dissolved_pi...
[INFO] [stdout]    |             ^^^^^^^^                                                                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]     --> src/prop.rs:1000:17
[INFO] [stdout]      |
[INFO] [stdout] 1000 |                 (removed_voxel.x as f32 * (8. / self.scale)), 
[INFO] [stdout]      |                 ^                                          ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1000 -                 (removed_voxel.x as f32 * (8. / self.scale)), 
[INFO] [stdout] 1000 +                 removed_voxel.x as f32 * (8. / self.scale), 
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]     --> src/prop.rs:1001:17
[INFO] [stdout]      |
[INFO] [stdout] 1001 |                 ((((removed_voxel.y as f32 * (8. / self.scale)) * -1.) + texture.height()) - (8. / self.scale)),
[INFO] [stdout]      |                 ^                                                                                             ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1001 -                 ((((removed_voxel.y as f32 * (8. / self.scale)) * -1.) + texture.height()) - (8. / self.scale)),
[INFO] [stdout] 1001 +                 (((removed_voxel.y as f32 * (8. / self.scale)) * -1.) + texture.height()) - (8. / self.scale),
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ClientId`
[INFO] [stdout]  --> src/bullet_trail.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::{ClientId, Owner, TickContext, area::AreaId, drawable::Drawable, rapier_to_macroquad, uuid_u64};
[INFO] [stdout]   |             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `bullet_trail::BulletTrail`, `dissolved_pixel::DissolvedPixel`, `self`, and `weapon_fire_context::WeaponFireContext`
[INFO] [stdout]  --> src/enemy.rs:8:82
[INFO] [stdout]   |
[INFO] [stdout] 8 | ...::{self, AreaContext, AreaId}, body_part::BodyPart, bullet_trail::BulletTrail, collider_groups::{BODY_PART_GROUP, DETACHED_BODY_PART_GROUP}, dissolved_pixel::DissolvedPixel, drawable::{DrawContext, Drawable}, get_angle_between_rapier_points, player::{Facing, Player, PlayerId}, prop::Prop, rapier_to_macroquad, space::Space, updates::NetworkPacket, uuid_u64, weapons::{bullet_impact_data::BulletImpactData, weapon::weapon::WeaponOwner, weapon_fire_context::WeaponFireContext, w...
[INFO] [stdout]   |       ^^^^                                             ^^^^^^^^^^^^^^^^^^^^^^^^^                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                                                                                                                                                                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `math::Vector`
[INFO] [stdout]  --> src/weapons/weapon/weapon.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 | use rapier2d::{math::Vector, prelude::{ColliderHandle, ImpulseJointHandle, InteractionGroups, RevoluteJointBuilder, RigidBodyBuilder,...
[INFO] [stdout]   |                ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AreaId`, `ClientId`, `Owner`, `SwapIter`, `self`, and `weapon_fire_context::WeaponFireContext`
[INFO] [stdout]  --> src/weapons/weapon/weapon.rs:9:13
[INFO] [stdout]   |
[INFO] [stdout] 9 | ...::{ClientId, ClientTickContext, Owner, SwapIter, TickContext, area::{self, AreaContext, AreaId}, bullet_trail::{BulletTrail, SpawnBulletTrail}, collider_from_texture_size, draw_preview, draw_texture_onto_physics_body, enemy::EnemyId, get_intersections, get_preview_resolution, player::{Facing, PlayerContext, PlayerId}, prop::StupidDissolvedPixelVelocityUpdate, space::Space, texture_loader::ClientTextureLoader, weapons::{bullet_impact_data::BulletImpactData, weapon::weapon_save::WeaponSave, weapon_fire_context::WeaponFireContext, w...
[INFO] [stdout]   |       ^^^^^^^^                     ^^^^^  ^^^^^^^^                      ^^^^               ^^^^^^                                                                                                                                                                                                                                                                                                                                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ClientId`
[INFO] [stdout]  --> src/weapons/weapon/weapon_save.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::{ClientId, weapons::weapon::weapon::WeaponOwner};
[INFO] [stdout]   |             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ClientId`, `PlayerContext`, and `weapon_fire_context::WeaponFireContext`
[INFO] [stdout]  --> src/weapons/shotgun/weapon.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | ...::{ClientId, TickContext, area::AreaContext, player::{Facing, PlayerContext}, space::Space, texture_loader::ClientTextureLoader, weapons::{shotgun::weapon_save::ShotgunSave, weapon::weapon::{WeaponBase, WeaponOwner}, weapon_fire_context::WeaponFireContext, w...
[INFO] [stdout]   |       ^^^^^^^^                                                   ^^^^^^^^^^^^^                                                                                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ClientId`, `PlayerContext`, and `weapon_fire_context::WeaponFireContext`
[INFO] [stdout]  --> src/weapons/lmg/weapon.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | ...::{ClientId, TickContext, area::AreaContext, player::{Facing, PlayerContext}, space::Space, texture_loader::ClientTextureLoader, weapons::{lmg::weapon_save::LMGSave, weapon::weapon::{WeaponBase, WeaponOwner}, weapon_fire_context::WeaponFireContext, w...
[INFO] [stdout]   |       ^^^^^^^^                                                   ^^^^^^^^^^^^^                                                                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ClientId`, `PlayerContext`, and `weapon_fire_context::WeaponFireContext`
[INFO] [stdout]  --> src/weapons/smg/weapon.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | ...::{ClientId, TickContext, area::AreaContext, player::{Facing, PlayerContext}, space::Space, texture_loader::ClientTextureLoader, weapons::{smg::weapon_save::SMGSave, weapon::weapon::{WeaponBase, WeaponOwner}, weapon_fire_context::WeaponFireContext, w...
[INFO] [stdout]   |       ^^^^^^^^                                                   ^^^^^^^^^^^^^                                                                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AreaContext`, `AreaId`, `Player`, `TickContext`, `bullet_trail::BulletTrail`, `dissolved_pixel::DissolvedPixel`, `enemy::Enemy`, `prop::Prop`, and `space::Space`
[INFO] [stdout]  --> src/weapons/weapon_fire_context.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | ...::{TickContext, area::{AreaContext, AreaId}, bullet_trail::BulletTrail, dissolved_pixel::DissolvedPixel, enemy::Enemy, player::{Facing, Player}, prop::Prop, space::Space, w...
[INFO] [stdout]   |       ^^^^^^^^^^^         ^^^^^^^^^^^  ^^^^^^   ^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^                   ^^^^^^   ^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Player` and `weapon_fire_context::WeaponFireContext`
[INFO] [stdout]  --> src/weapons/weapon_type.rs:5:83
[INFO] [stdout]   |
[INFO] [stdout] 5 | ...g, Player, PlayerContext}, space::Space, texture_loader::ClientTextureLoader, weapons::{lmg::weapon::LMG, shotgun::weapon::Shotgun, smg::weapon::SMG, weapon_fire_context::WeaponFireContext, w...
[INFO] [stdout]   |       ^^^^^^                                                                                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `collections::HashSet`
[INFO] [stdout]  --> src/prop_fragment.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{collections::HashSet, path::PathBuf};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `rapier2d::dynamics::RigidBodyBuilder::position`: renamed to `RigidBodyBuilder::pose`
[INFO] [stdout]   --> src/dropped_item.rs:64:18
[INFO] [stdout]    |
[INFO] [stdout] 64 |                 .position(save.pos)
[INFO] [stdout]    |                  ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `rapier2d::dynamics::RigidBodyBuilder::position`: renamed to `RigidBodyBuilder::pose`
[INFO] [stdout]    --> src/dropped_item.rs:119:18
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 .position(pos)
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `rapier2d::dynamics::RigidBodyBuilder::position`: renamed to `RigidBodyBuilder::pose`
[INFO] [stdout]   --> src/dissolved_pixel.rs:83:18
[INFO] [stdout]    |
[INFO] [stdout] 83 |                 .position(pos)
[INFO] [stdout]    |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Pixel`
[INFO] [stdout]  --> src/prop.rs:6:31
[INFO] [stdout]   |
[INFO] [stdout] 6 | use image::{GenericImageView, Pixel};
[INFO] [stdout]   |                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `camera_to_screen_ratio`
[INFO] [stdout]    --> src/player.rs:373:13
[INFO] [stdout]     |
[INFO] [stdout] 373 |         let camera_to_screen_ratio = Vec2 {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_camera_to_screen_ratio`
[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/player.rs:600:21
[INFO] [stdout]     |
[INFO] [stdout] 600 |                 let mut player_context = PlayerContext {
[INFO] [stdout]     |                     ----^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/player.rs:664:9
[INFO] [stdout]     |
[INFO] [stdout] 664 |         ctx: &mut ClientTickContext, 
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `area_context`
[INFO] [stdout]    --> src/player.rs:665:9
[INFO] [stdout]     |
[INFO] [stdout] 665 |         area_context: &mut AreaContext
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_area_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/player.rs:727:9
[INFO] [stdout]     |
[INFO] [stdout] 727 |         ctx: &mut ClientTickContext,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/player.rs:752:9
[INFO] [stdout]     |
[INFO] [stdout] 752 |         ctx: &mut ClientTickContext,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/player.rs:987:9
[INFO] [stdout]     |
[INFO] [stdout] 987 |         ctx: &mut ClientTickContext,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `collider`
[INFO] [stdout]     --> src/player.rs:1008:31
[INFO] [stdout]      |
[INFO] [stdout] 1008 |         for (collider_handle, collider, ray_intersection) in query_pipeline.intersect_ray(
[INFO] [stdout]      |                               ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_collider`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]    --> src/prop.rs:152:14
[INFO] [stdout]     |
[INFO] [stdout] 152 |         for (idx, seed) in potential_island_seeds
[INFO] [stdout]     |              ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/prop.rs:488:56
[INFO] [stdout]     |
[INFO] [stdout] 488 |     pub fn play_impact_sound(&mut self, space: &Space, ctx: &mut ClientTickContext) {
[INFO] [stdout]     |                                                        ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `voxels`
[INFO] [stdout]    --> src/prop.rs:514:13
[INFO] [stdout]     |
[INFO] [stdout] 514 |         let voxels = space.collider_set.get_mut(self.collider_handle).unwrap().shape_mut().as_voxels_mut().unwrap();
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_voxels`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `then`
[INFO] [stdout]     --> src/prop.rs:1102:13
[INFO] [stdout]      |
[INFO] [stdout] 1102 |         let then = web_time::Instant::now();
[INFO] [stdout]      |             ^^^^ help: if this is intentional, prefix it with an underscore: `_then`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `collider`
[INFO] [stdout]     --> src/prop.rs:1108:13
[INFO] [stdout]      |
[INFO] [stdout] 1108 |         let collider = draw_context.space.collider_set.get(self.collider_handle).unwrap();
[INFO] [stdout]      |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_collider`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `color` is assigned to, but never used
[INFO] [stdout]     --> src/prop.rs:1159:13
[INFO] [stdout]      |
[INFO] [stdout] 1159 |         let mut color = WHITE;
[INFO] [stdout]      |             ^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_color` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `color` is never read
[INFO] [stdout]     --> src/prop.rs:1160:9
[INFO] [stdout]      |
[INFO] [stdout] 1160 |         color.a = 0.5;
[INFO] [stdout]      |         ^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout]      = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `then`
[INFO] [stdout]    --> src/enemy.rs:660:13
[INFO] [stdout]     |
[INFO] [stdout] 660 |         let then = web_time::Instant::now();
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_then`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `lowest_distance` is never read
[INFO] [stdout]    --> src/enemy.rs:789:21
[INFO] [stdout]     |
[INFO] [stdout] 789 |                     lowest_distance = distance;
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]    --> src/weapons/weapon/weapon.rs:315:9
[INFO] [stdout]     |
[INFO] [stdout] 315 |         ctx: &mut TickContext,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `area_context`
[INFO] [stdout]    --> src/weapons/weapon/weapon.rs:316:9
[INFO] [stdout]     |
[INFO] [stdout] 316 |         area_context: &mut AreaContext,
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_area_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `player_context`
[INFO] [stdout]    --> src/weapons/weapon/weapon.rs:317:9
[INFO] [stdout]     |
[INFO] [stdout] 317 |         player_context: &mut PlayerContext,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_player_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `impacts`
[INFO] [stdout]    --> src/weapons/weapon/weapon.rs:318:9
[INFO] [stdout]     |
[INFO] [stdout] 318 |         impacts: Vec<BulletImpactData>,
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_impacts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `entry_index` is never read
[INFO] [stdout]    --> src/editor_context_menu.rs:287:13
[INFO] [stdout]     |
[INFO] [stdout] 287 |             entry_index += 1;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `round_to_nearest` is never used
[INFO] [stdout]    --> src/lib.rs:859:4
[INFO] [stdout]     |
[INFO] [stdout] 859 | fn round_to_nearest(x: i32, n: i32) -> i32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]     --> src/player.rs:1235:5
[INFO] [stdout]      |
[INFO] [stdout] 1230 | pub struct PlayerContext<'a> {
[INFO] [stdout]      |            ------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 1235 |     max_speed: &'a mut Vec2,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] 1236 |     pub owner: &'a mut Owner,
[INFO] [stdout] 1237 |     previous_velocity: &'a mut RigidBodyVelocity<f32>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 1238 |     head_joint_handle: &'a mut Option<ImpulseJointHandle>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 1239 |     pub facing: &'a mut Facing,
[INFO] [stdout] 1240 |     cursor_pos_rapier: &'a mut glamx::Vec2,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 1241 |     previous_cursor_pos: &'a mut glamx::Vec2,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1244 |     junk: &'a mut Vec<ItemSlot>, // you can hold unlimited junk
[INFO] [stdout]      |     ^^^^
[INFO] [stdout] 1245 |     last_changed_inventory_slot: &'a mut web_time::Instant,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 1246 |     pub previous_selected_item: &'a mut usize,
[INFO] [stdout] 1247 |     last_dash: &'a mut web_time::Instant,
[INFO] [stdout]      |     ^^^^^^^^^
[INFO] [stdout] 1248 |     previous_pos: &'a mut Pose2,
[INFO] [stdout]      |     ^^^^^^^^^^^^
[INFO] [stdout] 1249 |     last_position_update: &'a mut web_time::Instant,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 1250 |     last_autofire: &'a mut web_time::Instant,
[INFO] [stdout]      |     ^^^^^^^^^^^^^
[INFO] [stdout] 1251 |     flying: &'a mut bool,
[INFO] [stdout]      |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `scale` and `owner` are never read
[INFO] [stdout]   --> src/body_part.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct BodyPart {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     scale: u16, 
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 13 |     owner: Owner,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BodyPart` 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 `cost` is never read
[INFO] [stdout]   --> src/computer.rs:70:5
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub struct StoreItem {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 70 |     cost: u32,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `previous_velocity` is never read
[INFO] [stdout]   --> src/dropped_item.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct DroppedItem {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 32 |     previous_velocity: RigidBodyVelocity<f32>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DroppedItem` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `body_handle` and `collider_handle` are never read
[INFO] [stdout]  --> src/junk.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Junk {
[INFO] [stdout]   |            ---- fields in this struct
[INFO] [stdout] 4 |     body_handle: RigidBodyHandle,
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 5 |     collider_handle: ColliderHandle,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `texture`, `texture_source`, `body`, `collider`, and `scale` are never read
[INFO] [stdout]   --> src/fragment.rs:9:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct Fragment {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout]  9 |     texture: PathBuf,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 10 |     texture_source: Rect,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 11 |     body: RigidBodyHandle,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 12 |     collider: ColliderHandle,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 13 |     scale: f32
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `collider` is never read
[INFO] [stdout]   --> src/prop_fragment.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct PropFragment {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 10 |     sprite_path: PathBuf,
[INFO] [stdout] 11 |     collider: ColliderHandle,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 7.53s
[INFO] running `Command { std: "docker" "inspect" "adc410691bf179724ef382f3043ac9f1702e92c09a40f15cf3d37fdcf6449ba3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "adc410691bf179724ef382f3043ac9f1702e92c09a40f15cf3d37fdcf6449ba3", kill_on_drop: false }`
[INFO] [stdout] adc410691bf179724ef382f3043ac9f1702e92c09a40f15cf3d37fdcf6449ba3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.94.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 9897e5266625e7e0e1d193d0106dc39068fd98567dca817864a8ef4a16babb27
[INFO] running `Command { std: "docker" "start" "-a" "9897e5266625e7e0e1d193d0106dc39068fd98567dca817864a8ef4a16babb27", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `Path`
[INFO] [stderr]  --> src/lib.rs:1:129
[INFO] [stderr]   |
[INFO] [stderr] 1 | ...:PI, fs::read_to_string, net::{TcpListener, TcpStream}, path::{Path, PathBuf}, process::exit, str::FromStr};
[INFO] [stderr]   |                                                                   ^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `glamx::IVec2`
[INFO] [stderr]  --> src/lib.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use glamx::IVec2;
[INFO] [stderr]   |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `prelude::load_material`
[INFO] [stderr]  --> src/lib.rs:6:148
[INFO] [stderr]   |
[INFO] [stderr] 6 | ..._released, mouse_position}, math::{Rect, Vec2, vec2}, prelude::load_material, shapes::DrawRectangleParams, texture::{DrawTexturePa...
[INFO] [stderr]   |                                                          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `AxisMask`, `VoxelData`, and `VoxelsChunkRef`
[INFO] [stderr]  --> src/lib.rs:7:45
[INFO] [stderr]   |
[INFO] [stderr] 7 | ..., prelude::{AxisMask, ColliderBuilder, ColliderHandle, QueryFilter, RigidBodyHandle, VoxelData, Voxels, VoxelsChunkRef}};
[INFO] [stderr]   |                ^^^^^^^^                                                                 ^^^^^^^^^          ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `collections::VecDeque`
[INFO] [stderr]  --> src/area.rs:1:11
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::{collections::VecDeque, path::PathBuf, str::FromStr};
[INFO] [stderr]   |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `WHITE`, `clear_background`, `draw_rectangle`, `gl_use_default_material`, `gl_use_material`, `screen_height`, `screen_width`, and `time::get_time`
[INFO] [stderr]  --> src/area.rs:4:48
[INFO] [stderr]   |
[INFO] [stderr] 4 | ...D, WHITE}, input::{KeyCode, is_key_released}, math::Rect, prelude::{gl_use_default_material, gl_use_material}, shapes::{draw_circle, draw_rectangle}, time::get_time, window::{clear_background, screen_height, screen_width}};
[INFO] [stderr]   |       ^^^^^                                                            ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^                         ^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^           ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused macro definition: `test`
[INFO] [stderr]   --> src/area.rs:11:14
[INFO] [stderr]    |
[INFO] [stderr] 11 | macro_rules! test {
[INFO] [stderr]    |              ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_macros)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `camera::Camera2D`, `is_key_pressed`, and `mouse_position`
[INFO] [stderr]  --> src/player.rs:6:17
[INFO] [stderr]   |
[INFO] [stderr] 6 | ...::{camera::Camera2D, color::{BLACK, WHITE}, input::{KeyCode, is_key_down, is_key_pressed, is_mouse_button_down, is_mouse_button_released, mouse_position, m...
[INFO] [stderr]   |       ^^^^^^^^^^^^^^^^                                                       ^^^^^^^^^^^^^^                                                  ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `bullet_trail::BulletTrail`, `dissolved_pixel::DissolvedPixel`, `enemy::Enemy`, `prop::Prop`, `weapon::weapon::WeaponOwner`, and `weapon_fire_context::WeaponFireContext`
[INFO] [stderr]   --> src/player.rs:10:149
[INFO] [stderr]    |
[INFO] [stderr] 10 | ...t, bullet_trail::BulletTrail, computer::{Item, ItemSave}, dissolved_pixel::DissolvedPixel, drawable::{DrawContext, Drawable}, dropped_item::{DroppedItem, RemoveDroppedItemUpdate}, enemy::Enemy, font_loader::FontLoader, get_angle_between_rapier_points, inventory::Inventory, mouse_world_pos, prop::Prop, rapier_mouse_world_pos, rapier_to_macroquad, space::Space, texture_loader::ClientTextureLoader, tile::Tile, updates::NetworkPacket, uuid_u64, weapons::{bullet_impact_data::BulletImpactData, weapon::weapon::WeaponOwner, weapon_fire_context::WeaponFireContext, w...
[INFO] [stderr]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                                           ^^^^^^^^^^^^                                                                                                   ^^^^^^^^^^                                                                                                                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]     --> src/player.rs:1020:16
[INFO] [stderr]      |
[INFO] [stderr] 1020 |             if (collider_handle == self.body.collider_handle) {
[INFO] [stderr]      |                ^                                            ^
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]      |
[INFO] [stderr] 1020 -             if (collider_handle == self.body.collider_handle) {
[INFO] [stderr] 1020 +             if collider_handle == self.body.collider_handle  {
[INFO] [stderr]      |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]     --> src/player.rs:1026:16
[INFO] [stderr]      |
[INFO] [stderr] 1026 |             if (collider_handle == self.head.collider_handle) {
[INFO] [stderr]      |                ^                                            ^
[INFO] [stderr]      |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]      |
[INFO] [stderr] 1026 -             if (collider_handle == self.head.collider_handle) {
[INFO] [stderr] 1026 +             if collider_handle == self.head.collider_handle  {
[INFO] [stderr]      |
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `BLUE`, `GREEN`, `MaterialParams`, `TextParams`, `VIOLET`, `audio::play_sound_once`, `draw_circle`, `draw_text_ex`, `draw_text`, and `load_material`
[INFO] [stderr]  --> src/prop.rs:7:17
[INFO] [stderr]   |
[INFO] [stderr] 7 | ...::{audio::play_sound_once, camera::{Camera2D, set_camera}, color::{BLACK, BLUE, Color, GREEN, RED, VIOLET, WHITE}, math::{Rect, Vec2}, prelude::{MaterialParams, gl_use_default_material, gl_use_material, load_material}, shapes::{draw_circle, draw_rectangle}, text::{TextParams, draw_text, draw_text_ex}, ...
[INFO] [stderr]   |       ^^^^^^^^^^^^^^^^^^^^^^                                                 ^^^^         ^^^^^       ^^^^^^                                        ^^^^^^^^^^^^^^                                            ^^^^^^^^^^^^^            ^^^^^^^^^^^                          ^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `AxisMask`
[INFO] [stderr]  --> src/prop.rs:8:25
[INFO] [stderr]   |
[INFO] [stderr] 8 | use rapier2d::prelude::{AxisMask, ColliderBuilder, ColliderHandle, RigidBodyBuilder, RigidBodyHandle, RigidBodyType, RigidBodyVelocit...
[INFO] [stderr]   |                         ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Area` and `ClientId`
[INFO] [stderr]   --> src/prop.rs:11:13
[INFO] [stderr]    |
[INFO] [stderr] 11 | use crate::{ClientId, ClientTickContext, Owner, Prefabs, TextureLoader, TickContext, area::{Area, AreaContext, AreaId}, dissolved_pi...
[INFO] [stderr]    |             ^^^^^^^^                                                                        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around function argument
[INFO] [stderr]     --> src/prop.rs:1000:17
[INFO] [stderr]      |
[INFO] [stderr] 1000 |                 (removed_voxel.x as f32 * (8. / self.scale)), 
[INFO] [stderr]      |                 ^                                          ^
[INFO] [stderr]      |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]      |
[INFO] [stderr] 1000 -                 (removed_voxel.x as f32 * (8. / self.scale)), 
[INFO] [stderr] 1000 +                 removed_voxel.x as f32 * (8. / self.scale), 
[INFO] [stderr]      |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around function argument
[INFO] [stderr]     --> src/prop.rs:1001:17
[INFO] [stderr]      |
[INFO] [stderr] 1001 |                 ((((removed_voxel.y as f32 * (8. / self.scale)) * -1.) + texture.height()) - (8. / self.scale)),
[INFO] [stderr]      |                 ^                                                                                             ^
[INFO] [stderr]      |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]      |
[INFO] [stderr] 1001 -                 ((((removed_voxel.y as f32 * (8. / self.scale)) * -1.) + texture.height()) - (8. / self.scale)),
[INFO] [stderr] 1001 +                 (((removed_voxel.y as f32 * (8. / self.scale)) * -1.) + texture.height()) - (8. / self.scale),
[INFO] [stderr]      |
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ClientId`
[INFO] [stderr]  --> src/bullet_trail.rs:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 | use crate::{ClientId, Owner, TickContext, area::AreaId, drawable::Drawable, rapier_to_macroquad, uuid_u64};
[INFO] [stderr]   |             ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `bullet_trail::BulletTrail`, `dissolved_pixel::DissolvedPixel`, `self`, and `weapon_fire_context::WeaponFireContext`
[INFO] [stderr]  --> src/enemy.rs:8:82
[INFO] [stderr]   |
[INFO] [stderr] 8 | ...::{self, AreaContext, AreaId}, body_part::BodyPart, bullet_trail::BulletTrail, collider_groups::{BODY_PART_GROUP, DETACHED_BODY_PART_GROUP}, dissolved_pixel::DissolvedPixel, drawable::{DrawContext, Drawable}, get_angle_between_rapier_points, player::{Facing, Player, PlayerId}, prop::Prop, rapier_to_macroquad, space::Space, updates::NetworkPacket, uuid_u64, weapons::{bullet_impact_data::BulletImpactData, weapon::weapon::WeaponOwner, weapon_fire_context::WeaponFireContext, w...
[INFO] [stderr]   |       ^^^^                                             ^^^^^^^^^^^^^^^^^^^^^^^^^                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                                                                                                                                                                                                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `math::Vector`
[INFO] [stderr]  --> src/weapons/weapon/weapon.rs:6:16
[INFO] [stderr]   |
[INFO] [stderr] 6 | use rapier2d::{math::Vector, prelude::{ColliderHandle, ImpulseJointHandle, InteractionGroups, RevoluteJointBuilder, RigidBodyBuilder,...
[INFO] [stderr]   |                ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `AreaId`, `ClientId`, `Owner`, `SwapIter`, `self`, and `weapon_fire_context::WeaponFireContext`
[INFO] [stderr]  --> src/weapons/weapon/weapon.rs:9:13
[INFO] [stderr]   |
[INFO] [stderr] 9 | ...::{ClientId, ClientTickContext, Owner, SwapIter, TickContext, area::{self, AreaContext, AreaId}, bullet_trail::{BulletTrail, SpawnBulletTrail}, collider_from_texture_size, draw_preview, draw_texture_onto_physics_body, enemy::EnemyId, get_intersections, get_preview_resolution, player::{Facing, PlayerContext, PlayerId}, prop::StupidDissolvedPixelVelocityUpdate, space::Space, texture_loader::ClientTextureLoader, weapons::{bullet_impact_data::BulletImpactData, weapon::weapon_save::WeaponSave, weapon_fire_context::WeaponFireContext, w...
[INFO] [stderr]   |       ^^^^^^^^                     ^^^^^  ^^^^^^^^                      ^^^^               ^^^^^^                                                                                                                                                                                                                                                                                                                                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ClientId`
[INFO] [stderr]  --> src/weapons/weapon/weapon_save.rs:6:13
[INFO] [stderr]   |
[INFO] [stderr] 6 | use crate::{ClientId, weapons::weapon::weapon::WeaponOwner};
[INFO] [stderr]   |             ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `ClientId`, `PlayerContext`, and `weapon_fire_context::WeaponFireContext`
[INFO] [stderr]  --> src/weapons/shotgun/weapon.rs:6:13
[INFO] [stderr]   |
[INFO] [stderr] 6 | ...::{ClientId, TickContext, area::AreaContext, player::{Facing, PlayerContext}, space::Space, texture_loader::ClientTextureLoader, weapons::{shotgun::weapon_save::ShotgunSave, weapon::weapon::{WeaponBase, WeaponOwner}, weapon_fire_context::WeaponFireContext, w...
[INFO] [stderr]   |       ^^^^^^^^                                                   ^^^^^^^^^^^^^                                                                                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `ClientId`, `PlayerContext`, and `weapon_fire_context::WeaponFireContext`
[INFO] [stderr]  --> src/weapons/lmg/weapon.rs:6:13
[INFO] [stderr]   |
[INFO] [stderr] 6 | ...::{ClientId, TickContext, area::AreaContext, player::{Facing, PlayerContext}, space::Space, texture_loader::ClientTextureLoader, weapons::{lmg::weapon_save::LMGSave, weapon::weapon::{WeaponBase, WeaponOwner}, weapon_fire_context::WeaponFireContext, w...
[INFO] [stderr]   |       ^^^^^^^^                                                   ^^^^^^^^^^^^^                                                                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `ClientId`, `PlayerContext`, and `weapon_fire_context::WeaponFireContext`
[INFO] [stderr]  --> src/weapons/smg/weapon.rs:6:13
[INFO] [stderr]   |
[INFO] [stderr] 6 | ...::{ClientId, TickContext, area::AreaContext, player::{Facing, PlayerContext}, space::Space, texture_loader::ClientTextureLoader, weapons::{smg::weapon_save::SMGSave, weapon::weapon::{WeaponBase, WeaponOwner}, weapon_fire_context::WeaponFireContext, w...
[INFO] [stderr]   |       ^^^^^^^^                                                   ^^^^^^^^^^^^^                                                                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `AreaContext`, `AreaId`, `Player`, `TickContext`, `bullet_trail::BulletTrail`, `dissolved_pixel::DissolvedPixel`, `enemy::Enemy`, `prop::Prop`, and `space::Space`
[INFO] [stderr]  --> src/weapons/weapon_fire_context.rs:1:13
[INFO] [stderr]   |
[INFO] [stderr] 1 | ...::{TickContext, area::{AreaContext, AreaId}, bullet_trail::BulletTrail, dissolved_pixel::DissolvedPixel, enemy::Enemy, player::{Facing, Player}, prop::Prop, space::Space, w...
[INFO] [stderr]   |       ^^^^^^^^^^^         ^^^^^^^^^^^  ^^^^^^   ^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^                   ^^^^^^   ^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Player` and `weapon_fire_context::WeaponFireContext`
[INFO] [stderr]  --> src/weapons/weapon_type.rs:5:83
[INFO] [stderr]   |
[INFO] [stderr] 5 | ...g, Player, PlayerContext}, space::Space, texture_loader::ClientTextureLoader, weapons::{lmg::weapon::LMG, shotgun::weapon::Shotgun, smg::weapon::SMG, weapon_fire_context::WeaponFireContext, w...
[INFO] [stderr]   |       ^^^^^^                                                                                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `collections::HashSet`
[INFO] [stderr]  --> src/prop_fragment.rs:1:11
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::{collections::HashSet, path::PathBuf};
[INFO] [stderr]   |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `rapier2d::dynamics::RigidBodyBuilder::position`: renamed to `RigidBodyBuilder::pose`
[INFO] [stderr]   --> src/dropped_item.rs:64:18
[INFO] [stderr]    |
[INFO] [stderr] 64 |                 .position(save.pos)
[INFO] [stderr]    |                  ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `rapier2d::dynamics::RigidBodyBuilder::position`: renamed to `RigidBodyBuilder::pose`
[INFO] [stderr]    --> src/dropped_item.rs:119:18
[INFO] [stderr]     |
[INFO] [stderr] 119 |                 .position(pos)
[INFO] [stderr]     |                  ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `rapier2d::dynamics::RigidBodyBuilder::position`: renamed to `RigidBodyBuilder::pose`
[INFO] [stderr]   --> src/dissolved_pixel.rs:83:18
[INFO] [stderr]    |
[INFO] [stderr] 83 |                 .position(pos)
[INFO] [stderr]    |                  ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Pixel`
[INFO] [stderr]  --> src/prop.rs:6:31
[INFO] [stderr]   |
[INFO] [stderr] 6 | use image::{GenericImageView, Pixel};
[INFO] [stderr]   |                               ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `camera_to_screen_ratio`
[INFO] [stderr]    --> src/player.rs:373:13
[INFO] [stderr]     |
[INFO] [stderr] 373 |         let camera_to_screen_ratio = Vec2 {
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_camera_to_screen_ratio`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/player.rs:600:21
[INFO] [stderr]     |
[INFO] [stderr] 600 |                 let mut player_context = PlayerContext {
[INFO] [stderr]     |                     ----^^^^^^^^^^^^^^
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `ctx`
[INFO] [stderr]    --> src/player.rs:664:9
[INFO] [stderr]     |
[INFO] [stderr] 664 |         ctx: &mut ClientTickContext, 
[INFO] [stderr]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `area_context`
[INFO] [stderr]    --> src/player.rs:665:9
[INFO] [stderr]     |
[INFO] [stderr] 665 |         area_context: &mut AreaContext
[INFO] [stderr]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_area_context`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `ctx`
[INFO] [stderr]    --> src/player.rs:727:9
[INFO] [stderr]     |
[INFO] [stderr] 727 |         ctx: &mut ClientTickContext,
[INFO] [stderr]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `ctx`
[INFO] [stderr]    --> src/player.rs:752:9
[INFO] [stderr]     |
[INFO] [stderr] 752 |         ctx: &mut ClientTickContext,
[INFO] [stderr]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `ctx`
[INFO] [stderr]    --> src/player.rs:987:9
[INFO] [stderr]     |
[INFO] [stderr] 987 |         ctx: &mut ClientTickContext,
[INFO] [stderr]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `collider`
[INFO] [stderr]     --> src/player.rs:1008:31
[INFO] [stderr]      |
[INFO] [stderr] 1008 |         for (collider_handle, collider, ray_intersection) in query_pipeline.intersect_ray(
[INFO] [stderr]      |                               ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_collider`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `idx`
[INFO] [stderr]    --> src/prop.rs:152:14
[INFO] [stderr]     |
[INFO] [stderr] 152 |         for (idx, seed) in potential_island_seeds
[INFO] [stderr]     |              ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `ctx`
[INFO] [stderr]    --> src/prop.rs:488:56
[INFO] [stderr]     |
[INFO] [stderr] 488 |     pub fn play_impact_sound(&mut self, space: &Space, ctx: &mut ClientTickContext) {
[INFO] [stderr]     |                                                        ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `voxels`
[INFO] [stderr]    --> src/prop.rs:514:13
[INFO] [stderr]     |
[INFO] [stderr] 514 |         let voxels = space.collider_set.get_mut(self.collider_handle).unwrap().shape_mut().as_voxels_mut().unwrap();
[INFO] [stderr]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_voxels`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `then`
[INFO] [stderr]     --> src/prop.rs:1102:13
[INFO] [stderr]      |
[INFO] [stderr] 1102 |         let then = web_time::Instant::now();
[INFO] [stderr]      |             ^^^^ help: if this is intentional, prefix it with an underscore: `_then`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `collider`
[INFO] [stderr]     --> src/prop.rs:1108:13
[INFO] [stderr]      |
[INFO] [stderr] 1108 |         let collider = draw_context.space.collider_set.get(self.collider_handle).unwrap();
[INFO] [stderr]      |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_collider`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `color` is assigned to, but never used
[INFO] [stderr]     --> src/prop.rs:1159:13
[INFO] [stderr]      |
[INFO] [stderr] 1159 |         let mut color = WHITE;
[INFO] [stderr]      |             ^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: consider using `_color` instead
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `color` is never read
[INFO] [stderr]     --> src/prop.rs:1160:9
[INFO] [stderr]      |
[INFO] [stderr] 1160 |         color.a = 0.5;
[INFO] [stderr]      |         ^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = help: maybe it is overwritten before being read?
[INFO] [stderr]      = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `then`
[INFO] [stderr]    --> src/enemy.rs:660:13
[INFO] [stderr]     |
[INFO] [stderr] 660 |         let then = web_time::Instant::now();
[INFO] [stderr]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_then`
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `lowest_distance` is never read
[INFO] [stderr]    --> src/enemy.rs:789:21
[INFO] [stderr]     |
[INFO] [stderr] 789 |                     lowest_distance = distance;
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `ctx`
[INFO] [stderr]    --> src/weapons/weapon/weapon.rs:315:9
[INFO] [stderr]     |
[INFO] [stderr] 315 |         ctx: &mut TickContext,
[INFO] [stderr]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `area_context`
[INFO] [stderr]    --> src/weapons/weapon/weapon.rs:316:9
[INFO] [stderr]     |
[INFO] [stderr] 316 |         area_context: &mut AreaContext,
[INFO] [stderr]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_area_context`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `player_context`
[INFO] [stderr]    --> src/weapons/weapon/weapon.rs:317:9
[INFO] [stderr]     |
[INFO] [stderr] 317 |         player_context: &mut PlayerContext,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_player_context`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `impacts`
[INFO] [stderr]    --> src/weapons/weapon/weapon.rs:318:9
[INFO] [stderr]     |
[INFO] [stderr] 318 |         impacts: Vec<BulletImpactData>,
[INFO] [stderr]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_impacts`
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `entry_index` is never read
[INFO] [stderr]    --> src/editor_context_menu.rs:287:13
[INFO] [stderr]     |
[INFO] [stderr] 287 |             entry_index += 1;
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: function `round_to_nearest` is never used
[INFO] [stderr]    --> src/lib.rs:859:4
[INFO] [stderr]     |
[INFO] [stderr] 859 | fn round_to_nearest(x: i32, n: i32) -> i32 {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: multiple fields are never read
[INFO] [stderr]     --> src/player.rs:1235:5
[INFO] [stderr]      |
[INFO] [stderr] 1230 | pub struct PlayerContext<'a> {
[INFO] [stderr]      |            ------------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 1235 |     max_speed: &'a mut Vec2,
[INFO] [stderr]      |     ^^^^^^^^^
[INFO] [stderr] 1236 |     pub owner: &'a mut Owner,
[INFO] [stderr] 1237 |     previous_velocity: &'a mut RigidBodyVelocity<f32>,
[INFO] [stderr]      |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 1238 |     head_joint_handle: &'a mut Option<ImpulseJointHandle>,
[INFO] [stderr]      |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 1239 |     pub facing: &'a mut Facing,
[INFO] [stderr] 1240 |     cursor_pos_rapier: &'a mut glamx::Vec2,
[INFO] [stderr]      |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 1241 |     previous_cursor_pos: &'a mut glamx::Vec2,
[INFO] [stderr]      |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 1244 |     junk: &'a mut Vec<ItemSlot>, // you can hold unlimited junk
[INFO] [stderr]      |     ^^^^
[INFO] [stderr] 1245 |     last_changed_inventory_slot: &'a mut web_time::Instant,
[INFO] [stderr]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 1246 |     pub previous_selected_item: &'a mut usize,
[INFO] [stderr] 1247 |     last_dash: &'a mut web_time::Instant,
[INFO] [stderr]      |     ^^^^^^^^^
[INFO] [stderr] 1248 |     previous_pos: &'a mut Pose2,
[INFO] [stderr]      |     ^^^^^^^^^^^^
[INFO] [stderr] 1249 |     last_position_update: &'a mut web_time::Instant,
[INFO] [stderr]      |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 1250 |     last_autofire: &'a mut web_time::Instant,
[INFO] [stderr]      |     ^^^^^^^^^^^^^
[INFO] [stderr] 1251 |     flying: &'a mut bool,
[INFO] [stderr]      |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `scale` and `owner` are never read
[INFO] [stderr]   --> src/body_part.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr]  8 | pub struct BodyPart {
[INFO] [stderr]    |            -------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 12 |     scale: u16, 
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 13 |     owner: Owner,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `BodyPart` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `cost` is never read
[INFO] [stderr]   --> src/computer.rs:70:5
[INFO] [stderr]    |
[INFO] [stderr] 69 | pub struct StoreItem {
[INFO] [stderr]    |            --------- field in this struct
[INFO] [stderr] 70 |     cost: u32,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `previous_velocity` is never read
[INFO] [stderr]   --> src/dropped_item.rs:32:5
[INFO] [stderr]    |
[INFO] [stderr] 26 | pub struct DroppedItem {
[INFO] [stderr]    |            ----------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 32 |     previous_velocity: RigidBodyVelocity<f32>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `DroppedItem` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `body_handle` and `collider_handle` are never read
[INFO] [stderr]  --> src/junk.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub struct Junk {
[INFO] [stderr]   |            ---- fields in this struct
[INFO] [stderr] 4 |     body_handle: RigidBodyHandle,
[INFO] [stderr]   |     ^^^^^^^^^^^
[INFO] [stderr] 5 |     collider_handle: ColliderHandle,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `texture`, `texture_source`, `body`, `collider`, and `scale` are never read
[INFO] [stderr]   --> src/fragment.rs:9:5
[INFO] [stderr]    |
[INFO] [stderr]  8 | pub struct Fragment {
[INFO] [stderr]    |            -------- fields in this struct
[INFO] [stderr]  9 |     texture: PathBuf,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 10 |     texture_source: Rect,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr] 11 |     body: RigidBodyHandle,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 12 |     collider: ColliderHandle,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 13 |     scale: f32
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `collider` is never read
[INFO] [stderr]   --> src/prop_fragment.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr]  9 | pub struct PropFragment {
[INFO] [stderr]    |            ------------ field in this struct
[INFO] [stderr] 10 |     sprite_path: PathBuf,
[INFO] [stderr] 11 |     collider: ColliderHandle,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `interceptors` (lib) generated 61 warnings (run `cargo fix --lib -p interceptors` to apply 44 suggestions)
[INFO] [stderr] warning: `interceptors` (lib test) generated 61 warnings (61 duplicates)
[INFO] [stderr] warning: unused import: `AreaId`
[INFO] [stderr]  --> src/server/server.rs:3:119
[INFO] [stderr]   |
[INFO] [stderr] 3 | use interceptors_lib::{ClientId, Owner, Prefabs, ServerAssets, ServerIO, ServerTickContext, TickContext, area::{Area, AreaId, AreaSav...
[INFO] [stderr]   |                                                                                                                       ^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable statement
[INFO] [stderr]    --> src/server/server.rs:219:21
[INFO] [stderr]     |
[INFO] [stderr] 217 |                       panic!();
[INFO] [stderr]     |                       -------- any code following this expression is unreachable
[INFO] [stderr] 218 |                       // just forward it for now
[INFO] [stderr] 219 | /                     self.network_io.send_all_except(
[INFO] [stderr] 220 | |                         network_packet, 
[INFO] [stderr] 221 | |                         client_id
[INFO] [stderr] 222 | |                     );
[INFO] [stderr]     | |______________________^ unreachable statement
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `update`
[INFO] [stderr]    --> src/server/server.rs:216:45
[INFO] [stderr]     |
[INFO] [stderr] 216 |                 NetworkPacket::SetPropVoxel(update) => {
[INFO] [stderr]     |                                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_update`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ColliderBuilder`
[INFO] [stderr]  --> src/client/client.rs:5:40
[INFO] [stderr]   |
[INFO] [stderr] 5 | use rapier2d::{math::Vector, prelude::{ColliderBuilder, SharedShape}};
[INFO] [stderr]   |                                        ^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: fields `material`, `spawned`, and `test_button` are never read
[INFO] [stderr]   --> src/client/client.rs:22:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub struct Client {
[INFO] [stderr]    |            ------ fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 22 |     material: Material,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 28 |     spawned: bool,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 29 |     fonts: FontLoader,
[INFO] [stderr] 30 |     test_button: Button,
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: method `update_camera_to_match_screen_size` is never used
[INFO] [stderr]    --> src/client/client.rs:605:12
[INFO] [stderr]     |
[INFO] [stderr] 170 | impl Client {
[INFO] [stderr]     | ----------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 605 |     pub fn update_camera_to_match_screen_size(&mut self) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `played_radio_chatter` and `start` are never read
[INFO] [stderr]   --> src/client/main_menu.rs:16:5
[INFO] [stderr]    |
[INFO] [stderr]  7 | pub struct MainMenu {
[INFO] [stderr]    |            -------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 16 |     played_radio_chatter: bool,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 17 |     start: web_time::Instant,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `draw_coords`, `reload_textures`, and `play_radio_chatter` are never used
[INFO] [stderr]    --> src/client/main_menu.rs:25:12
[INFO] [stderr]     |
[INFO] [stderr]  22 | impl MainMenu {
[INFO] [stderr]     | ------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr]  25 |     pub fn draw_coords(&self, cursor: Vec2) {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  33 |     async fn reload_textures(&mut self) {
[INFO] [stderr]     |              ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 178 |     fn play_radio_chatter(&mut self) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `round_to_nearest_50` is never used
[INFO] [stderr]   --> src/editor/main.rs:30:4
[INFO] [stderr]    |
[INFO] [stderr] 30 | fn round_to_nearest_50(n: f32) -> f32 {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `last_cursor_move` is never read
[INFO] [stderr]   --> src/editor/editor.rs:35:5
[INFO] [stderr]    |
[INFO] [stderr] 24 | pub struct AreaEditor {
[INFO] [stderr]    |            ---------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 35 |     last_cursor_move: web_time::Instant,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `interceptors` (bin "server" test) generated 3 warnings (run `cargo fix --bin "server" -p interceptors --tests` to apply 2 suggestions)
[INFO] [stderr] warning: `interceptors` (bin "client" test) generated 5 warnings (run `cargo fix --bin "client" -p interceptors --tests` to apply 1 suggestion)
[INFO] [stderr] warning: `interceptors` (bin "editor" test) generated 2 warnings
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.39s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/interceptors_lib-56ce25c0233013cc)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/client/main.rs (/opt/rustwide/target/debug/deps/client-2cb66330646b1c42)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/decoration-util/main.rs (/opt/rustwide/target/debug/deps/decoration_util-c87dde54d35038fa)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/editor/main.rs (/opt/rustwide/target/debug/deps/editor-7ab8c3453360b2d3)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/server/main.rs (/opt/rustwide/target/debug/deps/server-657f28b4f269f57d)
[INFO] [stderr]    Doc-tests interceptors_lib
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]     --> src/player.rs:1020:16
[INFO] [stderr]      |
[INFO] [stderr] 1020 |             if (collider_handle == self.body.collider_handle) {
[INFO] [stderr]      |                ^                                            ^
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]      |
[INFO] [stderr] 1020 -             if (collider_handle == self.body.collider_handle) {
[INFO] [stderr] 1020 +             if collider_handle == self.body.collider_handle  {
[INFO] [stderr]      |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]     --> src/player.rs:1026:16
[INFO] [stderr]      |
[INFO] [stderr] 1026 |             if (collider_handle == self.head.collider_handle) {
[INFO] [stderr]      |                ^                                            ^
[INFO] [stderr]      |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]      |
[INFO] [stderr] 1026 -             if (collider_handle == self.head.collider_handle) {
[INFO] [stderr] 1026 +             if collider_handle == self.head.collider_handle  {
[INFO] [stderr]      |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around function argument
[INFO] [stderr]     --> src/prop.rs:1000:17
[INFO] [stderr]      |
[INFO] [stderr] 1000 |                 (removed_voxel.x as f32 * (8. / self.scale)), 
[INFO] [stderr]      |                 ^                                          ^
[INFO] [stderr]      |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]      |
[INFO] [stderr] 1000 -                 (removed_voxel.x as f32 * (8. / self.scale)), 
[INFO] [stderr] 1000 +                 removed_voxel.x as f32 * (8. / self.scale), 
[INFO] [stderr]      |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around function argument
[INFO] [stderr]     --> src/prop.rs:1001:17
[INFO] [stderr]      |
[INFO] [stderr] 1001 |                 ((((removed_voxel.y as f32 * (8. / self.scale)) * -1.) + texture.height()) - (8. / self.scale)),
[INFO] [stderr]      |                 ^                                                                                             ^
[INFO] [stderr]      |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]      |
[INFO] [stderr] 1001 -                 ((((removed_voxel.y as f32 * (8. / self.scale)) * -1.) + texture.height()) - (8. / self.scale)),
[INFO] [stderr] 1001 +                 (((removed_voxel.y as f32 * (8. / self.scale)) * -1.) + texture.height()) - (8. / self.scale),
[INFO] [stderr]      |
[INFO] [stderr] 
[INFO] [stderr] warning: 4 warnings emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "9897e5266625e7e0e1d193d0106dc39068fd98567dca817864a8ef4a16babb27", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9897e5266625e7e0e1d193d0106dc39068fd98567dca817864a8ef4a16babb27", kill_on_drop: false }`
[INFO] [stdout] 9897e5266625e7e0e1d193d0106dc39068fd98567dca817864a8ef4a16babb27
