[INFO] cloning repository https://github.com/Skryptonyte/RSCube
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Skryptonyte/RSCube" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSkryptonyte%2FRSCube", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSkryptonyte%2FRSCube'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 15bdb6becc3a668ada3b4f07b54761dd6fbfb158
[INFO] checking Skryptonyte/RSCube against master#4b9792692fbb675174d4d2082e7c37b2bc930e71 for pr-153692-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSkryptonyte%2FRSCube" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Skryptonyte/RSCube
[INFO] finished tweaking git repo https://github.com/Skryptonyte/RSCube
[INFO] tweaked toml for git repo https://github.com/Skryptonyte/RSCube written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Skryptonyte/RSCube on toolchain 4b9792692fbb675174d4d2082e7c37b2bc930e71
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4b9792692fbb675174d4d2082e7c37b2bc930e71" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Skryptonyte/RSCube 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" "+4b9792692fbb675174d4d2082e7c37b2bc930e71" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded miniz_oxide v0.5.3
[INFO] [stderr]   Downloaded flate2 v1.0.24
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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" "+4b9792692fbb675174d4d2082e7c37b2bc930e71" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d6be71e2b1939825707a47c678ca1e0d41200423a49f59038bf974c6399cc92d
[INFO] running `Command { std: "docker" "start" "-a" "d6be71e2b1939825707a47c678ca1e0d41200423a49f59038bf974c6399cc92d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d6be71e2b1939825707a47c678ca1e0d41200423a49f59038bf974c6399cc92d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d6be71e2b1939825707a47c678ca1e0d41200423a49f59038bf974c6399cc92d", kill_on_drop: false }`
[INFO] [stdout] d6be71e2b1939825707a47c678ca1e0d41200423a49f59038bf974c6399cc92d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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" "+4b9792692fbb675174d4d2082e7c37b2bc930e71" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2ffc2ef1d08f5ef40dcb0189afd8130e5bbfd9964e6ae34711da06f860330572
[INFO] running `Command { std: "docker" "start" "-a" "2ffc2ef1d08f5ef40dcb0189afd8130e5bbfd9964e6ae34711da06f860330572", kill_on_drop: false }`
[INFO] [stderr]    Compiling crc32fast v1.3.2
[INFO] [stderr]     Checking adler v1.0.2
[INFO] [stderr]     Checking miniz_oxide v0.5.3
[INFO] [stderr]     Checking flate2 v1.0.24
[INFO] [stderr]     Checking RSCube v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::io::BufReader`
[INFO] [stdout]  --> main.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::io::BufReader;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp`
[INFO] [stdout]  --> main.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::cmp;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]   --> main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::io::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::read::GzDecoder`
[INFO] [stdout]   --> main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use flate2::read::GzDecoder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::write::GzEncoder`
[INFO] [stdout]   --> main.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use flate2::write::GzEncoder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::Compression`
[INFO] [stdout]   --> main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use flate2::Compression;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BigEndian`, `LittleEndian`, `ReadBytesExt`, and `WriteBytesExt`
[INFO] [stdout]   --> main.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 | use byteorder::{BigEndian, LittleEndian, ReadBytesExt, WriteBytesExt};
[INFO] [stdout]    |                 ^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]   --> main.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::fs::File;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RwLock`
[INFO] [stdout]   --> main.rs:18:29
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::sync::{Mutex, Arc, RwLock};
[INFO] [stdout]    |                             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::TcpListener`
[INFO] [stdout]  --> protocol/client_packets.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::net::TcpListener;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::TcpStream`
[INFO] [stdout]  --> protocol/client_packets.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::net::TcpStream;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]  --> protocol/client_packets.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::thread;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp`
[INFO] [stdout]  --> protocol/client_packets.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::cmp;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]  --> protocol/client_packets.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::io::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LittleEndian` and `WriteBytesExt`
[INFO] [stdout]  --> protocol/client_packets.rs:8:28
[INFO] [stdout]   |
[INFO] [stdout] 8 | use byteorder::{BigEndian, LittleEndian, ReadBytesExt, WriteBytesExt};
[INFO] [stdout]   |                            ^^^^^^^^^^^^                ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]   --> protocol/client_packets.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::fs::File;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::client::Client`
[INFO] [stdout]   --> protocol/client_packets.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::client::Client;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Mutex`
[INFO] [stdout]   --> protocol/client_packets.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::sync::Mutex;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> protocol/client_packets.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> protocol/client_packets.rs:46:12
[INFO] [stdout]    |
[INFO] [stdout] 46 |         if (*player_id != client_id)
[INFO] [stdout]    |            ^                       ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 46 -         if (*player_id != client_id)
[INFO] [stdout] 46 +         if *player_id != client_id 
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> protocol/client_packets.rs:80:8
[INFO] [stdout]    |
[INFO] [stdout] 80 |     if (unused == 0x42)
[INFO] [stdout]    |        ^              ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 80 -     if (unused == 0x42)
[INFO] [stdout] 80 +     if unused == 0x42 
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> protocol/client_packets.rs:132:8
[INFO] [stdout]     |
[INFO] [stdout] 132 |     if (mode == 1)
[INFO] [stdout]     |        ^         ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 132 -     if (mode == 1)
[INFO] [stdout] 132 +     if mode == 1 
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> protocol/client_packets.rs:195:8
[INFO] [stdout]     |
[INFO] [stdout] 195 |     if (chat_message.starts_with("/"))
[INFO] [stdout]     |        ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 195 -     if (chat_message.starts_with("/"))
[INFO] [stdout] 195 +     if chat_message.starts_with("/") 
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression
[INFO] [stdout]    --> protocol/client_packets.rs:198:15
[INFO] [stdout]     |
[INFO] [stdout] 198 |         match (parse_command(server, client_id, command))
[INFO] [stdout]     |               ^                                         ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 198 -         match (parse_command(server, client_id, command))
[INFO] [stdout] 198 +         match parse_command(server, client_id, command) 
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::TcpListener`
[INFO] [stdout]  --> protocol/server_packets.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::net::TcpListener;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::TcpStream`
[INFO] [stdout]  --> protocol/server_packets.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::net::TcpStream;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]  --> protocol/server_packets.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::thread;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]  --> protocol/server_packets.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::io::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::read::GzDecoder`
[INFO] [stdout]  --> protocol/server_packets.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use flate2::read::GzDecoder;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Cursor`
[INFO] [stdout]   --> protocol/server_packets.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::io::Cursor;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LittleEndian` and `ReadBytesExt`
[INFO] [stdout]   --> protocol/server_packets.rs:13:28
[INFO] [stdout]    |
[INFO] [stdout] 13 | use byteorder::{BigEndian, LittleEndian, ReadBytesExt, WriteBytesExt};
[INFO] [stdout]    |                            ^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]   --> protocol/server_packets.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::fs::File;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::BufReader`
[INFO] [stdout]   --> protocol/server_packets.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::io::BufReader;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::BufWriter`
[INFO] [stdout]   --> protocol/server_packets.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use std::io::BufWriter;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> protocol/server_packets.rs:54:8
[INFO] [stdout]    |
[INFO] [stdout] 54 |     if (use_fastmap)
[INFO] [stdout]    |        ^           ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 54 -     if (use_fastmap)
[INFO] [stdout] 54 +     if use_fastmap
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> protocol/server_packets.rs:87:8
[INFO] [stdout]    |
[INFO] [stdout] 87 |     if (!use_fastmap)
[INFO] [stdout]    |        ^            ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 87 -     if (!use_fastmap)
[INFO] [stdout] 87 +     if !use_fastmap
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `while` condition
[INFO] [stdout]    --> protocol/server_packets.rs:216:11
[INFO] [stdout]     |
[INFO] [stdout] 216 |     while (i < message.len())
[INFO] [stdout]     |           ^                 ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 216 -     while (i < message.len())
[INFO] [stdout] 216 +     while i < message.len()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `while` condition
[INFO] [stdout]    --> protocol/server_packets.rs:247:11
[INFO] [stdout]     |
[INFO] [stdout] 247 |     while (i < message.len())
[INFO] [stdout]     |           ^                 ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 247 -     while (i < message.len())
[INFO] [stdout] 247 +     while i < message.len()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> protocol/server_packets.rs:325:12
[INFO] [stdout]     |
[INFO] [stdout] 325 |         if (client.customblocksupportlevel >= 1)
[INFO] [stdout]     |            ^                                   ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 325 -         if (client.customblocksupportlevel >= 1)
[INFO] [stdout] 325 +         if client.customblocksupportlevel >= 1
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> protocol/server_packets.rs:382:12
[INFO] [stdout]     |
[INFO] [stdout] 382 |         if (*player_id != calling_player_id)
[INFO] [stdout]     |            ^                               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 382 -         if (*player_id != calling_player_id)
[INFO] [stdout] 382 +         if *player_id != calling_player_id
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::TcpListener`
[INFO] [stdout]  --> protocol/server_cpe_packets.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::net::TcpListener;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::TcpStream`
[INFO] [stdout]  --> protocol/server_cpe_packets.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::net::TcpStream;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]  --> protocol/server_cpe_packets.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::thread;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]  --> protocol/server_cpe_packets.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::io::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::read::GzDecoder`
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use flate2::read::GzDecoder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::write::GzEncoder`
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use flate2::write::GzEncoder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::Compression`
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use flate2::Compression;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Cursor`
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::io::Cursor;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LittleEndian` and `ReadBytesExt`
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:14:28
[INFO] [stdout]    |
[INFO] [stdout] 14 | use byteorder::{BigEndian, LittleEndian, ReadBytesExt, WriteBytesExt};
[INFO] [stdout]    |                            ^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use std::fs::File;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::client::Client`
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use crate::client::Client;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::BufReader`
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use std::io::BufReader;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::BufWriter`
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use std::io::BufWriter;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::TcpListener`
[INFO] [stdout]  --> protocol/client_cpe_packets.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::net::TcpListener;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::TcpStream`
[INFO] [stdout]  --> protocol/client_cpe_packets.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::net::TcpStream;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]  --> protocol/client_cpe_packets.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::thread;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp`
[INFO] [stdout]  --> protocol/client_cpe_packets.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::cmp;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]  --> protocol/client_cpe_packets.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::io::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::read::GzDecoder`
[INFO] [stdout]  --> protocol/client_cpe_packets.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use flate2::read::GzDecoder;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::write::GzEncoder`
[INFO] [stdout]   --> protocol/client_cpe_packets.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use flate2::write::GzEncoder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::Compression`
[INFO] [stdout]   --> protocol/client_cpe_packets.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use flate2::Compression;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LittleEndian` and `WriteBytesExt`
[INFO] [stdout]   --> protocol/client_cpe_packets.rs:13:28
[INFO] [stdout]    |
[INFO] [stdout] 13 | use byteorder::{BigEndian, LittleEndian, ReadBytesExt, WriteBytesExt};
[INFO] [stdout]    |                            ^^^^^^^^^^^^                ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]   --> protocol/client_cpe_packets.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::fs::File;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::client::Client`
[INFO] [stdout]   --> protocol/client_cpe_packets.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::client::Client;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::BufReader`
[INFO] [stdout]   --> protocol/client_cpe_packets.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::io::BufReader;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::BufWriter`
[INFO] [stdout]   --> protocol/client_cpe_packets.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use std::io::BufWriter;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> protocol/client_cpe_packets.rs:105:8
[INFO] [stdout]     |
[INFO] [stdout] 105 |     if (direction == 0)
[INFO] [stdout]     |        ^              ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 105 -     if (direction == 0)
[INFO] [stdout] 105 +     if direction == 0
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BigEndian`
[INFO] [stdout]  --> server.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | use byteorder::{BigEndian, LittleEndian, ReadBytesExt, WriteBytesExt};
[INFO] [stdout]   |                 ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SeekFrom` and `Seek`
[INFO] [stdout]  --> server.rs:9:28
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::io::{Read, Write, Seek, SeekFrom};
[INFO] [stdout]   |                            ^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> server.rs:51:12
[INFO] [stdout]    |
[INFO] [stdout] 51 |         if (key < 0)
[INFO] [stdout]    |            ^       ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 51 -         if (key < 0)
[INFO] [stdout] 51 +         if key < 0 
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::client::Client`
[INFO] [stdout]   --> main.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | use crate::client::Client;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> main.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 31 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::BufReader`
[INFO] [stdout]  --> main.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::io::BufReader;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp`
[INFO] [stdout]  --> main.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::cmp;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]   --> main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::io::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::read::GzDecoder`
[INFO] [stdout]   --> main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use flate2::read::GzDecoder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::write::GzEncoder`
[INFO] [stdout]   --> main.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use flate2::write::GzEncoder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::Compression`
[INFO] [stdout]   --> main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use flate2::Compression;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BigEndian`, `LittleEndian`, `ReadBytesExt`, and `WriteBytesExt`
[INFO] [stdout]   --> main.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 | use byteorder::{BigEndian, LittleEndian, ReadBytesExt, WriteBytesExt};
[INFO] [stdout]    |                 ^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]   --> main.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::fs::File;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RwLock`
[INFO] [stdout]   --> main.rs:18:29
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::sync::{Mutex, Arc, RwLock};
[INFO] [stdout]    |                             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::TcpListener`
[INFO] [stdout]  --> protocol/client_packets.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::net::TcpListener;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::TcpStream`
[INFO] [stdout]  --> protocol/client_packets.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::net::TcpStream;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]  --> protocol/client_packets.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::thread;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp`
[INFO] [stdout]  --> protocol/client_packets.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::cmp;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]  --> protocol/client_packets.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::io::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LittleEndian` and `WriteBytesExt`
[INFO] [stdout]  --> protocol/client_packets.rs:8:28
[INFO] [stdout]   |
[INFO] [stdout] 8 | use byteorder::{BigEndian, LittleEndian, ReadBytesExt, WriteBytesExt};
[INFO] [stdout]   |                            ^^^^^^^^^^^^                ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]   --> protocol/client_packets.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::fs::File;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::client::Client`
[INFO] [stdout]   --> protocol/client_packets.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::client::Client;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Mutex`
[INFO] [stdout]   --> protocol/client_packets.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::sync::Mutex;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> protocol/client_packets.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> protocol/client_packets.rs:46:12
[INFO] [stdout]    |
[INFO] [stdout] 46 |         if (*player_id != client_id)
[INFO] [stdout]    |            ^                       ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 46 -         if (*player_id != client_id)
[INFO] [stdout] 46 +         if *player_id != client_id 
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> protocol/client_packets.rs:80:8
[INFO] [stdout]    |
[INFO] [stdout] 80 |     if (unused == 0x42)
[INFO] [stdout]    |        ^              ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 80 -     if (unused == 0x42)
[INFO] [stdout] 80 +     if unused == 0x42 
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cur`
[INFO] [stdout]   --> protocol/client_packets.rs:22:45
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn login_procedure(server: &mut Server, cur: &mut Cursor<&Vec<u8>>, client_id: i8)
[INFO] [stdout]    |                                             ^^^ help: if this is intentional, prefix it with an underscore: `_cur`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> protocol/client_packets.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |     let mut player_name: [u8; 64] = [0x0; 64];
[INFO] [stdout]    |         ----^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> protocol/client_packets.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |     let mut verification_key: [u8; 64] = [0x0; 64];
[INFO] [stdout]    |         ----^^^^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `player_name`
[INFO] [stdout]   --> protocol/client_packets.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |     let mut player_name: [u8; 64] = [0x0; 64];
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_player_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `verification_key`
[INFO] [stdout]   --> protocol/client_packets.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |     let mut verification_key: [u8; 64] = [0x0; 64];
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_verification_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `protocol`
[INFO] [stdout]   --> protocol/client_packets.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 62 |     let protocol: u8 = cur.read_u8().unwrap();
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_protocol`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `player_id` is assigned to, but never used
[INFO] [stdout]   --> protocol/client_packets.rs:96:9
[INFO] [stdout]    |
[INFO] [stdout] 96 |     let player_id: i8;
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_player_id` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `client`
[INFO] [stdout]    --> protocol/client_packets.rs:104:9
[INFO] [stdout]     |
[INFO] [stdout] 104 |     let client = &mut server.clients.get_mut(&client_id).unwrap();
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_client`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `player_id` is never read
[INFO] [stdout]    --> protocol/client_packets.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 107 |     player_id = cur.read_i8().unwrap();
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `client`
[INFO] [stdout]    --> protocol/client_packets.rs:122:9
[INFO] [stdout]     |
[INFO] [stdout] 122 |     let client = &mut server.clients.get_mut(&client_id).unwrap();
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_client`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> protocol/client_packets.rs:132:8
[INFO] [stdout]     |
[INFO] [stdout] 132 |     if (mode == 1)
[INFO] [stdout]     |        ^         ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 132 -     if (mode == 1)
[INFO] [stdout] 132 +     if mode == 1 
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> protocol/client_packets.rs:195:8
[INFO] [stdout]     |
[INFO] [stdout] 195 |     if (chat_message.starts_with("/"))
[INFO] [stdout]     |        ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 195 -     if (chat_message.starts_with("/"))
[INFO] [stdout] 195 +     if chat_message.starts_with("/") 
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression
[INFO] [stdout]    --> protocol/client_packets.rs:198:15
[INFO] [stdout]     |
[INFO] [stdout] 198 |         match (parse_command(server, client_id, command))
[INFO] [stdout]     |               ^                                         ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 198 -         match (parse_command(server, client_id, command))
[INFO] [stdout] 198 +         match parse_command(server, client_id, command) 
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::TcpListener`
[INFO] [stdout]  --> protocol/server_packets.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::net::TcpListener;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::TcpStream`
[INFO] [stdout]  --> protocol/server_packets.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::net::TcpStream;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]  --> protocol/server_packets.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::thread;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]  --> protocol/server_packets.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::io::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::read::GzDecoder`
[INFO] [stdout]  --> protocol/server_packets.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use flate2::read::GzDecoder;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Cursor`
[INFO] [stdout]   --> protocol/server_packets.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::io::Cursor;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LittleEndian` and `ReadBytesExt`
[INFO] [stdout]   --> protocol/server_packets.rs:13:28
[INFO] [stdout]    |
[INFO] [stdout] 13 | use byteorder::{BigEndian, LittleEndian, ReadBytesExt, WriteBytesExt};
[INFO] [stdout]    |                            ^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]   --> protocol/server_packets.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::fs::File;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::BufReader`
[INFO] [stdout]   --> protocol/server_packets.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::io::BufReader;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::BufWriter`
[INFO] [stdout]   --> protocol/server_packets.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use std::io::BufWriter;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> protocol/server_packets.rs:54:8
[INFO] [stdout]    |
[INFO] [stdout] 54 |     if (use_fastmap)
[INFO] [stdout]    |        ^           ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 54 -     if (use_fastmap)
[INFO] [stdout] 54 +     if use_fastmap
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> protocol/server_packets.rs:87:8
[INFO] [stdout]    |
[INFO] [stdout] 87 |     if (!use_fastmap)
[INFO] [stdout]    |        ^            ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 87 -     if (!use_fastmap)
[INFO] [stdout] 87 +     if !use_fastmap
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `while` condition
[INFO] [stdout]    --> protocol/server_packets.rs:216:11
[INFO] [stdout]     |
[INFO] [stdout] 216 |     while (i < message.len())
[INFO] [stdout]     |           ^                 ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 216 -     while (i < message.len())
[INFO] [stdout] 216 +     while i < message.len()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `while` condition
[INFO] [stdout]    --> protocol/server_packets.rs:247:11
[INFO] [stdout]     |
[INFO] [stdout] 247 |     while (i < message.len())
[INFO] [stdout]     |           ^                 ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 247 -     while (i < message.len())
[INFO] [stdout] 247 +     while i < message.len()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> protocol/server_packets.rs:325:12
[INFO] [stdout]     |
[INFO] [stdout] 325 |         if (client.customblocksupportlevel >= 1)
[INFO] [stdout]     |            ^                                   ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 325 -         if (client.customblocksupportlevel >= 1)
[INFO] [stdout] 325 +         if client.customblocksupportlevel >= 1
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> protocol/server_packets.rs:382:12
[INFO] [stdout]     |
[INFO] [stdout] 382 |         if (*player_id != calling_player_id)
[INFO] [stdout]     |            ^                               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 382 -         if (*player_id != calling_player_id)
[INFO] [stdout] 382 +         if *player_id != calling_player_id
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::TcpListener`
[INFO] [stdout]  --> protocol/server_cpe_packets.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::net::TcpListener;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::TcpStream`
[INFO] [stdout]  --> protocol/server_cpe_packets.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::net::TcpStream;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]  --> protocol/server_cpe_packets.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::thread;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unused`
[INFO] [stdout]    --> protocol/client_packets.rs:186:9
[INFO] [stdout]     |
[INFO] [stdout] 186 |     let unused: u8 = cur.read_u8().unwrap();
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_unused`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> protocol/client_packets.rs:203:17
[INFO] [stdout]     |
[INFO] [stdout] 203 |             Err(e) =>
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]  --> protocol/server_cpe_packets.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::io::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::read::GzDecoder`
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use flate2::read::GzDecoder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::write::GzEncoder`
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use flate2::write::GzEncoder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::Compression`
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use flate2::Compression;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Cursor`
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::io::Cursor;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LittleEndian` and `ReadBytesExt`
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:14:28
[INFO] [stdout]    |
[INFO] [stdout] 14 | use byteorder::{BigEndian, LittleEndian, ReadBytesExt, WriteBytesExt};
[INFO] [stdout]    |                            ^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use std::fs::File;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::client::Client`
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use crate::client::Client;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::BufReader`
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use std::io::BufReader;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::BufWriter`
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use std::io::BufWriter;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::TcpListener`
[INFO] [stdout]  --> protocol/client_cpe_packets.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::net::TcpListener;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::TcpStream`
[INFO] [stdout]  --> protocol/client_cpe_packets.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::net::TcpStream;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]  --> protocol/client_cpe_packets.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::thread;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp`
[INFO] [stdout]  --> protocol/client_cpe_packets.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::cmp;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> protocol/server_packets.rs:44:13
[INFO] [stdout]    |
[INFO] [stdout] 44 |         Err(e) => {}
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::prelude::*`
[INFO] [stdout]  --> protocol/client_cpe_packets.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::io::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> protocol/server_packets.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |         let mut packet: [u8; 1] = [2];
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::read::GzDecoder`
[INFO] [stdout]  --> protocol/client_cpe_packets.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use flate2::read::GzDecoder;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> protocol/server_packets.rs:68:17
[INFO] [stdout]    |
[INFO] [stdout] 68 |             Err(e) => {}
[INFO] [stdout]    |                 ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::write::GzEncoder`
[INFO] [stdout]   --> protocol/client_cpe_packets.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use flate2::write::GzEncoder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flate2::Compression`
[INFO] [stdout]   --> protocol/client_cpe_packets.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use flate2::Compression;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LittleEndian` and `WriteBytesExt`
[INFO] [stdout]   --> protocol/client_cpe_packets.rs:13:28
[INFO] [stdout]    |
[INFO] [stdout] 13 | use byteorder::{BigEndian, LittleEndian, ReadBytesExt, WriteBytesExt};
[INFO] [stdout]    |                            ^^^^^^^^^^^^                ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]   --> protocol/client_cpe_packets.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::fs::File;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::client::Client`
[INFO] [stdout]   --> protocol/client_cpe_packets.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::client::Client;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::BufReader`
[INFO] [stdout]   --> protocol/client_cpe_packets.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::io::BufReader;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::BufWriter`
[INFO] [stdout]   --> protocol/client_cpe_packets.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use std::io::BufWriter;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> protocol/client_cpe_packets.rs:105:8
[INFO] [stdout]     |
[INFO] [stdout] 105 |     if (direction == 0)
[INFO] [stdout]     |        ^              ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 105 -     if (direction == 0)
[INFO] [stdout] 105 +     if direction == 0
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BigEndian`
[INFO] [stdout]  --> server.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | use byteorder::{BigEndian, LittleEndian, ReadBytesExt, WriteBytesExt};
[INFO] [stdout]   |                 ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SeekFrom` and `Seek`
[INFO] [stdout]  --> server.rs:9:28
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::io::{Read, Write, Seek, SeekFrom};
[INFO] [stdout]   |                            ^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> server.rs:51:12
[INFO] [stdout]    |
[INFO] [stdout] 51 |         if (key < 0)
[INFO] [stdout]    |            ^       ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 51 -         if (key < 0)
[INFO] [stdout] 51 +         if key < 0 
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::client::Client`
[INFO] [stdout]   --> main.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | use crate::client::Client;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> main.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 31 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> protocol/server_packets.rs:80:9
[INFO] [stdout]    |
[INFO] [stdout] 80 |     let mut data: Vec<u8> = Vec::new();
[INFO] [stdout]    |         ----^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tuple`
[INFO] [stdout]   --> protocol/server_packets.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 75 |     let tuple: (u16, u16, u16, u16, u16, u16);
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_tuple`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `j`
[INFO] [stdout]    --> protocol/server_packets.rs:120:13
[INFO] [stdout]     |
[INFO] [stdout] 120 |         for j in chunk_length..1024
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_j`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> protocol/server_packets.rs:131:17
[INFO] [stdout]     |
[INFO] [stdout] 131 |             Err(e) => {}
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> protocol/server_packets.rs:151:13
[INFO] [stdout]     |
[INFO] [stdout] 151 |         Err(e) => {}
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> protocol/server_packets.rs:184:13
[INFO] [stdout]     |
[INFO] [stdout] 184 |         Err(e) => {}
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_id`
[INFO] [stdout]    --> protocol/server_packets.rs:197:10
[INFO] [stdout]     |
[INFO] [stdout] 197 |     for (c_id, client) in & server.clients
[INFO] [stdout]     |          ^^^^ help: if this is intentional, prefix it with an underscore: `_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> protocol/server_packets.rs:203:17
[INFO] [stdout]     |
[INFO] [stdout] 203 |             Err(e) => {}
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `j`
[INFO] [stdout]    --> protocol/server_packets.rs:229:13
[INFO] [stdout]     |
[INFO] [stdout] 229 |         for j in cmp::min(i+64,message.len())..(i+64)
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_j`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> protocol/server_packets.rs:237:17
[INFO] [stdout]     |
[INFO] [stdout] 237 |             Err(e) => {}
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `j`
[INFO] [stdout]    --> protocol/server_packets.rs:260:13
[INFO] [stdout]     |
[INFO] [stdout] 260 |         for j in cmp::min(i+64,message.len())..(i+64)
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_j`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `player_id`
[INFO] [stdout]    --> protocol/server_packets.rs:265:14
[INFO] [stdout]     |
[INFO] [stdout] 265 |         for (player_id, client) in &mut server.clients
[INFO] [stdout]     |              ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_player_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> protocol/server_packets.rs:271:21
[INFO] [stdout]     |
[INFO] [stdout] 271 |                 Err(e) => {}
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world_y`
[INFO] [stdout]    --> protocol/server_packets.rs:312:9
[INFO] [stdout]     |
[INFO] [stdout] 312 |     let world_y = server.world_y;
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_world_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `player_id`
[INFO] [stdout]    --> protocol/server_packets.rs:320:10
[INFO] [stdout]     |
[INFO] [stdout] 320 |     for (player_id, client) in & server.clients
[INFO] [stdout]     |          ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_player_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> protocol/server_packets.rs:336:17
[INFO] [stdout]     |
[INFO] [stdout] 336 |             Err(e) => {}
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> protocol/server_packets.rs:360:13
[INFO] [stdout]     |
[INFO] [stdout] 360 |         Err(e) => {}
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> protocol/server_packets.rs:387:21
[INFO] [stdout]     |
[INFO] [stdout] 387 |                 Err(e) => {}
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> protocol/server_packets.rs:404:9
[INFO] [stdout]     |
[INFO] [stdout] 404 |     for i in cmp::min(message.len(),64)..64
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> protocol/server_packets.rs:411:13
[INFO] [stdout]     |
[INFO] [stdout] 411 |         Err(e) => {}
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> protocol/server_packets.rs:425:13
[INFO] [stdout]     |
[INFO] [stdout] 425 |         Err(e) => {}
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |     for i in cmp::min(server.software_name.len(),64)..64
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |         Err(e) => {}
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |     for i in cmp::min(app_name.len(),64)..64
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:75:13
[INFO] [stdout]    |
[INFO] [stdout] 75 |         Err(e) => {}
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:91:13
[INFO] [stdout]    |
[INFO] [stdout] 91 |         Err(e) => {}
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> protocol/server_cpe_packets.rs:107:13
[INFO] [stdout]     |
[INFO] [stdout] 107 |         Err(e) => {}
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `support_level`
[INFO] [stdout]   --> protocol/client_cpe_packets.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |     let support_level = cur.read_u8();
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_support_level`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> main.rs:35:20
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn recieve_packets(mut stream: &mut TcpStream, player_id: i8, tx: & mpsc::Sender<(i8,u8, Vec<u8>)>) -> Result<(),std::io::Error>
[INFO] [stdout]    |                    ----^^^^^^
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> main.rs:128:13
[INFO] [stdout]     |
[INFO] [stdout] 128 |         Err(e) => 
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `heartbeat_thread` is never used
[INFO] [stdout]    --> main.rs:214:4
[INFO] [stdout]     |
[INFO] [stdout] 214 | fn heartbeat_thread()
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `player_id` is never read
[INFO] [stdout]  --> client.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Client {
[INFO] [stdout]   |            ------ field in this struct
[INFO] [stdout] 5 |     pub player_id: i8,
[INFO] [stdout]   |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name_to_id` is never read
[INFO] [stdout]   --> server.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct Server {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub name_to_id: HashMap<String, Client>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `packetID` should have a snake case name
[INFO] [stdout]   --> main.rs:40:17
[INFO] [stdout]    |
[INFO] [stdout] 40 |         let mut packetID: [u8; 1] = [0; 1];
[INFO] [stdout]    |                 ^^^^^^^^ help: convert the identifier to snake case: `packet_id`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> main.rs:126:9
[INFO] [stdout]     |
[INFO] [stdout] 126 |         tx.send((player_id,255,Vec::new()));
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 126 |         let _ = tx.send((player_id,255,Vec::new()));
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> main.rs:131:9
[INFO] [stdout]     |
[INFO] [stdout] 131 |         tx.send((player_id,255,Vec::new()));
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 131 |         let _ = tx.send((player_id,255,Vec::new()));
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `X` should have a snake case name
[INFO] [stdout]    --> protocol/client_packets.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 155 |         let X: u16 = args[1].parse()?;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case (notice the capitalization): `x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Y` should have a snake case name
[INFO] [stdout]    --> protocol/client_packets.rs:156:13
[INFO] [stdout]     |
[INFO] [stdout] 156 |         let Y: u16 = args[2].parse()?;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case (notice the capitalization): `y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Z` should have a snake case name
[INFO] [stdout]    --> protocol/client_packets.rs:157:13
[INFO] [stdout]     |
[INFO] [stdout] 157 |         let Z: u16 = args[3].parse()?;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case (notice the capitalization): `z`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> protocol/server_packets.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |         packet.write_u8(2);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 58 |         let _ = packet.write_u8(2);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> protocol/server_packets.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 60 |         packet.write_u32::<BigEndian>(world_size);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 60 |         let _ = packet.write_u32::<BigEndian>(world_size);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `world_X` should have a snake case name
[INFO] [stdout]   --> protocol/server_packets.rs:77:10
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let (world_X, world_Y, world_Z, spawn_X, spawn_Y, spawn_Z) = (server.world_x, server.world_y, server.world_z, server.spawn_x, se...
[INFO] [stdout]    |          ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `world_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `world_Y` should have a snake case name
[INFO] [stdout]   --> protocol/server_packets.rs:77:19
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let (world_X, world_Y, world_Z, spawn_X, spawn_Y, spawn_Z) = (server.world_x, server.world_y, server.world_z, server.spawn_x, se...
[INFO] [stdout]    |                   ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `world_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `world_Z` should have a snake case name
[INFO] [stdout]   --> protocol/server_packets.rs:77:28
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let (world_X, world_Y, world_Z, spawn_X, spawn_Y, spawn_Z) = (server.world_x, server.world_y, server.world_z, server.spawn_x, se...
[INFO] [stdout]    |                            ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `world_z`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `spawn_X` should have a snake case name
[INFO] [stdout]   --> protocol/server_packets.rs:77:37
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let (world_X, world_Y, world_Z, spawn_X, spawn_Y, spawn_Z) = (server.world_x, server.world_y, server.world_z, server.spawn_x, se...
[INFO] [stdout]    |                                     ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `spawn_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `spawn_Y` should have a snake case name
[INFO] [stdout]   --> protocol/server_packets.rs:77:46
[INFO] [stdout]    |
[INFO] [stdout] 77 | ..., world_Z, spawn_X, spawn_Y, spawn_Z) = (server.world_x, server.world_y, server.world_z, server.spawn_x, server.spawn_y, server.s...
[INFO] [stdout]    |                        ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `spawn_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `spawn_Z` should have a snake case name
[INFO] [stdout]   --> protocol/server_packets.rs:77:55
[INFO] [stdout]    |
[INFO] [stdout] 77 | ..., spawn_X, spawn_Y, spawn_Z) = (server.world_x, server.world_y, server.world_z, server.spawn_x, server.spawn_y, server.spawn_z);
[INFO] [stdout]    |                        ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `spawn_z`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> protocol/server_packets.rs:194:5
[INFO] [stdout]     |
[INFO] [stdout] 194 |     packet.write_u8(0xc);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 194 |     let _ = packet.write_u8(0xc);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> protocol/server_packets.rs:195:5
[INFO] [stdout]     |
[INFO] [stdout] 195 |     packet.write_i8(player_id);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 195 |     let _ = packet.write_i8(player_id);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> protocol/server_packets.rs:401:9
[INFO] [stdout]     |
[INFO] [stdout] 401 |         packet.write_u8(message.as_bytes()[i]);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 401 |         let _ = packet.write_u8(message.as_bytes()[i]);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> protocol/server_packets.rs:406:9
[INFO] [stdout]     |
[INFO] [stdout] 406 |         packet.write_u8(0x20);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 406 |         let _ = packet.write_u8(0x20);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 29 |     packet.write_u8(0x10);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 29 |     let _ = packet.write_u8(0x10);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 57 |     packet.write_u8(0x11);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 57 |     let _ = packet.write_u8(0x11);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `magicNumber` should have a snake case name
[INFO] [stdout]   --> server.rs:73:17
[INFO] [stdout]    |
[INFO] [stdout] 73 |             let magicNumber = cur.read_u16::<LittleEndian>().unwrap();
[INFO] [stdout]    |                 ^^^^^^^^^^^ help: convert the identifier to snake case: `magic_number`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> server.rs:104:9
[INFO] [stdout]     |
[INFO] [stdout] 104 |         enc.write_u32::<LittleEndian>(0);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 104 |         let _ = enc.write_u32::<LittleEndian>(0);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> server.rs:106:9
[INFO] [stdout]     |
[INFO] [stdout] 106 |         enc.write(& self.world_data);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 106 |         let _ = enc.write(& self.world_data);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cur`
[INFO] [stdout]   --> protocol/client_packets.rs:22:45
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn login_procedure(server: &mut Server, cur: &mut Cursor<&Vec<u8>>, client_id: i8)
[INFO] [stdout]    |                                             ^^^ help: if this is intentional, prefix it with an underscore: `_cur`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> protocol/client_packets.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |     let mut player_name: [u8; 64] = [0x0; 64];
[INFO] [stdout]    |         ----^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> protocol/client_packets.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |     let mut verification_key: [u8; 64] = [0x0; 64];
[INFO] [stdout]    |         ----^^^^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `player_name`
[INFO] [stdout]   --> protocol/client_packets.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |     let mut player_name: [u8; 64] = [0x0; 64];
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_player_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `verification_key`
[INFO] [stdout]   --> protocol/client_packets.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |     let mut verification_key: [u8; 64] = [0x0; 64];
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_verification_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `protocol`
[INFO] [stdout]   --> protocol/client_packets.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 62 |     let protocol: u8 = cur.read_u8().unwrap();
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_protocol`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `player_id` is assigned to, but never used
[INFO] [stdout]   --> protocol/client_packets.rs:96:9
[INFO] [stdout]    |
[INFO] [stdout] 96 |     let player_id: i8;
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_player_id` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `client`
[INFO] [stdout]    --> protocol/client_packets.rs:104:9
[INFO] [stdout]     |
[INFO] [stdout] 104 |     let client = &mut server.clients.get_mut(&client_id).unwrap();
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_client`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `player_id` is never read
[INFO] [stdout]    --> protocol/client_packets.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 107 |     player_id = cur.read_i8().unwrap();
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `client`
[INFO] [stdout]    --> protocol/client_packets.rs:122:9
[INFO] [stdout]     |
[INFO] [stdout] 122 |     let client = &mut server.clients.get_mut(&client_id).unwrap();
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_client`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unused`
[INFO] [stdout]    --> protocol/client_packets.rs:186:9
[INFO] [stdout]     |
[INFO] [stdout] 186 |     let unused: u8 = cur.read_u8().unwrap();
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_unused`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> protocol/client_packets.rs:203:17
[INFO] [stdout]     |
[INFO] [stdout] 203 |             Err(e) =>
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> protocol/server_packets.rs:44:13
[INFO] [stdout]    |
[INFO] [stdout] 44 |         Err(e) => {}
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> protocol/server_packets.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |         let mut packet: [u8; 1] = [2];
[INFO] [stdout]    |             ----^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> protocol/server_packets.rs:68:17
[INFO] [stdout]    |
[INFO] [stdout] 68 |             Err(e) => {}
[INFO] [stdout]    |                 ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> protocol/server_packets.rs:80:9
[INFO] [stdout]    |
[INFO] [stdout] 80 |     let mut data: Vec<u8> = Vec::new();
[INFO] [stdout]    |         ----^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tuple`
[INFO] [stdout]   --> protocol/server_packets.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 75 |     let tuple: (u16, u16, u16, u16, u16, u16);
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_tuple`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `j`
[INFO] [stdout]    --> protocol/server_packets.rs:120:13
[INFO] [stdout]     |
[INFO] [stdout] 120 |         for j in chunk_length..1024
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_j`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> protocol/server_packets.rs:131:17
[INFO] [stdout]     |
[INFO] [stdout] 131 |             Err(e) => {}
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> protocol/server_packets.rs:151:13
[INFO] [stdout]     |
[INFO] [stdout] 151 |         Err(e) => {}
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> protocol/server_packets.rs:184:13
[INFO] [stdout]     |
[INFO] [stdout] 184 |         Err(e) => {}
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c_id`
[INFO] [stdout]    --> protocol/server_packets.rs:197:10
[INFO] [stdout]     |
[INFO] [stdout] 197 |     for (c_id, client) in & server.clients
[INFO] [stdout]     |          ^^^^ help: if this is intentional, prefix it with an underscore: `_c_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> protocol/server_packets.rs:203:17
[INFO] [stdout]     |
[INFO] [stdout] 203 |             Err(e) => {}
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `j`
[INFO] [stdout]    --> protocol/server_packets.rs:229:13
[INFO] [stdout]     |
[INFO] [stdout] 229 |         for j in cmp::min(i+64,message.len())..(i+64)
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_j`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> protocol/server_packets.rs:237:17
[INFO] [stdout]     |
[INFO] [stdout] 237 |             Err(e) => {}
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `j`
[INFO] [stdout]    --> protocol/server_packets.rs:260:13
[INFO] [stdout]     |
[INFO] [stdout] 260 |         for j in cmp::min(i+64,message.len())..(i+64)
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_j`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `player_id`
[INFO] [stdout]    --> protocol/server_packets.rs:265:14
[INFO] [stdout]     |
[INFO] [stdout] 265 |         for (player_id, client) in &mut server.clients
[INFO] [stdout]     |              ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_player_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> protocol/server_packets.rs:271:21
[INFO] [stdout]     |
[INFO] [stdout] 271 |                 Err(e) => {}
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world_y`
[INFO] [stdout]    --> protocol/server_packets.rs:312:9
[INFO] [stdout]     |
[INFO] [stdout] 312 |     let world_y = server.world_y;
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_world_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `player_id`
[INFO] [stdout]    --> protocol/server_packets.rs:320:10
[INFO] [stdout]     |
[INFO] [stdout] 320 |     for (player_id, client) in & server.clients
[INFO] [stdout]     |          ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_player_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> protocol/server_packets.rs:336:17
[INFO] [stdout]     |
[INFO] [stdout] 336 |             Err(e) => {}
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> protocol/server_packets.rs:360:13
[INFO] [stdout]     |
[INFO] [stdout] 360 |         Err(e) => {}
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> protocol/server_packets.rs:387:21
[INFO] [stdout]     |
[INFO] [stdout] 387 |                 Err(e) => {}
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> protocol/server_packets.rs:404:9
[INFO] [stdout]     |
[INFO] [stdout] 404 |     for i in cmp::min(message.len(),64)..64
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> protocol/server_packets.rs:411:13
[INFO] [stdout]     |
[INFO] [stdout] 411 |         Err(e) => {}
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> protocol/server_packets.rs:425:13
[INFO] [stdout]     |
[INFO] [stdout] 425 |         Err(e) => {}
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |     for i in cmp::min(server.software_name.len(),64)..64
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |         Err(e) => {}
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |     for i in cmp::min(app_name.len(),64)..64
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:75:13
[INFO] [stdout]    |
[INFO] [stdout] 75 |         Err(e) => {}
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:91:13
[INFO] [stdout]    |
[INFO] [stdout] 91 |         Err(e) => {}
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> protocol/server_cpe_packets.rs:107:13
[INFO] [stdout]     |
[INFO] [stdout] 107 |         Err(e) => {}
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `support_level`
[INFO] [stdout]   --> protocol/client_cpe_packets.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |     let support_level = cur.read_u8();
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_support_level`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> main.rs:35:20
[INFO] [stdout]    |
[INFO] [stdout] 35 | fn recieve_packets(mut stream: &mut TcpStream, player_id: i8, tx: & mpsc::Sender<(i8,u8, Vec<u8>)>) -> Result<(),std::io::Error>
[INFO] [stdout]    |                    ----^^^^^^
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> main.rs:128:13
[INFO] [stdout]     |
[INFO] [stdout] 128 |         Err(e) => 
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `heartbeat_thread` is never used
[INFO] [stdout]    --> main.rs:214:4
[INFO] [stdout]     |
[INFO] [stdout] 214 | fn heartbeat_thread()
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `player_id` is never read
[INFO] [stdout]  --> client.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Client {
[INFO] [stdout]   |            ------ field in this struct
[INFO] [stdout] 5 |     pub player_id: i8,
[INFO] [stdout]   |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name_to_id` is never read
[INFO] [stdout]   --> server.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct Server {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub name_to_id: HashMap<String, Client>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `packetID` should have a snake case name
[INFO] [stdout]   --> main.rs:40:17
[INFO] [stdout]    |
[INFO] [stdout] 40 |         let mut packetID: [u8; 1] = [0; 1];
[INFO] [stdout]    |                 ^^^^^^^^ help: convert the identifier to snake case: `packet_id`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> main.rs:126:9
[INFO] [stdout]     |
[INFO] [stdout] 126 |         tx.send((player_id,255,Vec::new()));
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 126 |         let _ = tx.send((player_id,255,Vec::new()));
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> main.rs:131:9
[INFO] [stdout]     |
[INFO] [stdout] 131 |         tx.send((player_id,255,Vec::new()));
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 131 |         let _ = tx.send((player_id,255,Vec::new()));
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `X` should have a snake case name
[INFO] [stdout]    --> protocol/client_packets.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 155 |         let X: u16 = args[1].parse()?;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case (notice the capitalization): `x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Y` should have a snake case name
[INFO] [stdout]    --> protocol/client_packets.rs:156:13
[INFO] [stdout]     |
[INFO] [stdout] 156 |         let Y: u16 = args[2].parse()?;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case (notice the capitalization): `y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Z` should have a snake case name
[INFO] [stdout]    --> protocol/client_packets.rs:157:13
[INFO] [stdout]     |
[INFO] [stdout] 157 |         let Z: u16 = args[3].parse()?;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case (notice the capitalization): `z`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> protocol/server_packets.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |         packet.write_u8(2);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 58 |         let _ = packet.write_u8(2);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> protocol/server_packets.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 60 |         packet.write_u32::<BigEndian>(world_size);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 60 |         let _ = packet.write_u32::<BigEndian>(world_size);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `world_X` should have a snake case name
[INFO] [stdout]   --> protocol/server_packets.rs:77:10
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let (world_X, world_Y, world_Z, spawn_X, spawn_Y, spawn_Z) = (server.world_x, server.world_y, server.world_z, server.spawn_x, se...
[INFO] [stdout]    |          ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `world_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `world_Y` should have a snake case name
[INFO] [stdout]   --> protocol/server_packets.rs:77:19
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let (world_X, world_Y, world_Z, spawn_X, spawn_Y, spawn_Z) = (server.world_x, server.world_y, server.world_z, server.spawn_x, se...
[INFO] [stdout]    |                   ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `world_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `world_Z` should have a snake case name
[INFO] [stdout]   --> protocol/server_packets.rs:77:28
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let (world_X, world_Y, world_Z, spawn_X, spawn_Y, spawn_Z) = (server.world_x, server.world_y, server.world_z, server.spawn_x, se...
[INFO] [stdout]    |                            ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `world_z`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `spawn_X` should have a snake case name
[INFO] [stdout]   --> protocol/server_packets.rs:77:37
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let (world_X, world_Y, world_Z, spawn_X, spawn_Y, spawn_Z) = (server.world_x, server.world_y, server.world_z, server.spawn_x, se...
[INFO] [stdout]    |                                     ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `spawn_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `spawn_Y` should have a snake case name
[INFO] [stdout]   --> protocol/server_packets.rs:77:46
[INFO] [stdout]    |
[INFO] [stdout] 77 | ..., world_Z, spawn_X, spawn_Y, spawn_Z) = (server.world_x, server.world_y, server.world_z, server.spawn_x, server.spawn_y, server.s...
[INFO] [stdout]    |                        ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `spawn_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `spawn_Z` should have a snake case name
[INFO] [stdout]   --> protocol/server_packets.rs:77:55
[INFO] [stdout]    |
[INFO] [stdout] 77 | ..., spawn_X, spawn_Y, spawn_Z) = (server.world_x, server.world_y, server.world_z, server.spawn_x, server.spawn_y, server.spawn_z);
[INFO] [stdout]    |                        ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `spawn_z`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> protocol/server_packets.rs:194:5
[INFO] [stdout]     |
[INFO] [stdout] 194 |     packet.write_u8(0xc);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 194 |     let _ = packet.write_u8(0xc);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> protocol/server_packets.rs:195:5
[INFO] [stdout]     |
[INFO] [stdout] 195 |     packet.write_i8(player_id);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 195 |     let _ = packet.write_i8(player_id);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> protocol/server_packets.rs:401:9
[INFO] [stdout]     |
[INFO] [stdout] 401 |         packet.write_u8(message.as_bytes()[i]);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 401 |         let _ = packet.write_u8(message.as_bytes()[i]);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> protocol/server_packets.rs:406:9
[INFO] [stdout]     |
[INFO] [stdout] 406 |         packet.write_u8(0x20);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 406 |         let _ = packet.write_u8(0x20);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 29 |     packet.write_u8(0x10);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 29 |     let _ = packet.write_u8(0x10);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> protocol/server_cpe_packets.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 57 |     packet.write_u8(0x11);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 57 |     let _ = packet.write_u8(0x11);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `magicNumber` should have a snake case name
[INFO] [stdout]   --> server.rs:73:17
[INFO] [stdout]    |
[INFO] [stdout] 73 |             let magicNumber = cur.read_u16::<LittleEndian>().unwrap();
[INFO] [stdout]    |                 ^^^^^^^^^^^ help: convert the identifier to snake case: `magic_number`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> server.rs:104:9
[INFO] [stdout]     |
[INFO] [stdout] 104 |         enc.write_u32::<LittleEndian>(0);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 104 |         let _ = enc.write_u32::<LittleEndian>(0);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> server.rs:106:9
[INFO] [stdout]     |
[INFO] [stdout] 106 |         enc.write(& self.world_data);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 106 |         let _ = enc.write(& self.world_data);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.71s
[INFO] running `Command { std: "docker" "inspect" "2ffc2ef1d08f5ef40dcb0189afd8130e5bbfd9964e6ae34711da06f860330572", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2ffc2ef1d08f5ef40dcb0189afd8130e5bbfd9964e6ae34711da06f860330572", kill_on_drop: false }`
[INFO] [stdout] 2ffc2ef1d08f5ef40dcb0189afd8130e5bbfd9964e6ae34711da06f860330572
