[INFO] cloning repository https://github.com/Freggy/rchat [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Freggy/rchat" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FFreggy%2Frchat"` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FFreggy%2Frchat'... [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 36787aa77425bff518275e96f984f51d0a350609 [INFO] checking Freggy/rchat against master#2748a9fd93dd1a00a4521f4f16de5befbf77f6cd for pr-62262-1 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FFreggy%2Frchat" "/workspace/builds/worker-4/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-4/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Freggy/rchat on toolchain 2748a9fd93dd1a00a4521f4f16de5befbf77f6cd [INFO] running `"/workspace/cargo-home/bin/cargo" "+2748a9fd93dd1a00a4521f4f16de5befbf77f6cd" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/Freggy/rchat [INFO] finished tweaking git repo https://github.com/Freggy/rchat [INFO] tweaked toml for git repo https://github.com/Freggy/rchat written to /workspace/builds/worker-4/source/Cargo.toml [INFO] crate git repo https://github.com/Freggy/rchat already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+2748a9fd93dd1a00a4521f4f16de5befbf77f6cd" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+2748a9fd93dd1a00a4521f4f16de5befbf77f6cd" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 69746dead654676a759ec2d6aeb444101b5a237a3167fafee57a9b07018cd3dc [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `"docker" "start" "-a" "69746dead654676a759ec2d6aeb444101b5a237a3167fafee57a9b07018cd3dc"` [INFO] [stderr] Compiling backtrace v0.3.20 [INFO] [stderr] Compiling openssl-sys v0.9.47 [INFO] [stderr] Checking bytebuffer v0.2.1 [INFO] [stderr] Checking backtrace-sys v0.1.28 [INFO] [stderr] Checking rand v0.6.5 [INFO] [stderr] Compiling syn v0.15.34 [INFO] [stderr] Checking mio v0.6.17 [INFO] [stderr] Checking tokio-io v0.1.12 [INFO] [stderr] Checking http v0.1.17 [INFO] [stderr] Checking tokio-buf v0.1.1 [INFO] [stderr] Checking regex v1.1.6 [INFO] [stderr] Checking block-cipher-trait v0.6.2 [INFO] [stderr] Checking cookie v0.12.0 [INFO] [stderr] Checking miniz_oxide_c_api v0.2.1 [INFO] [stderr] Checking stream-cipher v0.3.0 [INFO] [stderr] Checking rust-crypto v0.2.36 [INFO] [stderr] Checking aes-soft v0.3.3 [INFO] [stderr] Checking cfb8 v0.3.2 [INFO] [stderr] Checking flate2 v1.0.7 [INFO] [stderr] Checking error-chain v0.12.1 [INFO] [stderr] Checking aes v0.3.2 [INFO] [stderr] Compiling openssl v0.10.23 [INFO] [stderr] Compiling native-tls v0.2.3 [INFO] [stderr] Compiling phf_generator v0.7.24 [INFO] [stderr] Checking parking_lot_core v0.4.0 [INFO] [stderr] Checking tokio-threadpool v0.1.14 [INFO] [stderr] Checking uuid v0.7.4 [INFO] [stderr] Checking publicsuffix v1.5.2 [INFO] [stderr] Compiling phf_codegen v0.7.24 [INFO] [stderr] Checking parking_lot v0.7.1 [INFO] [stderr] Compiling mime_guess v2.0.0-alpha.6 [INFO] [stderr] Checking http-body v0.1.0 [INFO] [stderr] Checking h2 v0.1.20 [INFO] [stderr] Checking tokio-reactor v0.1.9 [INFO] [stderr] Checking tokio-tcp v0.1.3 [INFO] [stderr] Compiling synstructure v0.10.2 [INFO] [stderr] Checking tokio v0.1.20 [INFO] [stderr] Checking hyper v0.12.29 [INFO] [stderr] Compiling serde_derive v1.0.91 [INFO] [stderr] Compiling failure_derive v0.1.5 [INFO] [stderr] Checking failure v0.1.5 [INFO] [stderr] Checking hyper-tls v0.3.2 [INFO] [stderr] Checking serde v1.0.91 [INFO] [stderr] Checking serde_json v1.0.39 [INFO] [stderr] Checking serde_urlencoded v0.5.5 [INFO] [stderr] Checking cookie_store v0.7.0 [INFO] [stderr] Checking reqwest v0.9.17 [INFO] [stderr] Checking rchat v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused import: `std::io::Read` [INFO] [stderr] --> src/netutils.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use std::io::Read; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fmt::Error` [INFO] [stderr] --> src/netutils.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::fmt::Error; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fmt::Write` [INFO] [stderr] --> src/mojang.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::fmt::Write; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `AesKey`, `KeyError`, `aes_ige` [INFO] [stderr] --> src/cryptoutils.rs:5:20 [INFO] [stderr] | [INFO] [stderr] 5 | use openssl::aes::{AesKey, KeyError, aes_ige}; [INFO] [stderr] | ^^^^^^ ^^^^^^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Cipher`, `Mode` [INFO] [stderr] --> src/cryptoutils.rs:6:21 [INFO] [stderr] | [INFO] [stderr] 6 | use openssl::symm::{Mode, Cipher, Crypter}; [INFO] [stderr] | ^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::Write` [INFO] [stderr] --> src/cryptoutils.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use std::io::Write; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `aes::Aes128` [INFO] [stderr] --> src/cryptoutils.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use aes::Aes128; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `cfb8::Cfb8` [INFO] [stderr] --> src/cryptoutils.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use cfb8::Cfb8; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `StreamCipher` [INFO] [stderr] --> src/cryptoutils.rs:12:44 [INFO] [stderr] | [INFO] [stderr] 12 | use cfb8::stream_cipher::{NewStreamCipher, StreamCipher}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `AesKey`, `KeyError`, `aes_ige` [INFO] [stderr] --> src/main.rs:17:20 [INFO] [stderr] | [INFO] [stderr] 17 | use openssl::aes::{AesKey, KeyError, aes_ige}; [INFO] [stderr] | ^^^^^^ ^^^^^^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Cipher`, `Mode` [INFO] [stderr] --> src/main.rs:18:21 [INFO] [stderr] | [INFO] [stderr] 18 | use openssl::symm::{Mode, Cipher, Crypter}; [INFO] [stderr] | ^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Padding`, `Rsa` [INFO] [stderr] --> src/main.rs:19:20 [INFO] [stderr] | [INFO] [stderr] 19 | use openssl::rsa::{Rsa, Padding}; [INFO] [stderr] | ^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::thread` [INFO] [stderr] --> src/main.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | use std::thread; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `openssl::pkey::PKey` [INFO] [stderr] --> src/main.rs:27:5 [INFO] [stderr] | [INFO] [stderr] 27 | use openssl::pkey::PKey; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `self::crypto::digest::Digest` [INFO] [stderr] --> src/main.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | use self::crypto::digest::Digest; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `self::crypto::sha1::Sha1` [INFO] [stderr] --> src/main.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | use self::crypto::sha1::Sha1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `File`, `read` [INFO] [stderr] --> src/main.rs:31:15 [INFO] [stderr] | [INFO] [stderr] 31 | use std::fs::{File, read}; [INFO] [stderr] | ^^^^ ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `serde_json::to_string_pretty` [INFO] [stderr] --> src/main.rs:36:5 [INFO] [stderr] | [INFO] [stderr] 36 | use serde_json::to_string_pretty; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/main.rs:154:5 [INFO] [stderr] | [INFO] [stderr] 84 | / loop { [INFO] [stderr] 85 | | read_stuff(&mut stream, &mut arr, &mut cipher); [INFO] [stderr] 86 | | [INFO] [stderr] 87 | | let mut buf = ByteBuffer::from_bytes(&arr); [INFO] [stderr] ... | [INFO] [stderr] 150 | | } [INFO] [stderr] 151 | | } [INFO] [stderr] | |_________- any code following this expression is unreachable [INFO] [stderr] ... [INFO] [stderr] 154 | Ok(()) [INFO] [stderr] | ^^^^^^ unreachable expression [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/mojang.rs:62:5 [INFO] [stderr] | [INFO] [stderr] 51 | / match client.post("https://sessionserver.mojang.com/session/minecraft/join").json(&body).send() { [INFO] [stderr] 52 | | Ok(resp) => { [INFO] [stderr] 53 | | if resp.status() != StatusCode::NO_CONTENT { [INFO] [stderr] 54 | | return Err("Failed".to_owned()) [INFO] [stderr] ... | [INFO] [stderr] 60 | | } [INFO] [stderr] 61 | | } [INFO] [stderr] | |_____- any code following this `match` expression is unreachable, as all arms diverge [INFO] [stderr] 62 | Ok(()) [INFO] [stderr] | ^^^^^^ unreachable expression [INFO] [stderr] [INFO] [stderr] warning: unused import: `NewStreamCipher` [INFO] [stderr] --> src/cryptoutils.rs:12:27 [INFO] [stderr] | [INFO] [stderr] 12 | use cfb8::stream_cipher::{NewStreamCipher, StreamCipher}; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `e` [INFO] [stderr] --> src/main.rs:149:17 [INFO] [stderr] | [INFO] [stderr] 149 | e => lol() [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_e` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `encrypted` [INFO] [stderr] --> src/main.rs:187:60 [INFO] [stderr] | [INFO] [stderr] 187 | fn send_packet(tcp: &mut TcpStream, data: &mut ByteBuffer, encrypted: bool, id: i32) { [INFO] [stderr] | ^^^^^^^^^ help: consider prefixing with an underscore: `_encrypted` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `byte_read` is never read [INFO] [stderr] --> src/netutils.rs:33:17 [INFO] [stderr] | [INFO] [stderr] 33 | let mut byte_read = 0; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `server_id` [INFO] [stderr] --> src/mojang.rs:42:56 [INFO] [stderr] | [INFO] [stderr] 42 | pub fn join_server(client: &Client, info: AccountInfo, server_id: String, secret: &Vec, key: &Vec) -> Result<(), String> { [INFO] [stderr] | ^^^^^^^^^ help: consider prefixing with an underscore: `_server_id` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/mojang.rs:75:9 [INFO] [stderr] | [INFO] [stderr] 75 | let mut negative = (data[0] & 0x80) == 0x80; [INFO] [stderr] | ----^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: field is never used: `client_token` [INFO] [stderr] --> src/mojang.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | client_token: String, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/main.rs:162:13 [INFO] [stderr] | [INFO] [stderr] 162 | c.update(&buf[..ret], &mut out); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/main.rs:192:5 [INFO] [stderr] | [INFO] [stderr] 192 | tcp.write_all(buf.to_bytes().as_slice()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/cryptoutils.rs:18:13 [INFO] [stderr] | [INFO] [stderr] 18 | e.public_encrypt(input, out, Padding::PKCS1); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/cryptoutils.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | cipher.update(&input, &mut out); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/cryptoutils.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | cipher.finalize(&mut out); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::Read` [INFO] [stderr] --> src/netutils.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use std::io::Read; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fmt::Error` [INFO] [stderr] --> src/netutils.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::fmt::Error; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fmt::Write` [INFO] [stderr] --> src/mojang.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::fmt::Write; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `AesKey`, `KeyError`, `aes_ige` [INFO] [stderr] --> src/cryptoutils.rs:5:20 [INFO] [stderr] | [INFO] [stderr] 5 | use openssl::aes::{AesKey, KeyError, aes_ige}; [INFO] [stderr] | ^^^^^^ ^^^^^^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Cipher`, `Mode` [INFO] [stderr] --> src/cryptoutils.rs:6:21 [INFO] [stderr] | [INFO] [stderr] 6 | use openssl::symm::{Mode, Cipher, Crypter}; [INFO] [stderr] | ^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::Write` [INFO] [stderr] --> src/cryptoutils.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use std::io::Write; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `aes::Aes128` [INFO] [stderr] --> src/cryptoutils.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use aes::Aes128; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `cfb8::Cfb8` [INFO] [stderr] --> src/cryptoutils.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use cfb8::Cfb8; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `StreamCipher` [INFO] [stderr] --> src/cryptoutils.rs:12:44 [INFO] [stderr] | [INFO] [stderr] 12 | use cfb8::stream_cipher::{NewStreamCipher, StreamCipher}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `AesKey`, `KeyError`, `aes_ige` [INFO] [stderr] --> src/main.rs:17:20 [INFO] [stderr] | [INFO] [stderr] 17 | use openssl::aes::{AesKey, KeyError, aes_ige}; [INFO] [stderr] | ^^^^^^ ^^^^^^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Cipher`, `Mode` [INFO] [stderr] --> src/main.rs:18:21 [INFO] [stderr] | [INFO] [stderr] 18 | use openssl::symm::{Mode, Cipher, Crypter}; [INFO] [stderr] | ^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Padding`, `Rsa` [INFO] [stderr] --> src/main.rs:19:20 [INFO] [stderr] | [INFO] [stderr] 19 | use openssl::rsa::{Rsa, Padding}; [INFO] [stderr] | ^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::thread` [INFO] [stderr] --> src/main.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | use std::thread; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `openssl::pkey::PKey` [INFO] [stderr] --> src/main.rs:27:5 [INFO] [stderr] | [INFO] [stderr] 27 | use openssl::pkey::PKey; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `self::crypto::digest::Digest` [INFO] [stderr] --> src/main.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | use self::crypto::digest::Digest; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `self::crypto::sha1::Sha1` [INFO] [stderr] --> src/main.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | use self::crypto::sha1::Sha1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `File`, `read` [INFO] [stderr] --> src/main.rs:31:15 [INFO] [stderr] | [INFO] [stderr] 31 | use std::fs::{File, read}; [INFO] [stderr] | ^^^^ ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `serde_json::to_string_pretty` [INFO] [stderr] --> src/main.rs:36:5 [INFO] [stderr] | [INFO] [stderr] 36 | use serde_json::to_string_pretty; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/main.rs:154:5 [INFO] [stderr] | [INFO] [stderr] 84 | / loop { [INFO] [stderr] 85 | | read_stuff(&mut stream, &mut arr, &mut cipher); [INFO] [stderr] 86 | | [INFO] [stderr] 87 | | let mut buf = ByteBuffer::from_bytes(&arr); [INFO] [stderr] ... | [INFO] [stderr] 150 | | } [INFO] [stderr] 151 | | } [INFO] [stderr] | |_________- any code following this expression is unreachable [INFO] [stderr] ... [INFO] [stderr] 154 | Ok(()) [INFO] [stderr] | ^^^^^^ unreachable expression [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/mojang.rs:62:5 [INFO] [stderr] | [INFO] [stderr] 51 | / match client.post("https://sessionserver.mojang.com/session/minecraft/join").json(&body).send() { [INFO] [stderr] 52 | | Ok(resp) => { [INFO] [stderr] 53 | | if resp.status() != StatusCode::NO_CONTENT { [INFO] [stderr] 54 | | return Err("Failed".to_owned()) [INFO] [stderr] ... | [INFO] [stderr] 60 | | } [INFO] [stderr] 61 | | } [INFO] [stderr] | |_____- any code following this `match` expression is unreachable, as all arms diverge [INFO] [stderr] 62 | Ok(()) [INFO] [stderr] | ^^^^^^ unreachable expression [INFO] [stderr] [INFO] [stderr] warning: unused import: `NewStreamCipher` [INFO] [stderr] --> src/cryptoutils.rs:12:27 [INFO] [stderr] | [INFO] [stderr] 12 | use cfb8::stream_cipher::{NewStreamCipher, StreamCipher}; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `e` [INFO] [stderr] --> src/main.rs:149:17 [INFO] [stderr] | [INFO] [stderr] 149 | e => lol() [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_e` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `encrypted` [INFO] [stderr] --> src/main.rs:187:60 [INFO] [stderr] | [INFO] [stderr] 187 | fn send_packet(tcp: &mut TcpStream, data: &mut ByteBuffer, encrypted: bool, id: i32) { [INFO] [stderr] | ^^^^^^^^^ help: consider prefixing with an underscore: `_encrypted` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `byte_read` is never read [INFO] [stderr] --> src/netutils.rs:33:17 [INFO] [stderr] | [INFO] [stderr] 33 | let mut byte_read = 0; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `server_id` [INFO] [stderr] --> src/mojang.rs:42:56 [INFO] [stderr] | [INFO] [stderr] 42 | pub fn join_server(client: &Client, info: AccountInfo, server_id: String, secret: &Vec, key: &Vec) -> Result<(), String> { [INFO] [stderr] | ^^^^^^^^^ help: consider prefixing with an underscore: `_server_id` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/mojang.rs:75:9 [INFO] [stderr] | [INFO] [stderr] 75 | let mut negative = (data[0] & 0x80) == 0x80; [INFO] [stderr] | ----^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: field is never used: `client_token` [INFO] [stderr] --> src/mojang.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | client_token: String, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/main.rs:162:13 [INFO] [stderr] | [INFO] [stderr] 162 | c.update(&buf[..ret], &mut out); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/main.rs:192:5 [INFO] [stderr] | [INFO] [stderr] 192 | tcp.write_all(buf.to_bytes().as_slice()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/cryptoutils.rs:18:13 [INFO] [stderr] | [INFO] [stderr] 18 | e.public_encrypt(input, out, Padding::PKCS1); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/cryptoutils.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | cipher.update(&input, &mut out); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/cryptoutils.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | cipher.finalize(&mut out); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1m 29s [INFO] running `"docker" "inspect" "69746dead654676a759ec2d6aeb444101b5a237a3167fafee57a9b07018cd3dc"` [INFO] running `"docker" "rm" "-f" "69746dead654676a759ec2d6aeb444101b5a237a3167fafee57a9b07018cd3dc"` [INFO] [stdout] 69746dead654676a759ec2d6aeb444101b5a237a3167fafee57a9b07018cd3dc