[INFO] cloning repository https://github.com/ChecksumDev/banchoxide
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ChecksumDev/banchoxide" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FChecksumDev%2Fbanchoxide", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FChecksumDev%2Fbanchoxide'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] e76f0920ec5b624d3b9a334e1328c262746b6ad6
[INFO] checking ChecksumDev/banchoxide against 1.95.0 for pr-155915
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FChecksumDev%2Fbanchoxide" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/ChecksumDev/banchoxide
[INFO] finished tweaking git repo https://github.com/ChecksumDev/banchoxide
[INFO] tweaked toml for git repo https://github.com/ChecksumDev/banchoxide written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/ChecksumDev/banchoxide on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/ChecksumDev/banchoxide 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.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded wasm-bindgen-futures v0.4.29
[INFO] [stderr]   Downloaded tracing v0.1.32
[INFO] [stderr]   Downloaded local-channel v0.1.2
[INFO] [stderr]   Downloaded quote v1.0.17
[INFO] [stderr]   Downloaded ipnet v2.4.0
[INFO] [stderr]   Downloaded bytestring v1.0.0
[INFO] [stderr]   Downloaded local-waker v0.1.2
[INFO] [stderr]   Downloaded num_threads v0.1.5
[INFO] [stderr]   Downloaded actix-web-codegen v4.0.0
[INFO] [stderr]   Downloaded darling_macro v0.13.2
[INFO] [stderr]   Downloaded security-framework v2.6.1
[INFO] [stderr]   Downloaded actix-utils v3.0.0
[INFO] [stderr]   Downloaded md-5 v0.10.1
[INFO] [stderr]   Downloaded firestorm v0.5.0
[INFO] [stderr]   Downloaded actix-rt v2.7.0
[INFO] [stderr]   Downloaded actix-server v2.1.1
[INFO] [stderr]   Downloaded zstd-safe v4.1.4+zstd.1.5.2
[INFO] [stderr]   Downloaded os_info v3.2.0
[INFO] [stderr]   Downloaded actix-router v0.5.0
[INFO] [stderr]   Downloaded semver v1.0.7
[INFO] [stderr]   Downloaded cookie v0.16.0
[INFO] [stderr]   Downloaded zstd v0.10.0+zstd.1.5.2
[INFO] [stderr]   Downloaded time v0.3.9
[INFO] [stderr]   Downloaded tracing-core v0.1.24
[INFO] [stderr]   Downloaded bson v2.1.0
[INFO] [stderr]   Downloaded reqwest v0.11.10
[INFO] [stderr]   Downloaded serde_with v1.12.0
[INFO] [stderr]   Downloaded actix-http v3.0.4
[INFO] [stderr]   Downloaded hyper v0.14.18
[INFO] [stderr]   Downloaded tokio-util v0.7.1
[INFO] [stderr]   Downloaded darling_core v0.13.2
[INFO] [stderr]   Downloaded actix-web v4.0.1
[INFO] [stderr]   Downloaded mongodb v2.1.0
[INFO] [stderr]   Downloaded syn v1.0.90
[INFO] [stderr]   Downloaded serde_with_macros v1.5.1
[INFO] [stderr]   Downloaded tracing-attributes v0.1.20
[INFO] [stderr]   Downloaded darling v0.13.2
[INFO] [stderr]   Downloaded typed-builder v0.9.1
[INFO] [stderr]   Downloaded httparse v1.6.0
[INFO] [stderr]   Downloaded time-macros v0.2.4
[INFO] [stderr]   Downloaded tokio v1.17.0
[INFO] [stderr]   Downloaded zstd-sys v1.6.3+zstd.1.5.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d147cd01ee8b991b58ba31ed89842913c7832b11d6cfa4e99722dfaca5a6674f
[INFO] running `Command { std: "docker" "start" "-a" "d147cd01ee8b991b58ba31ed89842913c7832b11d6cfa4e99722dfaca5a6674f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d147cd01ee8b991b58ba31ed89842913c7832b11d6cfa4e99722dfaca5a6674f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d147cd01ee8b991b58ba31ed89842913c7832b11d6cfa4e99722dfaca5a6674f", kill_on_drop: false }`
[INFO] [stdout] d147cd01ee8b991b58ba31ed89842913c7832b11d6cfa4e99722dfaca5a6674f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 025a27545ac6952ad11b7309c5c920acef1aba46b043e2cd2d69d5cef19779ab
[INFO] running `Command { std: "docker" "start" "-a" "025a27545ac6952ad11b7309c5c920acef1aba46b043e2cd2d69d5cef19779ab", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.121
[INFO] [stderr]    Compiling syn v1.0.90
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]    Compiling log v0.4.16
[INFO] [stderr]     Checking once_cell v1.10.0
[INFO] [stderr]     Checking pin-project-lite v0.2.8
[INFO] [stderr]    Compiling futures-core v0.3.21
[INFO] [stderr]     Checking smallvec v1.8.0
[INFO] [stderr]     Checking bytes v1.1.0
[INFO] [stderr]    Compiling parking_lot_core v0.9.2
[INFO] [stderr]     Checking scopeguard v1.1.0
[INFO] [stderr]    Compiling lock_api v0.4.7
[INFO] [stderr]    Compiling generic-array v0.14.5
[INFO] [stderr]     Checking memchr v2.4.1
[INFO] [stderr]    Compiling quote v1.0.17
[INFO] [stderr]     Checking futures-sink v0.3.21
[INFO] [stderr]     Checking typenum v1.15.0
[INFO] [stderr]    Compiling futures-task v0.3.21
[INFO] [stderr]    Compiling futures-channel v0.3.21
[INFO] [stderr]    Compiling futures-util v0.3.21
[INFO] [stderr]     Checking itoa v1.0.1
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]     Checking futures-io v0.3.21
[INFO] [stderr]     Checking slab v0.4.6
[INFO] [stderr]     Checking pin-utils v0.1.0
[INFO] [stderr]    Compiling serde_derive v1.0.136
[INFO] [stderr]    Compiling serde v1.0.136
[INFO] [stderr]    Compiling indexmap v1.8.1
[INFO] [stderr]     Checking tracing-core v0.1.24
[INFO] [stderr]    Compiling pkg-config v0.3.25
[INFO] [stderr]     Checking percent-encoding v2.1.0
[INFO] [stderr]     Checking tinyvec_macros v0.1.0
[INFO] [stderr]     Checking hashbrown v0.11.2
[INFO] [stderr]     Checking fnv v1.0.7
[INFO] [stderr]     Checking tinyvec v1.5.1
[INFO] [stderr]     Checking matches v0.1.9
[INFO] [stderr]     Checking bitflags v1.3.2
[INFO] [stderr]     Checking unicode-bidi v0.3.7
[INFO] [stderr]     Checking base64 v0.13.0
[INFO] [stderr]     Checking ppv-lite86 v0.2.16
[INFO] [stderr]     Checking http v0.2.6
[INFO] [stderr]    Compiling httparse v1.6.0
[INFO] [stderr]     Checking untrusted v0.7.1
[INFO] [stderr]     Checking spin v0.5.2
[INFO] [stderr]     Checking form_urlencoded v1.0.1
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling serde_json v1.0.79
[INFO] [stderr]     Checking ryu v1.0.9
[INFO] [stderr]    Compiling jobserver v0.1.24
[INFO] [stderr]     Checking cpufeatures v0.2.2
[INFO] [stderr]     Checking foreign-types-shared v0.1.1
[INFO] [stderr]    Compiling miniz_oxide v0.4.4
[INFO] [stderr]    Compiling num-integer v0.1.44
[INFO] [stderr]     Checking foreign-types v0.3.2
[INFO] [stderr]     Checking local-waker v0.1.2
[INFO] [stderr]    Compiling zstd-safe v4.1.4+zstd.1.5.2
[INFO] [stderr]     Checking alloc-no-stdlib v2.0.3
[INFO] [stderr]    Compiling async-trait v0.1.53
[INFO] [stderr]    Compiling cc v1.0.73
[INFO] [stderr]     Checking httpdate v1.0.2
[INFO] [stderr]    Compiling native-tls v0.2.10
[INFO] [stderr]     Checking signal-hook-registry v1.4.0
[INFO] [stderr]     Checking mio v0.8.2
[INFO] [stderr]     Checking num_cpus v1.13.1
[INFO] [stderr]     Checking socket2 v0.4.4
[INFO] [stderr]     Checking parking_lot v0.12.0
[INFO] [stderr]     Checking getrandom v0.2.6
[INFO] [stderr]     Checking unicode-normalization v0.1.19
[INFO] [stderr]     Checking alloc-stdlib v0.2.1
[INFO] [stderr]    Compiling aho-corasick v0.7.18
[INFO] [stderr]     Checking instant v0.1.12
[INFO] [stderr]     Checking adler v1.0.2
[INFO] [stderr]     Checking try-lock v0.2.3
[INFO] [stderr]     Checking rand_core v0.6.3
[INFO] [stderr]     Checking ahash v0.7.6
[INFO] [stderr]    Compiling paste v1.0.7
[INFO] [stderr]     Checking openssl-probe v0.1.5
[INFO] [stderr]     Checking subtle v2.4.1
[INFO] [stderr]     Checking ipnet v2.4.0
[INFO] [stderr]     Checking opaque-debug v0.3.0
[INFO] [stderr]     Checking match_cfg v0.1.0
[INFO] [stderr]    Compiling heck v0.4.0
[INFO] [stderr]     Checking hostname v0.3.1
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking idna v0.2.3
[INFO] [stderr]     Checking parking_lot_core v0.8.5
[INFO] [stderr]     Checking brotli-decompressor v2.3.2
[INFO] [stderr]     Checking want v0.3.0
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking time v0.1.44
[INFO] [stderr]     Checking encoding_rs v0.8.30
[INFO] [stderr]     Checking crc32fast v1.3.2
[INFO] [stderr]     Checking url v2.2.2
[INFO] [stderr]     Checking actix-utils v3.0.0
[INFO] [stderr]     Checking actix-service v2.0.2
[INFO] [stderr]    Compiling bytestring v1.0.0
[INFO] [stderr]    Compiling cookie v0.16.0
[INFO] [stderr]    Compiling convert_case v0.4.0
[INFO] [stderr]    Compiling openssl-sys v0.9.72
[INFO] [stderr]    Compiling ring v0.16.20
[INFO] [stderr]    Compiling zstd-sys v1.6.3+zstd.1.5.2
[INFO] [stderr]     Checking num_threads v0.1.5
[INFO] [stderr]     Checking crypto-common v0.1.3
[INFO] [stderr]     Checking digest v0.9.0
[INFO] [stderr]     Checking block-buffer v0.10.2
[INFO] [stderr]     Checking block-buffer v0.9.0
[INFO] [stderr]    Compiling regex v1.5.5
[INFO] [stderr]     Checking crypto-mac v0.11.1
[INFO] [stderr]     Checking digest v0.10.3
[INFO] [stderr]    Compiling time-macros v0.2.4
[INFO] [stderr]     Checking mime v0.3.16
[INFO] [stderr]     Checking data-encoding v2.3.2
[INFO] [stderr]    Compiling openssl v0.10.38
[INFO] [stderr]     Checking tower-service v0.3.1
[INFO] [stderr]     Checking quick-error v1.2.3
[INFO] [stderr]     Checking regex-syntax v0.6.25
[INFO] [stderr]     Checking linked-hash-map v0.5.4
[INFO] [stderr]    Compiling firestorm v0.5.0
[INFO] [stderr]     Checking resolv-conf v0.7.0
[INFO] [stderr]     Checking sha-1 v0.10.0
[INFO] [stderr]     Checking lru-cache v0.1.2
[INFO] [stderr]     Checking flate2 v1.0.22
[INFO] [stderr]     Checking chrono v0.4.19
[INFO] [stderr]     Checking brotli v3.3.4
[INFO] [stderr]     Checking parking_lot v0.11.2
[INFO] [stderr]     Checking http-body v0.4.4
[INFO] [stderr]     Checking hex v0.4.3
[INFO] [stderr]     Checking language-tags v0.3.2
[INFO] [stderr]     Checking pbkdf2 v0.8.0
[INFO] [stderr]     Checking hmac v0.11.0
[INFO] [stderr]     Checking sha2 v0.9.9
[INFO] [stderr]     Checking md-5 v0.9.1
[INFO] [stderr]     Checking sha-1 v0.9.8
[INFO] [stderr]     Checking stringprep v0.1.2
[INFO] [stderr]     Checking rustls-pemfile v0.2.1
[INFO] [stderr]     Checking os_info v3.2.0
[INFO] [stderr]     Checking strsim v0.10.0
[INFO] [stderr]     Checking version_check v0.9.4
[INFO] [stderr]     Checking take_mut v0.2.2
[INFO] [stderr]     Checking md-5 v0.10.1
[INFO] [stderr]     Checking async_once v0.2.6
[INFO] [stderr]     Checking time v0.3.9
[INFO] [stderr]    Compiling darling_core v0.13.2
[INFO] [stderr]     Checking webpki v0.21.4
[INFO] [stderr]     Checking sct v0.6.1
[INFO] [stderr]     Checking rustls v0.19.1
[INFO] [stderr]     Checking webpki-roots v0.21.1
[INFO] [stderr]    Compiling actix-router v0.5.0
[INFO] [stderr]    Compiling tokio-macros v1.7.0
[INFO] [stderr]    Compiling futures-macro v0.3.21
[INFO] [stderr]     Checking tokio v1.17.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.20
[INFO] [stderr]    Compiling thiserror-impl v1.0.30
[INFO] [stderr]    Compiling darling_macro v0.13.2
[INFO] [stderr]    Compiling darling v0.13.2
[INFO] [stderr]    Compiling enum-as-inner v0.3.4
[INFO] [stderr]    Compiling serde_with_macros v1.5.1
[INFO] [stderr]    Compiling derive_more v0.99.17
[INFO] [stderr]     Checking tracing v0.1.32
[INFO] [stderr]    Compiling actix-web-codegen v4.0.0
[INFO] [stderr]     Checking thiserror v1.0.30
[INFO] [stderr]    Compiling typed-builder v0.9.1
[INFO] [stderr]    Compiling derivative v2.2.0
[INFO] [stderr]    Compiling actix-macros v0.2.3
[INFO] [stderr]     Checking local-channel v0.1.2
[INFO] [stderr]     Checking futures-executor v0.3.21
[INFO] [stderr]     Checking futures v0.3.21
[INFO] [stderr]     Checking tokio-util v0.7.1
[INFO] [stderr]     Checking actix-rt v2.7.0
[INFO] [stderr]     Checking trust-dns-proto v0.20.4
[INFO] [stderr]     Checking tokio-native-tls v0.3.0
[INFO] [stderr]     Checking tokio-util v0.6.9
[INFO] [stderr]     Checking tokio-rustls v0.22.0
[INFO] [stderr]     Checking actix-server v2.1.1
[INFO] [stderr]     Checking h2 v0.3.13
[INFO] [stderr]     Checking actix-codec v0.5.0
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking serde_bytes v0.11.5
[INFO] [stderr]     Checking uuid v0.8.2
[INFO] [stderr]     Checking serde_with v1.12.0
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking trust-dns-resolver v0.20.4
[INFO] [stderr]     Checking bson v2.1.0
[INFO] [stderr]     Checking mongodb v2.1.0
[INFO] [stderr]     Checking hyper v0.14.18
[INFO] [stderr]     Checking hyper-tls v0.5.0
[INFO] [stderr]     Checking reqwest v0.11.10
[INFO] [stderr]     Checking zstd v0.10.0+zstd.1.5.2
[INFO] [stderr]     Checking actix-http v3.0.4
[INFO] [stderr]     Checking actix-web v4.0.1
[INFO] [stderr]     Checking banchoxide v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `constants::packets::*`
[INFO] [stdout]  --> src/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use constants::packets::*;
[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: `constants::packets::*`
[INFO] [stdout]  --> src/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use constants::packets::*;
[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: `packets::*`
[INFO] [stdout]  --> src/main.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use packets::*;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `packets::*`
[INFO] [stdout]  --> src/main.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use packets::*;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PACKET_HANDLERS` and `RESTRICTED_PACKET_HANDLERS`
[INFO] [stdout]  --> src/main.rs:4:22
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::packets::{PACKET_HANDLERS, RESTRICTED_PACKET_HANDLERS};
[INFO] [stdout]   |                      ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::LoginResponse`
[INFO] [stdout]  --> src/main.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::utils::LoginResponse;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PACKET_HANDLERS` and `RESTRICTED_PACKET_HANDLERS`
[INFO] [stdout]  --> src/main.rs:4:22
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::packets::{PACKET_HANDLERS, RESTRICTED_PACKET_HANDLERS};
[INFO] [stdout]   |                      ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Error`, `HttpRequest`, `HttpResponse`, `Responder`, and `error`
[INFO] [stdout]  --> src/main.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | use actix_web::{error, web, App, Error, HttpRequest, HttpResponse, HttpServer, Responder};
[INFO] [stdout]   |                 ^^^^^            ^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::LoginResponse`
[INFO] [stdout]  --> src/main.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::utils::LoginResponse;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Error`, `HttpRequest`, `HttpResponse`, `Responder`, and `error`
[INFO] [stdout]  --> src/main.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | use actix_web::{error, web, App, Error, HttpRequest, HttpResponse, HttpServer, Responder};
[INFO] [stdout]   |                 ^^^^^            ^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_once::AsyncOnce`
[INFO] [stdout]  --> src/main.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use async_once::AsyncOnce;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures_util::stream::StreamExt as _`
[INFO] [stdout]  --> src/main.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use futures_util::stream::StreamExt as _;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Client` and `options::ClientOptions`
[INFO] [stdout]  --> src/main.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 | use mongodb::{options::ClientOptions, Client};
[INFO] [stdout]   |               ^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]   --> src/main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::cell::RefCell;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Ordering`
[INFO] [stdout]   --> src/main.rs:11:38
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::sync::atomic::{AtomicUsize, Ordering};
[INFO] [stdout]    |                                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `collections::HashSet`
[INFO] [stdout]   --> src/main.rs:13:33
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::{collections::HashMap, collections::HashSet, sync::Arc};
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TcpListener` and `TcpStream`
[INFO] [stdout]   --> src/main.rs:15:18
[INFO] [stdout]    |
[INFO] [stdout] 15 | use tokio::net::{TcpListener, TcpStream};
[INFO] [stdout]    |                  ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `App`, `HttpServer`, `Responder`, and `error`
[INFO] [stdout]  --> src/api/domains/cho.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use actix_web::{error, web, App, Error, HttpRequest, HttpResponse, HttpServer, Responder};
[INFO] [stdout]   |                 ^^^^^       ^^^                                    ^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_once::AsyncOnce`
[INFO] [stdout]  --> src/api/domains/cho.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use async_once::AsyncOnce;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Client` and `options::ClientOptions`
[INFO] [stdout]   --> src/api/domains/cho.rs:10:15
[INFO] [stdout]    |
[INFO] [stdout] 10 | use mongodb::{options::ClientOptions, Client};
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_once::AsyncOnce`
[INFO] [stdout]  --> src/main.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use async_once::AsyncOnce;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures_util::stream::StreamExt as _`
[INFO] [stdout]  --> src/main.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use futures_util::stream::StreamExt as _;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Client` and `options::ClientOptions`
[INFO] [stdout]  --> src/main.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 | use mongodb::{options::ClientOptions, Client};
[INFO] [stdout]   |               ^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]   --> src/main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::cell::RefCell;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Ordering`
[INFO] [stdout]   --> src/main.rs:11:38
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::sync::atomic::{AtomicUsize, Ordering};
[INFO] [stdout]    |                                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `collections::HashSet`
[INFO] [stdout]   --> src/main.rs:13:33
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::{collections::HashMap, collections::HashSet, sync::Arc};
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TcpListener` and `TcpStream`
[INFO] [stdout]   --> src/main.rs:15:18
[INFO] [stdout]    |
[INFO] [stdout] 15 | use tokio::net::{TcpListener, TcpStream};
[INFO] [stdout]    |                  ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `App`, `HttpServer`, `Responder`, and `error`
[INFO] [stdout]  --> src/api/domains/cho.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use actix_web::{error, web, App, Error, HttpRequest, HttpResponse, HttpServer, Responder};
[INFO] [stdout]   |                 ^^^^^       ^^^                                    ^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_once::AsyncOnce`
[INFO] [stdout]  --> src/api/domains/cho.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use async_once::AsyncOnce;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Client` and `options::ClientOptions`
[INFO] [stdout]   --> src/api/domains/cho.rs:10:15
[INFO] [stdout]    |
[INFO] [stdout] 10 | use mongodb::{options::ClientOptions, Client};
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]   --> src/api/domains/cho.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::cell::RefCell;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]   --> src/api/domains/cho.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::cell::RefCell;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AtomicUsize`
[INFO] [stdout]   --> src/api/domains/cho.rs:12:25
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::sync::atomic::{AtomicUsize, Ordering};
[INFO] [stdout]    |                         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Mutex`
[INFO] [stdout]   --> src/api/domains/cho.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::sync::Mutex;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `collections::HashMap`, `collections::HashSet`, and `sync::Arc`
[INFO] [stdout]   --> src/api/domains/cho.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | use std::{collections::HashMap, collections::HashSet, sync::Arc};
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TcpListener` and `TcpStream`
[INFO] [stdout]   --> src/api/domains/cho.rs:21:18
[INFO] [stdout]    |
[INFO] [stdout] 21 | use tokio::net::{TcpListener, TcpStream};
[INFO] [stdout]    |                  ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `App`, `HttpServer`, `Responder`, and `web`
[INFO] [stdout]  --> src/api/domains/osu.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use actix_web::{web, App, HttpResponse, HttpServer, Responder, Error};
[INFO] [stdout]   |                 ^^^  ^^^                ^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `bancho_connect_res` should have an upper camel case name
[INFO] [stdout]  --> src/api/domains/osu.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | struct bancho_connect_res {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `BanchoConnectRes`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/constants/mods.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AtomicUsize`
[INFO] [stdout]   --> src/api/domains/cho.rs:12:25
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::sync::atomic::{AtomicUsize, Ordering};
[INFO] [stdout]    |                         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Mutex`
[INFO] [stdout]   --> src/api/domains/cho.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::sync::Mutex;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `collections::HashMap`, `collections::HashSet`, and `sync::Arc`
[INFO] [stdout]   --> src/api/domains/cho.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | use std::{collections::HashMap, collections::HashSet, sync::Arc};
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TcpListener` and `TcpStream`
[INFO] [stdout]   --> src/api/domains/cho.rs:21:18
[INFO] [stdout]    |
[INFO] [stdout] 21 | use tokio::net::{TcpListener, TcpStream};
[INFO] [stdout]    |                  ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `App`, `HttpServer`, `Responder`, and `web`
[INFO] [stdout]  --> src/api/domains/osu.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use actix_web::{web, App, HttpResponse, HttpServer, Responder, Error};
[INFO] [stdout]   |                 ^^^  ^^^                ^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bson::oid::ObjectId`
[INFO] [stdout]  --> src/structs/player.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use bson::oid::ObjectId;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `bancho_connect_res` should have an upper camel case name
[INFO] [stdout]  --> src/api/domains/osu.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | struct bancho_connect_res {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `BanchoConnectRes`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Timelike`
[INFO] [stdout]  --> src/structs/player.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 | use chrono::{DateTime, Timelike, Utc};
[INFO] [stdout]   |                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Score`
[INFO] [stdout]   --> src/structs/player.rs:14:20
[INFO] [stdout]    |
[INFO] [stdout] 14 |     score::{Grade, Score},
[INFO] [stdout]    |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Digest` and `Md5`
[INFO] [stdout]  --> src/structs/score.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 | use md5::{Digest, Md5};
[INFO] [stdout]   |           ^^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/structs/score.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::Path`
[INFO] [stdout]  --> src/structs/score.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::path::Path;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `collections`
[INFO] [stdout]  --> src/structs/score.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::{collections, fmt::Display};
[INFO] [stdout]   |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashSet`
[INFO] [stdout]  --> src/utils.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashSet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::packets::Reader`
[INFO] [stdout]  --> src/utils.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::packets::Reader;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action` and `Status`
[INFO] [stdout]  --> src/packets.rs:4:30
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::structs::player::{Action, Player, Status};
[INFO] [stdout]   |                              ^^^^^^          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Error` and `HttpResponse`
[INFO] [stdout]  --> src/packets.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use actix_web::{Error, HttpResponse};
[INFO] [stdout]   |                 ^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/constants/mods.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bson::oid::ObjectId`
[INFO] [stdout]  --> src/structs/player.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use bson::oid::ObjectId;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Timelike`
[INFO] [stdout]  --> src/structs/player.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 | use chrono::{DateTime, Timelike, Utc};
[INFO] [stdout]   |                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Score`
[INFO] [stdout]   --> src/structs/player.rs:14:20
[INFO] [stdout]    |
[INFO] [stdout] 14 |     score::{Grade, Score},
[INFO] [stdout]    |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Digest` and `Md5`
[INFO] [stdout]  --> src/structs/score.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 | use md5::{Digest, Md5};
[INFO] [stdout]   |           ^^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/structs/score.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::Path`
[INFO] [stdout]  --> src/structs/score.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::path::Path;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `collections`
[INFO] [stdout]  --> src/structs/score.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::{collections, fmt::Display};
[INFO] [stdout]   |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashSet`
[INFO] [stdout]  --> src/utils.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashSet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::packets::Reader`
[INFO] [stdout]  --> src/utils.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::packets::Reader;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action` and `Status`
[INFO] [stdout]  --> src/packets.rs:4:30
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::structs::player::{Action, Player, Status};
[INFO] [stdout]   |                              ^^^^^^          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Error` and `HttpResponse`
[INFO] [stdout]  --> src/packets.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use actix_web::{Error, HttpResponse};
[INFO] [stdout]   |                 ^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]   --> src/api/domains/cho.rs:84:18
[INFO] [stdout]    |
[INFO] [stdout] 84 |             let (id, _) = reader.read_header();
[INFO] [stdout]    |                  ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]   --> src/api/domains/cho.rs:84:18
[INFO] [stdout]    |
[INFO] [stdout] 84 |             let (id, _) = reader.read_header();
[INFO] [stdout]    |                  ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `silence_end`
[INFO] [stdout]     --> src/constants/packets.rs:1110:37
[INFO] [stdout]      |
[INFO] [stdout] 1110 |     pub async fn new<T>(user_id: T, silence_end: T) -> Self
[INFO] [stdout]      |                                     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_silence_end`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `silence_end`
[INFO] [stdout]     --> src/constants/packets.rs:1110:37
[INFO] [stdout]      |
[INFO] [stdout] 1110 |     pub async fn new<T>(user_id: T, silence_end: T) -> Self
[INFO] [stdout]      |                                     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_silence_end`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OSU_VERSION` is never used
[INFO] [stdout]  --> src/constants/regexes.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub const OSU_VERSION: &str =
[INFO] [stdout]   |           ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `USERNAME` is never used
[INFO] [stdout]  --> src/constants/regexes.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub const USERNAME: &str = "^[\\w \\[\\]-]{2,15}$";
[INFO] [stdout]   |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EMAIL` is never used
[INFO] [stdout]  --> src/constants/regexes.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub const EMAIL: &str = "^[^@\\s]{1,200}@[^@\\s\\.]{1,30}(?:\\.[^@\\.\\s]{2,24})+$";
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SCALED_DURATION` is never used
[INFO] [stdout]  --> src/constants/regexes.rs:5:11
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub const SCALED_DURATION: &str = "^(?P<duration>\\d{1,6})(?P<scale>s|m|h|d|w)$";
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TOURNEY_MATCHNAME` is never used
[INFO] [stdout]  --> src/constants/regexes.rs:6:11
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub const TOURNEY_MATCHNAME: &str =
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAPPOOL_PICK` is never used
[INFO] [stdout]  --> src/constants/regexes.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub const MAPPOOL_PICK: &str = "^([a-zA-Z]+)([0-9]+)$";
[INFO] [stdout]   |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BEST_OF` is never used
[INFO] [stdout]  --> src/constants/regexes.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub const BEST_OF: &str = "^(?:bo)?(\\d{1,2})$";
[INFO] [stdout]   |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoPong` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:148:12
[INFO] [stdout]     |
[INFO] [stdout] 148 | pub struct ChoPong {} // 8
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoHandleIrcChangeUsername` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:150:12
[INFO] [stdout]     |
[INFO] [stdout] 150 | pub struct ChoHandleIrcChangeUsername {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoUserLogout` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:173:12
[INFO] [stdout]     |
[INFO] [stdout] 173 | pub struct ChoUserLogout {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoSpectatorJoined` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:179:12
[INFO] [stdout]     |
[INFO] [stdout] 179 | pub struct ChoSpectatorJoined {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoSpectatorLeft` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:184:12
[INFO] [stdout]     |
[INFO] [stdout] 184 | pub struct ChoSpectatorLeft {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoSpectateFrames` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:189:12
[INFO] [stdout]     |
[INFO] [stdout] 189 | pub struct ChoSpectateFrames {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoVersionUpdate` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:194:12
[INFO] [stdout]     |
[INFO] [stdout] 194 | pub struct ChoVersionUpdate {} // 19
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoSpectatorCantSpectate` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:196:12
[INFO] [stdout]     |
[INFO] [stdout] 196 | pub struct ChoSpectatorCantSpectate {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoGetAttention` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:201:12
[INFO] [stdout]     |
[INFO] [stdout] 201 | pub struct ChoGetAttention {} // 23
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoDisposeMatch` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:212:12
[INFO] [stdout]     |
[INFO] [stdout] 212 | pub struct ChoDisposeMatch {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoToggleBlockNonFriendDms` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:217:12
[INFO] [stdout]     |
[INFO] [stdout] 217 | pub struct ChoToggleBlockNonFriendDms {} // 34
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoMatchJoinFail` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:219:12
[INFO] [stdout]     |
[INFO] [stdout] 219 | pub struct ChoMatchJoinFail {} // 37
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoFellowSpectatorJoined` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:221:12
[INFO] [stdout]     |
[INFO] [stdout] 221 | pub struct ChoFellowSpectatorJoined {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoFellowSpectatorLeft` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:226:12
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct ChoFellowSpectatorLeft {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoMatchTransferHost` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:231:12
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub struct ChoMatchTransferHost {} // 50
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoMatchAllPlayersLoaded` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:233:12
[INFO] [stdout]     |
[INFO] [stdout] 233 | pub struct ChoMatchAllPlayersLoaded {} // 53
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoMatchPlayerFailed` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:235:12
[INFO] [stdout]     |
[INFO] [stdout] 235 | pub struct ChoMatchPlayerFailed {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoMatchComplete` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:240:12
[INFO] [stdout]     |
[INFO] [stdout] 240 | pub struct ChoMatchComplete {} // 58
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoMatchSkip` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:242:12
[INFO] [stdout]     |
[INFO] [stdout] 242 | pub struct ChoMatchSkip {} // 61
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoChannelJoinSuccess` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:244:12
[INFO] [stdout]     |
[INFO] [stdout] 244 | pub struct ChoChannelJoinSuccess {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoChannelKick` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:256:12
[INFO] [stdout]     |
[INFO] [stdout] 256 | pub struct ChoChannelKick {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoChannelAutoJoin` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:261:12
[INFO] [stdout]     |
[INFO] [stdout] 261 | pub struct ChoChannelAutoJoin {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoMonitor` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:289:12
[INFO] [stdout]     |
[INFO] [stdout] 289 | pub struct ChoMonitor {} // 80
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoMatchPlayerSkipped` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:291:12
[INFO] [stdout]     |
[INFO] [stdout] 291 | pub struct ChoMatchPlayerSkipped {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoRestart` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:308:12
[INFO] [stdout]     |
[INFO] [stdout] 308 | pub struct ChoRestart {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoMatchInvite` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:313:12
[INFO] [stdout]     |
[INFO] [stdout] 313 | pub struct ChoMatchInvite {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoMatchChangePassword` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:323:12
[INFO] [stdout]     |
[INFO] [stdout] 323 | pub struct ChoMatchChangePassword {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoUserSilenced` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:333:12
[INFO] [stdout]     |
[INFO] [stdout] 333 | pub struct ChoUserSilenced {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoUserPresenceSingle` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:338:12
[INFO] [stdout]     |
[INFO] [stdout] 338 | pub struct ChoUserPresenceSingle {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoUserPresenceBundle` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:343:12
[INFO] [stdout]     |
[INFO] [stdout] 343 | pub struct ChoUserPresenceBundle {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoUserDmBlocked` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:348:12
[INFO] [stdout]     |
[INFO] [stdout] 348 | pub struct ChoUserDmBlocked {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoTargetIsSilenced` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:356:12
[INFO] [stdout]     |
[INFO] [stdout] 356 | pub struct ChoTargetIsSilenced {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoVersionUpdateForced` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct ChoVersionUpdateForced {} //102
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoSwitchServer` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:366:12
[INFO] [stdout]     |
[INFO] [stdout] 366 | pub struct ChoSwitchServer {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoAccountRestricted` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:371:12
[INFO] [stdout]     |
[INFO] [stdout] 371 | pub struct ChoAccountRestricted {} // 104
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoRtx` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct ChoRtx {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoMatchAbort` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:378:12
[INFO] [stdout]     |
[INFO] [stdout] 378 | pub struct ChoMatchAbort {} // 106
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoSwitchTournamentServer` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:380:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | pub struct ChoSwitchTournamentServer {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `write` is never used
[INFO] [stdout]    --> src/constants/packets.rs:481:18
[INFO] [stdout]     |
[INFO] [stdout] 480 | impl ChoPong {
[INFO] [stdout]     | ------------ associated function in this implementation
[INFO] [stdout] 481 |     pub async fn write() -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]    --> src/constants/packets.rs:489:18
[INFO] [stdout]     |
[INFO] [stdout] 488 | impl ChoHandleIrcChangeUsername {
[INFO] [stdout]     | ------------------------------- associated items in this implementation
[INFO] [stdout] 489 |     pub async fn new<T>(old: T, new: T) -> Self
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 499 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]    --> src/constants/packets.rs:586:18
[INFO] [stdout]     |
[INFO] [stdout] 585 | impl ChoUserLogout {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout] 586 |     pub async fn new<T>(user_id: T) -> Self
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 596 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]    --> src/constants/packets.rs:603:18
[INFO] [stdout]     |
[INFO] [stdout] 602 | impl ChoSpectatorJoined {
[INFO] [stdout]     | ----------------------- associated items in this implementation
[INFO] [stdout] 603 |     pub async fn new<T, U>(user_id: T) -> Self
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 612 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]    --> src/constants/packets.rs:619:18
[INFO] [stdout]     |
[INFO] [stdout] 618 | impl ChoSpectatorLeft {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout] 619 |     pub async fn new<T>(user_id: T) -> Self
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 628 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]    --> src/constants/packets.rs:635:18
[INFO] [stdout]     |
[INFO] [stdout] 634 | impl ChoSpectateFrames {
[INFO] [stdout]     | ---------------------- associated items in this implementation
[INFO] [stdout] 635 |     pub async fn new<T>(frames: T) -> Self
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 644 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `write` is never used
[INFO] [stdout]    --> src/constants/packets.rs:651:18
[INFO] [stdout]     |
[INFO] [stdout] 650 | impl ChoVersionUpdate {
[INFO] [stdout]     | --------------------- associated function in this implementation
[INFO] [stdout] 651 |     pub async fn write() -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]    --> src/constants/packets.rs:659:18
[INFO] [stdout]     |
[INFO] [stdout] 658 | impl ChoSpectatorCantSpectate {
[INFO] [stdout]     | ----------------------------- associated items in this implementation
[INFO] [stdout] 659 |     pub async fn new<T>(user_id: T) -> Self
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 668 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `write` is never used
[INFO] [stdout]    --> src/constants/packets.rs:678:18
[INFO] [stdout]     |
[INFO] [stdout] 677 | impl ChoGetAttention {
[INFO] [stdout]     | -------------------- associated function in this implementation
[INFO] [stdout] 678 |     pub async fn write() -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]    --> src/constants/packets.rs:699:18
[INFO] [stdout]     |
[INFO] [stdout] 698 | impl ChoDisposeMatch {
[INFO] [stdout]     | -------------------- associated items in this implementation
[INFO] [stdout] 699 |     pub async fn new<T>(match_id: T) -> Self
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 708 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `write` is never used
[INFO] [stdout]    --> src/constants/packets.rs:715:18
[INFO] [stdout]     |
[INFO] [stdout] 714 | impl ChoToggleBlockNonFriendDms {
[INFO] [stdout]     | ------------------------------- associated function in this implementation
[INFO] [stdout] 715 |     pub async fn write() -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `write` is never used
[INFO] [stdout]    --> src/constants/packets.rs:723:18
[INFO] [stdout]     |
[INFO] [stdout] 722 | impl ChoMatchJoinFail {
[INFO] [stdout]     | --------------------- associated function in this implementation
[INFO] [stdout] 723 |     pub async fn write() -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]    --> src/constants/packets.rs:731:18
[INFO] [stdout]     |
[INFO] [stdout] 730 | impl ChoFellowSpectatorJoined {
[INFO] [stdout]     | ----------------------------- associated items in this implementation
[INFO] [stdout] 731 |     pub async fn new<T>(user_id: T) -> Self
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 740 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]    --> src/constants/packets.rs:750:18
[INFO] [stdout]     |
[INFO] [stdout] 749 | impl ChoFellowSpectatorLeft {
[INFO] [stdout]     | --------------------------- associated items in this implementation
[INFO] [stdout] 750 |     pub async fn new<T>(user_id: T) -> Self
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 759 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `write` is never used
[INFO] [stdout]    --> src/constants/packets.rs:769:18
[INFO] [stdout]     |
[INFO] [stdout] 768 | impl ChoMatchAllPlayersLoaded {
[INFO] [stdout]     | ----------------------------- associated function in this implementation
[INFO] [stdout] 769 |     pub async fn write() -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]    --> src/constants/packets.rs:777:18
[INFO] [stdout]     |
[INFO] [stdout] 776 | impl ChoMatchPlayerFailed {
[INFO] [stdout]     | ------------------------- associated items in this implementation
[INFO] [stdout] 777 |     pub async fn new<T>(slot_id: T) -> Self
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 786 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `write` is never used
[INFO] [stdout]    --> src/constants/packets.rs:793:18
[INFO] [stdout]     |
[INFO] [stdout] 792 | impl ChoMatchComplete {
[INFO] [stdout]     | --------------------- associated function in this implementation
[INFO] [stdout] 793 |     pub async fn write() -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `write` is never used
[INFO] [stdout]    --> src/constants/packets.rs:801:18
[INFO] [stdout]     |
[INFO] [stdout] 800 | impl ChoMatchSkip {
[INFO] [stdout]     | ----------------- associated function in this implementation
[INFO] [stdout] 801 |     pub async fn write() -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]    --> src/constants/packets.rs:809:18
[INFO] [stdout]     |
[INFO] [stdout] 808 | impl ChoChannelJoinSuccess {
[INFO] [stdout]     | -------------------------- associated items in this implementation
[INFO] [stdout] 809 |     pub async fn new<T>(name: T) -> Self
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 816 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]    --> src/constants/packets.rs:847:18
[INFO] [stdout]     |
[INFO] [stdout] 846 | impl ChoChannelKick {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout] 847 |     pub async fn new<T>(name: T) -> Self
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 854 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]    --> src/constants/packets.rs:861:18
[INFO] [stdout]     |
[INFO] [stdout] 860 | impl ChoChannelAutoJoin {
[INFO] [stdout]     | ----------------------- associated items in this implementation
[INFO] [stdout] 861 |     pub async fn new<T, U>(name: T, topic: T, player_count: U) -> Self
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 873 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `write` is never used
[INFO] [stdout]    --> src/constants/packets.rs:956:18
[INFO] [stdout]     |
[INFO] [stdout] 955 | impl ChoMonitor {
[INFO] [stdout]     | --------------- associated function in this implementation
[INFO] [stdout] 956 |     pub async fn write() -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]    --> src/constants/packets.rs:964:18
[INFO] [stdout]     |
[INFO] [stdout] 963 | impl ChoMatchPlayerSkipped {
[INFO] [stdout]     | -------------------------- associated items in this implementation
[INFO] [stdout] 964 |     pub async fn new<T>(user_id: T) -> Self
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 973 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]     --> src/constants/packets.rs:1025:18
[INFO] [stdout]      |
[INFO] [stdout] 1024 | impl ChoRestart {
[INFO] [stdout]      | --------------- associated items in this implementation
[INFO] [stdout] 1025 |     pub async fn new<T>(ms_delay: T) -> Self
[INFO] [stdout]      |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 1034 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]     --> src/constants/packets.rs:1041:18
[INFO] [stdout]      |
[INFO] [stdout] 1040 | impl ChoMatchInvite {
[INFO] [stdout]      | ------------------- associated items in this implementation
[INFO] [stdout] 1041 |     pub async fn new<T, U>(player_name: T, msg: T, recipient: T, sender_id: U) -> Self
[INFO] [stdout]      |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 1054 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]     --> src/constants/packets.rs:1075:18
[INFO] [stdout]      |
[INFO] [stdout] 1074 | impl ChoMatchChangePassword {
[INFO] [stdout]      | --------------------------- associated items in this implementation
[INFO] [stdout] 1075 |     pub async fn new<T>(new_password: T) -> Self
[INFO] [stdout]      |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 1084 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]     --> src/constants/packets.rs:1110:18
[INFO] [stdout]      |
[INFO] [stdout] 1109 | impl ChoUserSilenced {
[INFO] [stdout]      | -------------------- associated items in this implementation
[INFO] [stdout] 1110 |     pub async fn new<T>(user_id: T, silence_end: T) -> Self
[INFO] [stdout]      |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 1119 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]     --> src/constants/packets.rs:1126:18
[INFO] [stdout]      |
[INFO] [stdout] 1125 | impl ChoUserPresenceSingle {
[INFO] [stdout]      | -------------------------- associated items in this implementation
[INFO] [stdout] 1126 |     pub async fn new<T>(user_id: T) -> Self
[INFO] [stdout]      |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 1135 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]     --> src/constants/packets.rs:1141:18
[INFO] [stdout]      |
[INFO] [stdout] 1140 | impl ChoUserPresenceBundle {
[INFO] [stdout]      | -------------------------- associated items in this implementation
[INFO] [stdout] 1141 |     pub async fn new<T>(user_ids: T) -> Self
[INFO] [stdout]      |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 1150 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]     --> src/constants/packets.rs:1156:18
[INFO] [stdout]      |
[INFO] [stdout] 1155 | impl ChoUserDmBlocked {
[INFO] [stdout]      | --------------------- associated items in this implementation
[INFO] [stdout] 1156 |     pub async fn new<T, U>(player_name: T, msg: T, recipient: T, sender_id: U) -> Self
[INFO] [stdout]      |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 1169 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]     --> src/constants/packets.rs:1181:18
[INFO] [stdout]      |
[INFO] [stdout] 1180 | impl ChoTargetIsSilenced {
[INFO] [stdout]      | ------------------------ associated items in this implementation
[INFO] [stdout] 1181 |     pub async fn new<T, U>(player_name: T, msg: T, recipient: T, sender_id: U) -> Self
[INFO] [stdout]      |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 1194 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `write` is never used
[INFO] [stdout]     --> src/constants/packets.rs:1206:18
[INFO] [stdout]      |
[INFO] [stdout] 1205 | impl ChoVersionUpdateForced {
[INFO] [stdout]      | --------------------------- associated function in this implementation
[INFO] [stdout] 1206 |     pub async fn write() -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]     --> src/constants/packets.rs:1213:18
[INFO] [stdout]      |
[INFO] [stdout] 1212 | impl ChoSwitchServer {
[INFO] [stdout]      | -------------------- associated function in this implementation
[INFO] [stdout] 1213 |     pub async fn new<T>(t: T) -> Self
[INFO] [stdout]      |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `write` is never used
[INFO] [stdout]     --> src/constants/packets.rs:1222:18
[INFO] [stdout]      |
[INFO] [stdout] 1221 | impl ChoAccountRestricted {
[INFO] [stdout]      | ------------------------- associated function in this implementation
[INFO] [stdout] 1222 |     pub async fn write() -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]     --> src/constants/packets.rs:1229:18
[INFO] [stdout]      |
[INFO] [stdout] 1228 | impl ChoRtx {
[INFO] [stdout]      | ----------- associated items in this implementation
[INFO] [stdout] 1229 |     pub async fn new<T>(msg: T) -> Self
[INFO] [stdout]      |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 1236 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `write` is never used
[INFO] [stdout]     --> src/constants/packets.rs:1242:18
[INFO] [stdout]      |
[INFO] [stdout] 1241 | impl ChoMatchAbort {
[INFO] [stdout]      | ------------------ associated function in this implementation
[INFO] [stdout] 1242 |     pub async fn write() -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]     --> src/constants/packets.rs:1249:18
[INFO] [stdout]      |
[INFO] [stdout] 1248 | impl ChoSwitchTournamentServer {
[INFO] [stdout]      | ------------------------------ associated items in this implementation
[INFO] [stdout] 1249 |     pub async fn new<T>(ip: T) -> Self
[INFO] [stdout]      |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 1256 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Achievement` is never constructed
[INFO] [stdout]  --> src/structs/achievement.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Achievement {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/structs/achievement.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout]  9 | impl Achievement {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] 10 |     pub fn new(id: i32, file: String, name: String, desc: String, cond: fn(i32) -> bool) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BEATMAPS_PATH` is never used
[INFO] [stdout]  --> src/structs/beatmap.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub const BEATMAPS_PATH: &str = "./data/osu";
[INFO] [stdout]   |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DEFAULT_LAST_UPDATE` is never used
[INFO] [stdout]  --> src/structs/beatmap.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub const DEFAULT_LAST_UPDATE: &str = "1970-01-01";
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `IGNORED_BEATMAP_CHARS` is never used
[INFO] [stdout]  --> src/structs/beatmap.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub const IGNORED_BEATMAP_CHARS: [&str; 8] = ["\"", "/", "*", "<", ">", "?", "\"", "|"];
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `osu_api`, `from_osuapi`, `from_osudirect`, and `from_str` are never used
[INFO] [stdout]    --> src/structs/beatmap.rs:61:12
[INFO] [stdout]     |
[INFO] [stdout]  46 | impl RankedStatus {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  61 |     pub fn osu_api(&self) -> i32 {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  86 |     pub fn from_osuapi(osuapi_status: i32) -> RankedStatus {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |     pub fn from_osudirect(osudirect_status: i32) -> RankedStatus {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 142 |     async fn from_str(status_str: &str) -> RankedStatus {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BeatmapSet` is never constructed
[INFO] [stdout]    --> src/structs/beatmap.rs:161:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | pub struct BeatmapSet {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Beatmap` is never constructed
[INFO] [stdout]    --> src/structs/beatmap.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 193 | pub struct Beatmap {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/structs/beatmap.rs:256:12
[INFO] [stdout]     |
[INFO] [stdout] 255 | impl Beatmap {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 256 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 315 |     pub fn full_name(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 326 |     pub fn url(&self) -> String {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 339 |     pub fn embed(&self) -> String {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 350 |     pub fn has_leaderboard(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 363 |     pub fn awards_ranked_pp(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 401 |     pub fn to_map(&self) -> HashMap<&str, String> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Menu` is never constructed
[INFO] [stdout]   --> src/structs/menu.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | struct Menu {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MenuFunction` is never constructed
[INFO] [stdout]   --> src/structs/menu.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct MenuFunction {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `menu_keygen` is never used
[INFO] [stdout]   --> src/structs/menu.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn menu_keygen() -> u32 {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OsuBeatmapRequestForm` is never constructed
[INFO] [stdout]  --> src/structs/models.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct OsuBeatmapRequestForm {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ModeData` is never constructed
[INFO] [stdout]    --> src/structs/player.rs:115:12
[INFO] [stdout]     |
[INFO] [stdout] 115 | pub struct ModeData {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Status` is never constructed
[INFO] [stdout]    --> src/structs/player.rs:128:12
[INFO] [stdout]     |
[INFO] [stdout] 128 | pub struct Status {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/structs/player.rs:138:12
[INFO] [stdout]     |
[INFO] [stdout] 137 | impl Status {
[INFO] [stdout]     | ----------- associated function in this implementation
[INFO] [stdout] 138 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LastNp` is never constructed
[INFO] [stdout]    --> src/structs/player.rs:150:12
[INFO] [stdout]     |
[INFO] [stdout] 150 | pub struct LastNp {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OsuVersion` is never constructed
[INFO] [stdout]    --> src/structs/player.rs:156:12
[INFO] [stdout]     |
[INFO] [stdout] 156 | pub struct OsuVersion {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ClientDetails` is never constructed
[INFO] [stdout]    --> src/structs/player.rs:162:12
[INFO] [stdout]     |
[INFO] [stdout] 162 | pub struct ClientDetails {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `client_hash` is never used
[INFO] [stdout]    --> src/structs/player.rs:173:12
[INFO] [stdout]     |
[INFO] [stdout] 172 | impl ClientDetails {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] 173 |     pub fn client_hash(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PlayerClan` is never constructed
[INFO] [stdout]    --> src/structs/player.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct PlayerClan {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BEATMAPS_PATH` is never used
[INFO] [stdout]   --> src/structs/score.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const BEATMAPS_PATH: &str = ".data/osu";
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_str` is never used
[INFO] [stdout]   --> src/structs/score.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | impl Grade {
[INFO] [stdout]    | ---------- associated function in this implementation
[INFO] [stdout] 31 |     pub fn from_str(s: &str) -> Grade {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Score` is never constructed
[INFO] [stdout]    --> src/structs/score.rs:175:12
[INFO] [stdout]     |
[INFO] [stdout] 175 | pub struct Score {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `mouse` should have an upper case name
[INFO] [stdout]    --> src/structs/player.rs:377:15
[INFO] [stdout]     |
[INFO] [stdout] 377 |         const mouse = 1;
[INFO] [stdout]     |               ^^^^^ help: convert the identifier to upper case: `MOUSE`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `tablet` should have an upper case name
[INFO] [stdout]    --> src/structs/player.rs:378:15
[INFO] [stdout]     |
[INFO] [stdout] 378 |         const tablet = 2;
[INFO] [stdout]     |               ^^^^^^ help: convert the identifier to upper case: `TABLET`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `keyboard` should have an upper case name
[INFO] [stdout]    --> src/structs/player.rs:379:15
[INFO] [stdout]     |
[INFO] [stdout] 379 |         const keyboard = 2;
[INFO] [stdout]     |               ^^^^^^^^ help: convert the identifier to upper case: `KEYBOARD`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `touch` should have an upper case name
[INFO] [stdout]    --> src/structs/player.rs:380:15
[INFO] [stdout]     |
[INFO] [stdout] 380 |         const touch = 4;
[INFO] [stdout]     |               ^^^^^ help: convert the identifier to upper case: `TOUCH`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `touch_touch` should have an upper case name
[INFO] [stdout]    --> src/structs/player.rs:381:15
[INFO] [stdout]     |
[INFO] [stdout] 381 |         const touch_touch = 8;
[INFO] [stdout]     |               ^^^^^^^^^^^ help: convert the identifier to upper case: `TOUCH_TOUCH`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OSU_VERSION` is never used
[INFO] [stdout]  --> src/constants/regexes.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub const OSU_VERSION: &str =
[INFO] [stdout]   |           ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `USERNAME` is never used
[INFO] [stdout]  --> src/constants/regexes.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub const USERNAME: &str = "^[\\w \\[\\]-]{2,15}$";
[INFO] [stdout]   |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EMAIL` is never used
[INFO] [stdout]  --> src/constants/regexes.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub const EMAIL: &str = "^[^@\\s]{1,200}@[^@\\s\\.]{1,30}(?:\\.[^@\\.\\s]{2,24})+$";
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SCALED_DURATION` is never used
[INFO] [stdout]  --> src/constants/regexes.rs:5:11
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub const SCALED_DURATION: &str = "^(?P<duration>\\d{1,6})(?P<scale>s|m|h|d|w)$";
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TOURNEY_MATCHNAME` is never used
[INFO] [stdout]  --> src/constants/regexes.rs:6:11
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub const TOURNEY_MATCHNAME: &str =
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAPPOOL_PICK` is never used
[INFO] [stdout]  --> src/constants/regexes.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub const MAPPOOL_PICK: &str = "^([a-zA-Z]+)([0-9]+)$";
[INFO] [stdout]   |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BEST_OF` is never used
[INFO] [stdout]  --> src/constants/regexes.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub const BEST_OF: &str = "^(?:bo)?(\\d{1,2})$";
[INFO] [stdout]   |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoPong` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:148:12
[INFO] [stdout]     |
[INFO] [stdout] 148 | pub struct ChoPong {} // 8
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoHandleIrcChangeUsername` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:150:12
[INFO] [stdout]     |
[INFO] [stdout] 150 | pub struct ChoHandleIrcChangeUsername {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoUserLogout` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:173:12
[INFO] [stdout]     |
[INFO] [stdout] 173 | pub struct ChoUserLogout {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoSpectatorJoined` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:179:12
[INFO] [stdout]     |
[INFO] [stdout] 179 | pub struct ChoSpectatorJoined {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoSpectatorLeft` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:184:12
[INFO] [stdout]     |
[INFO] [stdout] 184 | pub struct ChoSpectatorLeft {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoSpectateFrames` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:189:12
[INFO] [stdout]     |
[INFO] [stdout] 189 | pub struct ChoSpectateFrames {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoVersionUpdate` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:194:12
[INFO] [stdout]     |
[INFO] [stdout] 194 | pub struct ChoVersionUpdate {} // 19
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoSpectatorCantSpectate` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:196:12
[INFO] [stdout]     |
[INFO] [stdout] 196 | pub struct ChoSpectatorCantSpectate {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoGetAttention` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:201:12
[INFO] [stdout]     |
[INFO] [stdout] 201 | pub struct ChoGetAttention {} // 23
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoDisposeMatch` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:212:12
[INFO] [stdout]     |
[INFO] [stdout] 212 | pub struct ChoDisposeMatch {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoToggleBlockNonFriendDms` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:217:12
[INFO] [stdout]     |
[INFO] [stdout] 217 | pub struct ChoToggleBlockNonFriendDms {} // 34
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoMatchJoinFail` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:219:12
[INFO] [stdout]     |
[INFO] [stdout] 219 | pub struct ChoMatchJoinFail {} // 37
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoFellowSpectatorJoined` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:221:12
[INFO] [stdout]     |
[INFO] [stdout] 221 | pub struct ChoFellowSpectatorJoined {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoFellowSpectatorLeft` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:226:12
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct ChoFellowSpectatorLeft {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoMatchTransferHost` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:231:12
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub struct ChoMatchTransferHost {} // 50
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoMatchAllPlayersLoaded` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:233:12
[INFO] [stdout]     |
[INFO] [stdout] 233 | pub struct ChoMatchAllPlayersLoaded {} // 53
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoMatchPlayerFailed` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:235:12
[INFO] [stdout]     |
[INFO] [stdout] 235 | pub struct ChoMatchPlayerFailed {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoMatchComplete` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:240:12
[INFO] [stdout]     |
[INFO] [stdout] 240 | pub struct ChoMatchComplete {} // 58
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoMatchSkip` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:242:12
[INFO] [stdout]     |
[INFO] [stdout] 242 | pub struct ChoMatchSkip {} // 61
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoChannelJoinSuccess` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:244:12
[INFO] [stdout]     |
[INFO] [stdout] 244 | pub struct ChoChannelJoinSuccess {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoChannelKick` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:256:12
[INFO] [stdout]     |
[INFO] [stdout] 256 | pub struct ChoChannelKick {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoChannelAutoJoin` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:261:12
[INFO] [stdout]     |
[INFO] [stdout] 261 | pub struct ChoChannelAutoJoin {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoMonitor` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:289:12
[INFO] [stdout]     |
[INFO] [stdout] 289 | pub struct ChoMonitor {} // 80
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoMatchPlayerSkipped` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:291:12
[INFO] [stdout]     |
[INFO] [stdout] 291 | pub struct ChoMatchPlayerSkipped {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoRestart` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:308:12
[INFO] [stdout]     |
[INFO] [stdout] 308 | pub struct ChoRestart {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoMatchInvite` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:313:12
[INFO] [stdout]     |
[INFO] [stdout] 313 | pub struct ChoMatchInvite {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoMatchChangePassword` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:323:12
[INFO] [stdout]     |
[INFO] [stdout] 323 | pub struct ChoMatchChangePassword {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoUserSilenced` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:333:12
[INFO] [stdout]     |
[INFO] [stdout] 333 | pub struct ChoUserSilenced {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoUserPresenceSingle` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:338:12
[INFO] [stdout]     |
[INFO] [stdout] 338 | pub struct ChoUserPresenceSingle {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoUserPresenceBundle` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:343:12
[INFO] [stdout]     |
[INFO] [stdout] 343 | pub struct ChoUserPresenceBundle {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoUserDmBlocked` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:348:12
[INFO] [stdout]     |
[INFO] [stdout] 348 | pub struct ChoUserDmBlocked {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoTargetIsSilenced` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:356:12
[INFO] [stdout]     |
[INFO] [stdout] 356 | pub struct ChoTargetIsSilenced {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoVersionUpdateForced` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct ChoVersionUpdateForced {} //102
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoSwitchServer` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:366:12
[INFO] [stdout]     |
[INFO] [stdout] 366 | pub struct ChoSwitchServer {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoAccountRestricted` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:371:12
[INFO] [stdout]     |
[INFO] [stdout] 371 | pub struct ChoAccountRestricted {} // 104
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoRtx` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct ChoRtx {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoMatchAbort` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:378:12
[INFO] [stdout]     |
[INFO] [stdout] 378 | pub struct ChoMatchAbort {} // 106
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChoSwitchTournamentServer` is never constructed
[INFO] [stdout]    --> src/constants/packets.rs:380:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | pub struct ChoSwitchTournamentServer {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `write` is never used
[INFO] [stdout]    --> src/constants/packets.rs:481:18
[INFO] [stdout]     |
[INFO] [stdout] 480 | impl ChoPong {
[INFO] [stdout]     | ------------ associated function in this implementation
[INFO] [stdout] 481 |     pub async fn write() -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]    --> src/constants/packets.rs:489:18
[INFO] [stdout]     |
[INFO] [stdout] 488 | impl ChoHandleIrcChangeUsername {
[INFO] [stdout]     | ------------------------------- associated items in this implementation
[INFO] [stdout] 489 |     pub async fn new<T>(old: T, new: T) -> Self
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 499 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]    --> src/constants/packets.rs:586:18
[INFO] [stdout]     |
[INFO] [stdout] 585 | impl ChoUserLogout {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout] 586 |     pub async fn new<T>(user_id: T) -> Self
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 596 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]    --> src/constants/packets.rs:603:18
[INFO] [stdout]     |
[INFO] [stdout] 602 | impl ChoSpectatorJoined {
[INFO] [stdout]     | ----------------------- associated items in this implementation
[INFO] [stdout] 603 |     pub async fn new<T, U>(user_id: T) -> Self
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 612 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]    --> src/constants/packets.rs:619:18
[INFO] [stdout]     |
[INFO] [stdout] 618 | impl ChoSpectatorLeft {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout] 619 |     pub async fn new<T>(user_id: T) -> Self
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 628 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]    --> src/constants/packets.rs:635:18
[INFO] [stdout]     |
[INFO] [stdout] 634 | impl ChoSpectateFrames {
[INFO] [stdout]     | ---------------------- associated items in this implementation
[INFO] [stdout] 635 |     pub async fn new<T>(frames: T) -> Self
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 644 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `write` is never used
[INFO] [stdout]    --> src/constants/packets.rs:651:18
[INFO] [stdout]     |
[INFO] [stdout] 650 | impl ChoVersionUpdate {
[INFO] [stdout]     | --------------------- associated function in this implementation
[INFO] [stdout] 651 |     pub async fn write() -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]    --> src/constants/packets.rs:659:18
[INFO] [stdout]     |
[INFO] [stdout] 658 | impl ChoSpectatorCantSpectate {
[INFO] [stdout]     | ----------------------------- associated items in this implementation
[INFO] [stdout] 659 |     pub async fn new<T>(user_id: T) -> Self
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 668 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `write` is never used
[INFO] [stdout]    --> src/constants/packets.rs:678:18
[INFO] [stdout]     |
[INFO] [stdout] 677 | impl ChoGetAttention {
[INFO] [stdout]     | -------------------- associated function in this implementation
[INFO] [stdout] 678 |     pub async fn write() -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]    --> src/constants/packets.rs:699:18
[INFO] [stdout]     |
[INFO] [stdout] 698 | impl ChoDisposeMatch {
[INFO] [stdout]     | -------------------- associated items in this implementation
[INFO] [stdout] 699 |     pub async fn new<T>(match_id: T) -> Self
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 708 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `write` is never used
[INFO] [stdout]    --> src/constants/packets.rs:715:18
[INFO] [stdout]     |
[INFO] [stdout] 714 | impl ChoToggleBlockNonFriendDms {
[INFO] [stdout]     | ------------------------------- associated function in this implementation
[INFO] [stdout] 715 |     pub async fn write() -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `write` is never used
[INFO] [stdout]    --> src/constants/packets.rs:723:18
[INFO] [stdout]     |
[INFO] [stdout] 722 | impl ChoMatchJoinFail {
[INFO] [stdout]     | --------------------- associated function in this implementation
[INFO] [stdout] 723 |     pub async fn write() -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]    --> src/constants/packets.rs:731:18
[INFO] [stdout]     |
[INFO] [stdout] 730 | impl ChoFellowSpectatorJoined {
[INFO] [stdout]     | ----------------------------- associated items in this implementation
[INFO] [stdout] 731 |     pub async fn new<T>(user_id: T) -> Self
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 740 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]    --> src/constants/packets.rs:750:18
[INFO] [stdout]     |
[INFO] [stdout] 749 | impl ChoFellowSpectatorLeft {
[INFO] [stdout]     | --------------------------- associated items in this implementation
[INFO] [stdout] 750 |     pub async fn new<T>(user_id: T) -> Self
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 759 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `write` is never used
[INFO] [stdout]    --> src/constants/packets.rs:769:18
[INFO] [stdout]     |
[INFO] [stdout] 768 | impl ChoMatchAllPlayersLoaded {
[INFO] [stdout]     | ----------------------------- associated function in this implementation
[INFO] [stdout] 769 |     pub async fn write() -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]    --> src/constants/packets.rs:777:18
[INFO] [stdout]     |
[INFO] [stdout] 776 | impl ChoMatchPlayerFailed {
[INFO] [stdout]     | ------------------------- associated items in this implementation
[INFO] [stdout] 777 |     pub async fn new<T>(slot_id: T) -> Self
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 786 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `write` is never used
[INFO] [stdout]    --> src/constants/packets.rs:793:18
[INFO] [stdout]     |
[INFO] [stdout] 792 | impl ChoMatchComplete {
[INFO] [stdout]     | --------------------- associated function in this implementation
[INFO] [stdout] 793 |     pub async fn write() -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `write` is never used
[INFO] [stdout]    --> src/constants/packets.rs:801:18
[INFO] [stdout]     |
[INFO] [stdout] 800 | impl ChoMatchSkip {
[INFO] [stdout]     | ----------------- associated function in this implementation
[INFO] [stdout] 801 |     pub async fn write() -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]    --> src/constants/packets.rs:809:18
[INFO] [stdout]     |
[INFO] [stdout] 808 | impl ChoChannelJoinSuccess {
[INFO] [stdout]     | -------------------------- associated items in this implementation
[INFO] [stdout] 809 |     pub async fn new<T>(name: T) -> Self
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 816 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]    --> src/constants/packets.rs:847:18
[INFO] [stdout]     |
[INFO] [stdout] 846 | impl ChoChannelKick {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout] 847 |     pub async fn new<T>(name: T) -> Self
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 854 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]    --> src/constants/packets.rs:861:18
[INFO] [stdout]     |
[INFO] [stdout] 860 | impl ChoChannelAutoJoin {
[INFO] [stdout]     | ----------------------- associated items in this implementation
[INFO] [stdout] 861 |     pub async fn new<T, U>(name: T, topic: T, player_count: U) -> Self
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 873 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `write` is never used
[INFO] [stdout]    --> src/constants/packets.rs:956:18
[INFO] [stdout]     |
[INFO] [stdout] 955 | impl ChoMonitor {
[INFO] [stdout]     | --------------- associated function in this implementation
[INFO] [stdout] 956 |     pub async fn write() -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]    --> src/constants/packets.rs:964:18
[INFO] [stdout]     |
[INFO] [stdout] 963 | impl ChoMatchPlayerSkipped {
[INFO] [stdout]     | -------------------------- associated items in this implementation
[INFO] [stdout] 964 |     pub async fn new<T>(user_id: T) -> Self
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 973 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]     --> src/constants/packets.rs:1025:18
[INFO] [stdout]      |
[INFO] [stdout] 1024 | impl ChoRestart {
[INFO] [stdout]      | --------------- associated items in this implementation
[INFO] [stdout] 1025 |     pub async fn new<T>(ms_delay: T) -> Self
[INFO] [stdout]      |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 1034 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]     --> src/constants/packets.rs:1041:18
[INFO] [stdout]      |
[INFO] [stdout] 1040 | impl ChoMatchInvite {
[INFO] [stdout]      | ------------------- associated items in this implementation
[INFO] [stdout] 1041 |     pub async fn new<T, U>(player_name: T, msg: T, recipient: T, sender_id: U) -> Self
[INFO] [stdout]      |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 1054 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]     --> src/constants/packets.rs:1075:18
[INFO] [stdout]      |
[INFO] [stdout] 1074 | impl ChoMatchChangePassword {
[INFO] [stdout]      | --------------------------- associated items in this implementation
[INFO] [stdout] 1075 |     pub async fn new<T>(new_password: T) -> Self
[INFO] [stdout]      |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 1084 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]     --> src/constants/packets.rs:1110:18
[INFO] [stdout]      |
[INFO] [stdout] 1109 | impl ChoUserSilenced {
[INFO] [stdout]      | -------------------- associated items in this implementation
[INFO] [stdout] 1110 |     pub async fn new<T>(user_id: T, silence_end: T) -> Self
[INFO] [stdout]      |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 1119 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]     --> src/constants/packets.rs:1126:18
[INFO] [stdout]      |
[INFO] [stdout] 1125 | impl ChoUserPresenceSingle {
[INFO] [stdout]      | -------------------------- associated items in this implementation
[INFO] [stdout] 1126 |     pub async fn new<T>(user_id: T) -> Self
[INFO] [stdout]      |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 1135 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]     --> src/constants/packets.rs:1141:18
[INFO] [stdout]      |
[INFO] [stdout] 1140 | impl ChoUserPresenceBundle {
[INFO] [stdout]      | -------------------------- associated items in this implementation
[INFO] [stdout] 1141 |     pub async fn new<T>(user_ids: T) -> Self
[INFO] [stdout]      |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 1150 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]     --> src/constants/packets.rs:1156:18
[INFO] [stdout]      |
[INFO] [stdout] 1155 | impl ChoUserDmBlocked {
[INFO] [stdout]      | --------------------- associated items in this implementation
[INFO] [stdout] 1156 |     pub async fn new<T, U>(player_name: T, msg: T, recipient: T, sender_id: U) -> Self
[INFO] [stdout]      |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 1169 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]     --> src/constants/packets.rs:1181:18
[INFO] [stdout]      |
[INFO] [stdout] 1180 | impl ChoTargetIsSilenced {
[INFO] [stdout]      | ------------------------ associated items in this implementation
[INFO] [stdout] 1181 |     pub async fn new<T, U>(player_name: T, msg: T, recipient: T, sender_id: U) -> Self
[INFO] [stdout]      |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 1194 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `write` is never used
[INFO] [stdout]     --> src/constants/packets.rs:1206:18
[INFO] [stdout]      |
[INFO] [stdout] 1205 | impl ChoVersionUpdateForced {
[INFO] [stdout]      | --------------------------- associated function in this implementation
[INFO] [stdout] 1206 |     pub async fn write() -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]     --> src/constants/packets.rs:1213:18
[INFO] [stdout]      |
[INFO] [stdout] 1212 | impl ChoSwitchServer {
[INFO] [stdout]      | -------------------- associated function in this implementation
[INFO] [stdout] 1213 |     pub async fn new<T>(t: T) -> Self
[INFO] [stdout]      |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `write` is never used
[INFO] [stdout]     --> src/constants/packets.rs:1222:18
[INFO] [stdout]      |
[INFO] [stdout] 1221 | impl ChoAccountRestricted {
[INFO] [stdout]      | ------------------------- associated function in this implementation
[INFO] [stdout] 1222 |     pub async fn write() -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]     --> src/constants/packets.rs:1229:18
[INFO] [stdout]      |
[INFO] [stdout] 1228 | impl ChoRtx {
[INFO] [stdout]      | ----------- associated items in this implementation
[INFO] [stdout] 1229 |     pub async fn new<T>(msg: T) -> Self
[INFO] [stdout]      |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 1236 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `write` is never used
[INFO] [stdout]     --> src/constants/packets.rs:1242:18
[INFO] [stdout]      |
[INFO] [stdout] 1241 | impl ChoMatchAbort {
[INFO] [stdout]      | ------------------ associated function in this implementation
[INFO] [stdout] 1242 |     pub async fn write() -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `write` are never used
[INFO] [stdout]     --> src/constants/packets.rs:1249:18
[INFO] [stdout]      |
[INFO] [stdout] 1248 | impl ChoSwitchTournamentServer {
[INFO] [stdout]      | ------------------------------ associated items in this implementation
[INFO] [stdout] 1249 |     pub async fn new<T>(ip: T) -> Self
[INFO] [stdout]      |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 1256 |     pub async fn write(&self) -> Result<Vec<u8>, Box<dyn Error>> {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Achievement` is never constructed
[INFO] [stdout]  --> src/structs/achievement.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Achievement {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/structs/achievement.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout]  9 | impl Achievement {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] 10 |     pub fn new(id: i32, file: String, name: String, desc: String, cond: fn(i32) -> bool) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BEATMAPS_PATH` is never used
[INFO] [stdout]  --> src/structs/beatmap.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub const BEATMAPS_PATH: &str = "./data/osu";
[INFO] [stdout]   |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DEFAULT_LAST_UPDATE` is never used
[INFO] [stdout]  --> src/structs/beatmap.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub const DEFAULT_LAST_UPDATE: &str = "1970-01-01";
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `IGNORED_BEATMAP_CHARS` is never used
[INFO] [stdout]  --> src/structs/beatmap.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub const IGNORED_BEATMAP_CHARS: [&str; 8] = ["\"", "/", "*", "<", ">", "?", "\"", "|"];
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `osu_api`, `from_osuapi`, `from_osudirect`, and `from_str` are never used
[INFO] [stdout]    --> src/structs/beatmap.rs:61:12
[INFO] [stdout]     |
[INFO] [stdout]  46 | impl RankedStatus {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  61 |     pub fn osu_api(&self) -> i32 {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  86 |     pub fn from_osuapi(osuapi_status: i32) -> RankedStatus {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |     pub fn from_osudirect(osudirect_status: i32) -> RankedStatus {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 142 |     async fn from_str(status_str: &str) -> RankedStatus {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BeatmapSet` is never constructed
[INFO] [stdout]    --> src/structs/beatmap.rs:161:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | pub struct BeatmapSet {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Beatmap` is never constructed
[INFO] [stdout]    --> src/structs/beatmap.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 193 | pub struct Beatmap {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/structs/beatmap.rs:256:12
[INFO] [stdout]     |
[INFO] [stdout] 255 | impl Beatmap {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 256 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 315 |     pub fn full_name(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 326 |     pub fn url(&self) -> String {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 339 |     pub fn embed(&self) -> String {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 350 |     pub fn has_leaderboard(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 363 |     pub fn awards_ranked_pp(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 401 |     pub fn to_map(&self) -> HashMap<&str, String> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Menu` is never constructed
[INFO] [stdout]   --> src/structs/menu.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | struct Menu {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MenuFunction` is never constructed
[INFO] [stdout]   --> src/structs/menu.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct MenuFunction {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `menu_keygen` is never used
[INFO] [stdout]   --> src/structs/menu.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn menu_keygen() -> u32 {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OsuBeatmapRequestForm` is never constructed
[INFO] [stdout]  --> src/structs/models.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct OsuBeatmapRequestForm {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ModeData` is never constructed
[INFO] [stdout]    --> src/structs/player.rs:115:12
[INFO] [stdout]     |
[INFO] [stdout] 115 | pub struct ModeData {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Status` is never constructed
[INFO] [stdout]    --> src/structs/player.rs:128:12
[INFO] [stdout]     |
[INFO] [stdout] 128 | pub struct Status {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/structs/player.rs:138:12
[INFO] [stdout]     |
[INFO] [stdout] 137 | impl Status {
[INFO] [stdout]     | ----------- associated function in this implementation
[INFO] [stdout] 138 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LastNp` is never constructed
[INFO] [stdout]    --> src/structs/player.rs:150:12
[INFO] [stdout]     |
[INFO] [stdout] 150 | pub struct LastNp {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OsuVersion` is never constructed
[INFO] [stdout]    --> src/structs/player.rs:156:12
[INFO] [stdout]     |
[INFO] [stdout] 156 | pub struct OsuVersion {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ClientDetails` is never constructed
[INFO] [stdout]    --> src/structs/player.rs:162:12
[INFO] [stdout]     |
[INFO] [stdout] 162 | pub struct ClientDetails {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `client_hash` is never used
[INFO] [stdout]    --> src/structs/player.rs:173:12
[INFO] [stdout]     |
[INFO] [stdout] 172 | impl ClientDetails {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] 173 |     pub fn client_hash(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PlayerClan` is never constructed
[INFO] [stdout]    --> src/structs/player.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct PlayerClan {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BEATMAPS_PATH` is never used
[INFO] [stdout]   --> src/structs/score.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const BEATMAPS_PATH: &str = ".data/osu";
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_str` is never used
[INFO] [stdout]   --> src/structs/score.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | impl Grade {
[INFO] [stdout]    | ---------- associated function in this implementation
[INFO] [stdout] 31 |     pub fn from_str(s: &str) -> Grade {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Score` is never constructed
[INFO] [stdout]    --> src/structs/score.rs:175:12
[INFO] [stdout]     |
[INFO] [stdout] 175 | pub struct Score {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `mouse` should have an upper case name
[INFO] [stdout]    --> src/structs/player.rs:377:15
[INFO] [stdout]     |
[INFO] [stdout] 377 |         const mouse = 1;
[INFO] [stdout]     |               ^^^^^ help: convert the identifier to upper case: `MOUSE`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `tablet` should have an upper case name
[INFO] [stdout]    --> src/structs/player.rs:378:15
[INFO] [stdout]     |
[INFO] [stdout] 378 |         const tablet = 2;
[INFO] [stdout]     |               ^^^^^^ help: convert the identifier to upper case: `TABLET`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `keyboard` should have an upper case name
[INFO] [stdout]    --> src/structs/player.rs:379:15
[INFO] [stdout]     |
[INFO] [stdout] 379 |         const keyboard = 2;
[INFO] [stdout]     |               ^^^^^^^^ help: convert the identifier to upper case: `KEYBOARD`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `touch` should have an upper case name
[INFO] [stdout]    --> src/structs/player.rs:380:15
[INFO] [stdout]     |
[INFO] [stdout] 380 |         const touch = 4;
[INFO] [stdout]     |               ^^^^^ help: convert the identifier to upper case: `TOUCH`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `touch_touch` should have an upper case name
[INFO] [stdout]    --> src/structs/player.rs:381:15
[INFO] [stdout]     |
[INFO] [stdout] 381 |         const touch_touch = 8;
[INFO] [stdout]     |               ^^^^^^^^^^^ help: convert the identifier to upper case: `TOUCH_TOUCH`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 30s
[INFO] running `Command { std: "docker" "inspect" "025a27545ac6952ad11b7309c5c920acef1aba46b043e2cd2d69d5cef19779ab", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "025a27545ac6952ad11b7309c5c920acef1aba46b043e2cd2d69d5cef19779ab", kill_on_drop: false }`
[INFO] [stdout] 025a27545ac6952ad11b7309c5c920acef1aba46b043e2cd2d69d5cef19779ab
