[INFO] cloning repository https://github.com/Christian7573/glap-rs-server
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Christian7573/glap-rs-server" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FChristian7573%2Fglap-rs-server", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FChristian7573%2Fglap-rs-server'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b81157793eda85ef00eaab8bf0e021db71f054d2
[INFO] testing Christian7573/glap-rs-server against 1.47.0 for beta-1.48-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FChristian7573%2Fglap-rs-server" "/workspace/builds/worker-8/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-8/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/Christian7573/glap-rs-server on toolchain 1.47.0
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.47.0" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/Christian7573/glap-rs-server
[INFO] finished tweaking git repo https://github.com/Christian7573/glap-rs-server
[INFO] tweaked toml for git repo https://github.com/Christian7573/glap-rs-server written to /workspace/builds/worker-8/source/Cargo.toml
[INFO] crate git repo https://github.com/Christian7573/glap-rs-server already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.47.0" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 029f80077851ba647ec65047369be8c3da132eed5cd68c9ce426527222599a6c
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "029f80077851ba647ec65047369be8c3da132eed5cd68c9ce426527222599a6c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "029f80077851ba647ec65047369be8c3da132eed5cd68c9ce426527222599a6c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "029f80077851ba647ec65047369be8c3da132eed5cd68c9ce426527222599a6c", kill_on_drop: false }`
[INFO] [stdout] 029f80077851ba647ec65047369be8c3da132eed5cd68c9ce426527222599a6c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 939635c30d2b9d0bb5ccfbfb333a4907dc7479c593646620f3fe09eaa471db5c
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "939635c30d2b9d0bb5ccfbfb333a4907dc7479c593646620f3fe09eaa471db5c", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.19
[INFO] [stderr]    Compiling syn v1.0.36
[INFO] [stderr]    Compiling libc v0.2.74
[INFO] [stderr]    Compiling typenum v1.12.0
[INFO] [stderr]    Compiling cc v1.0.58
[INFO] [stderr]    Compiling log v0.4.11
[INFO] [stderr]    Compiling pkg-config v0.3.18
[INFO] [stderr]    Compiling futures-core v0.3.5
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.67
[INFO] [stderr]    Compiling pin-project-internal v0.4.23
[INFO] [stderr]    Compiling futures-sink v0.3.5
[INFO] [stderr]    Compiling once_cell v1.4.0
[INFO] [stderr]    Compiling proc-macro-nested v0.1.6
[INFO] [stderr]    Compiling bumpalo v3.4.0
[INFO] [stderr]    Compiling futures-io v0.3.5
[INFO] [stderr]    Compiling serde_derive v1.0.114
[INFO] [stderr]    Compiling ppv-lite86 v0.2.8
[INFO] [stderr]    Compiling wasm-bindgen v0.2.67
[INFO] [stderr]    Compiling pin-utils v0.1.0
[INFO] [stderr]    Compiling serde v1.0.114
[INFO] [stderr]    Compiling subtle v2.3.0
[INFO] [stderr]    Compiling cache-padded v1.1.1
[INFO] [stderr]    Compiling tinyvec v0.3.3
[INFO] [stderr]    Compiling parking v1.0.6
[INFO] [stderr]    Compiling event-listener v2.3.0
[INFO] [stderr]    Compiling pin-project-lite v0.1.7
[INFO] [stderr]    Compiling fastrand v1.3.3
[INFO] [stderr]    Compiling waker-fn v1.0.0
[INFO] [stderr]    Compiling atomic-waker v1.0.0
[INFO] [stderr]    Compiling scoped-tls v1.0.0
[INFO] [stderr]    Compiling async-task v3.0.0
[INFO] [stderr]    Compiling send_wrapper v0.4.0
[INFO] [stderr]    Compiling bytes v0.5.6
[INFO] [stderr]    Compiling rustc-demangle v0.1.16
[INFO] [stderr]    Compiling base64 v0.12.3
[INFO] [stderr]    Compiling serde_json v1.0.57
[INFO] [stderr]    Compiling cpuid-bool v0.1.2
[INFO] [stderr]    Compiling anyhow v1.0.32
[INFO] [stderr]    Compiling opaque-debug v0.3.0
[INFO] [stderr]    Compiling curl v0.4.33
[INFO] [stderr]    Compiling data-encoding v2.3.0
[INFO] [stderr]    Compiling infer v0.1.7
[INFO] [stderr]    Compiling isahc v0.9.8
[INFO] [stderr]    Compiling rawpointer v0.2.1
[INFO] [stderr]    Compiling fixedbitset v0.2.0
[INFO] [stderr]    Compiling either v1.5.3
[INFO] [stderr]    Compiling slotmap v0.4.0
[INFO] [stderr]    Compiling byte v0.2.4
[INFO] [stderr]    Compiling generic-array v0.14.4
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling standback v0.2.10
[INFO] [stderr]    Compiling miniz_oxide v0.4.2
[INFO] [stderr]    Compiling time v0.2.20
[INFO] [stderr]    Compiling error-chain v0.12.4
[INFO] [stderr]    Compiling hashbrown v0.8.1
[INFO] [stderr]    Compiling num-integer v0.1.43
[INFO] [stderr]    Compiling num-complex v0.2.4
[INFO] [stderr]    Compiling cookie v0.14.2
[INFO] [stderr]    Compiling indexmap v1.5.0
[INFO] [stderr]    Compiling paste-impl v0.1.18
[INFO] [stderr]    Compiling num-rational v0.2.4
[INFO] [stderr]    Compiling tracing-core v0.1.16
[INFO] [stderr]    Compiling generational-arena v0.2.8
[INFO] [stderr]    Compiling futures-channel v0.3.5
[INFO] [stderr]    Compiling futures-task v0.3.5
[INFO] [stderr]    Compiling concurrent-queue v1.2.0
[INFO] [stderr]    Compiling unicode-normalization v0.1.13
[INFO] [stderr]    Compiling matrixmultiply v0.2.3
[INFO] [stderr]    Compiling http v0.2.1
[INFO] [stderr]    Compiling input_buffer v0.3.1
[INFO] [stderr]    Compiling async-channel v1.4.0
[INFO] [stderr]    Compiling futures-lite v0.1.10
[INFO] [stderr]    Compiling approx v0.3.2
[INFO] [stderr]    Compiling kv-log-macro v1.0.7
[INFO] [stderr]    Compiling idna v0.2.0
[INFO] [stderr]    Compiling openssl-sys v0.9.58
[INFO] [stderr]    Compiling libz-sys v1.1.2
[INFO] [stderr]    Compiling libnghttp2-sys v0.1.4+1.41.0
[INFO] [stderr]    Compiling curl-sys v0.4.36+curl-7.71.1
[INFO] [stderr]    Compiling getrandom v0.1.14
[INFO] [stderr]    Compiling socket2 v0.3.12
[INFO] [stderr]    Compiling num_cpus v1.13.0
[INFO] [stderr]    Compiling time v0.1.43
[INFO] [stderr]    Compiling quote v1.0.7
[INFO] [stderr]    Compiling crossbeam-queue v0.2.3
[INFO] [stderr]    Compiling crossbeam-channel v0.4.4
[INFO] [stderr]    Compiling paste v0.1.18
[INFO] [stderr]    Compiling backtrace v0.3.50
[INFO] [stderr]    Compiling blocking v0.4.7
[INFO] [stderr]    Compiling generic-array v0.12.3
[INFO] [stderr]    Compiling generic-array v0.13.2
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling byte-pool v0.2.2
[INFO] [stderr]    Compiling simba v0.2.0
[INFO] [stderr]    Compiling instant v0.1.6
[INFO] [stderr]    Compiling openssl v0.10.30
[INFO] [stderr]    Compiling native-tls v0.2.4
[INFO] [stderr]    Compiling petgraph v0.5.1
[INFO] [stderr]    Compiling digest v0.8.1
[INFO] [stderr]    Compiling block-buffer v0.7.3
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling block-cipher v0.7.1
[INFO] [stderr]    Compiling digest v0.9.0
[INFO] [stderr]    Compiling universal-hash v0.4.0
[INFO] [stderr]    Compiling crypto-mac v0.8.0
[INFO] [stderr]    Compiling aead v0.3.2
[INFO] [stderr]    Compiling block-buffer v0.9.0
[INFO] [stderr]    Compiling sha-1 v0.8.2
[INFO] [stderr]    Compiling aes-soft v0.4.0
[INFO] [stderr]    Compiling hmac v0.8.1
[INFO] [stderr]    Compiling polyval v0.4.0
[INFO] [stderr]    Compiling sha2 v0.9.1
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling hkdf v0.9.0
[INFO] [stderr]    Compiling ghash v0.3.0
[INFO] [stderr]    Compiling aes v0.4.0
[INFO] [stderr]    Compiling aes-gcm v0.6.0
[INFO] [stderr]    Compiling rand_distr v0.2.2
[INFO] [stderr]    Compiling nalgebra v0.22.0
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.67
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.67
[INFO] [stderr]    Compiling futures-macro v0.3.5
[INFO] [stderr]    Compiling async-attributes v1.1.1
[INFO] [stderr]    Compiling time-macros-impl v0.1.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.20
[INFO] [stderr]    Compiling tracing-attributes v0.1.11
[INFO] [stderr]    Compiling async-trait v0.1.40
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.67
[INFO] [stderr]    Compiling time-macros v0.1.0
[INFO] [stderr]    Compiling js-sys v0.3.44
[INFO] [stderr]    Compiling thiserror v1.0.20
[INFO] [stderr]    Compiling tracing v0.1.19
[INFO] [stderr]    Compiling pin-project v0.4.23
[INFO] [stderr]    Compiling futures-util v0.3.5
[INFO] [stderr]    Compiling tracing-futures v0.2.4
[INFO] [stderr]    Compiling web-sys v0.3.44
[INFO] [stderr]    Compiling smol v0.1.18
[INFO] [stderr]    Compiling futures-executor v0.3.5
[INFO] [stderr]    Compiling sluice v0.5.2
[INFO] [stderr]    Compiling futures v0.3.5
[INFO] [stderr]    Compiling gloo-timers v0.2.1
[INFO] [stderr]    Compiling futures-timer v3.0.2
[INFO] [stderr]    Compiling async-std v1.6.2
[INFO] [stderr]    Compiling ncollide2d v0.24.0
[INFO] [stderr]    Compiling url v2.1.1
[INFO] [stderr]    Compiling serde_qs v0.6.1
[INFO] [stderr]    Compiling serde_urlencoded v0.6.1
[INFO] [stderr]    Compiling tungstenite v0.11.0
[INFO] [stderr]    Compiling http-types v2.4.0
[INFO] [stderr]    Compiling async-native-tls v0.3.3
[INFO] [stderr]    Compiling async-tungstenite v0.8.0
[INFO] [stderr]    Compiling nphysics2d v0.17.0
[INFO] [stderr]    Compiling async-h1 v2.1.2
[INFO] [stderr]    Compiling http-client v4.0.0
[INFO] [stderr]    Compiling surf v2.0.0-alpha.5
[INFO] [stderr]    Compiling glap-rs-server v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `async_std::net::TcpStream`
[INFO] [stdout]  --> src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use async_std::net::TcpStream;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AttachedPartFacing`
[INFO] [stdout]   --> src/main.rs:12:26
[INFO] [stdout]    |
[INFO] [stdout] 12 | use world::parts::{Part, AttachedPartFacing};
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_tungstenite::tungstenite::Message`
[INFO] [stdout]   --> src/main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use async_tungstenite::tungstenite::Message; use session::MyWebSocket;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `session::MyWebSocket`
[INFO] [stdout]   --> src/main.rs:13:50
[INFO] [stdout]    |
[INFO] [stdout] 13 | use async_tungstenite::tungstenite::Message; use session::MyWebSocket;
[INFO] [stdout]    |                                                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `UnitComplex`
[INFO] [stdout]   --> src/main.rs:14:60
[INFO] [stdout]    |
[INFO] [stdout] 14 | use nalgebra::Vector2; use nalgebra::geometry::{Isometry2, UnitComplex};
[INFO] [stdout]    |                                                            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ncollide2d::pipeline::object::CollisionGroups`
[INFO] [stdout]   --> src/main.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use ncollide2d::pipeline::object::CollisionGroups;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::any::Any`
[INFO] [stdout]   --> src/main.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::any::Any;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BTreeSet`
[INFO] [stdout]  --> src/world/mod.rs:3:34
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::collections::{BTreeMap, BTreeSet};
[INFO] [stdout]   |                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nphysics2d::force_generator::DefaultForceGeneratorSet`
[INFO] [stdout]  --> src/world/mod.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use nphysics2d::force_generator::DefaultForceGeneratorSet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RigidBody`
[INFO] [stdout]  --> src/world/planets.rs:2:26
[INFO] [stdout]   |
[INFO] [stdout] 2 | use nphysics2d::object::{RigidBody, RigidBodyDesc, BodyStatus, BodyPartHandle};
[INFO] [stdout]   |                          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Collider`, `RigidBody`
[INFO] [stdout]  --> src/world/parts.rs:1:26
[INFO] [stdout]   |
[INFO] [stdout] 1 | use nphysics2d::object::{RigidBody, Body, RigidBodyDesc, Collider, ColliderDesc, BodyPartHandle, BodyStatus, DefaultColliderHandle};
[INFO] [stdout]   |                          ^^^^^^^^^                       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nphysics2d::math::Isometry`
[INFO] [stdout]  --> src/world/parts.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use nphysics2d::math::Isometry;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `One`
[INFO] [stdout]  --> src/world/parts.rs:7:36
[INFO] [stdout]   |
[INFO] [stdout] 7 | use num_traits::identities::{Zero, One};
[INFO] [stdout]   |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ncollide2d::pipeline::object::CollisionGroups`
[INFO] [stdout]  --> src/world/parts.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use ncollide2d::pipeline::object::CollisionGroups;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around assigned value
[INFO] [stdout]    --> src/codec.rs:143:15
[INFO] [stdout]     |
[INFO] [stdout] 143 |                 session = {if buf[*index] > 0 {*index += 1; let tmp; tmp = type_string_deserialize(&buf, index)?; Some(tmp)} else {*index += 1; None}};
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_braces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around assigned value
[INFO] [stdout]    --> src/codec.rs:317:21
[INFO] [stdout]     |
[INFO] [stdout] 317 | ...[*index] > 0 {*index += 1; let tmp; tmp = type_u16_deserialize(&buf, index)?; Some(tmp)} else {*index += 1; None}};
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around assigned value
[INFO] [stdout]    --> src/codec.rs:340:19
[INFO] [stdout]     |
[INFO] [stdout] 340 |                 grabed_part = {if buf[*index] > 0 {*index += 1; let tmp; tmp = type_u16_deserialize(&buf, index)?; Some(tmp)} else {*index += 1; None}};
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Body`, `RigidBody`
[INFO] [stdout]  --> src/session.rs:8:26
[INFO] [stdout]   |
[INFO] [stdout] 8 | use nphysics2d::object::{Body, BodySet, RigidBody};
[INFO] [stdout]   |                          ^^^^           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MyHandle`, `MyUnits`
[INFO] [stdout]  --> src/session.rs:9:20
[INFO] [stdout]   |
[INFO] [stdout] 9 | use super::world::{MyHandle, MyUnits};
[INFO] [stdout]   |                    ^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Part`
[INFO] [stdout]   --> src/session.rs:10:27
[INFO] [stdout]    |
[INFO] [stdout] 10 | use super::world::parts::{Part, PartKind};
[INFO] [stdout]    |                           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Deref`
[INFO] [stdout]   --> src/session.rs:12:16
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::ops::{Deref, DerefMut};
[INFO] [stdout]    |                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `surf::Client`
[INFO] [stdout]  --> src/beamout.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use surf::Client;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `World`
[INFO] [stdout]  --> src/beamout.rs:2:30
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::world::{MyHandle, World};
[INFO] [stdout]   |                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RigidBody`
[INFO] [stdout]  --> src/beamout.rs:9:26
[INFO] [stdout]   |
[INFO] [stdout] 9 | use nphysics2d::object::{RigidBody, BodyPart, Body};
[INFO] [stdout]   |                          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:473:37
[INFO] [stdout]     |
[INFO] [stdout] 473 | ...                   let mut attachment_msg: Option<Vec<u8>> = None;
[INFO] [stdout]     |                           ----^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::FutureExt`
[INFO] [stdout]  --> src/main.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use futures::FutureExt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BodySet`
[INFO] [stdout]  --> src/session.rs:8:32
[INFO] [stdout]   |
[INFO] [stdout] 8 | use nphysics2d::object::{Body, BodySet, RigidBody};
[INFO] [stdout]   |                                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BodyPart`
[INFO] [stdout]  --> src/beamout.rs:9:37
[INFO] [stdout]   |
[INFO] [stdout] 9 | use nphysics2d::object::{RigidBody, BodyPart, Body};
[INFO] [stdout]   |                                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Body`
[INFO] [stdout]  --> src/beamout.rs:9:47
[INFO] [stdout]   |
[INFO] [stdout] 9 | use nphysics2d::object::{RigidBody, BodyPart, Body};
[INFO] [stdout]   |                                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `planet`
[INFO] [stdout]    --> src/main.rs:243:54
[INFO] [stdout]     |
[INFO] [stdout] 243 |                         PlayerUntouchPlanet{ player, planet, part } => {
[INFO] [stdout]     |                                                      ^^^^^^ help: try ignoring the field: `planet: _`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parent_part`
[INFO] [stdout]    --> src/main.rs:255:37
[INFO] [stdout]     |
[INFO] [stdout] 255 |                         PartDetach{ parent_part, detached_part, player } => todo!()
[INFO] [stdout]     |                                     ^^^^^^^^^^^ help: try ignoring the field: `parent_part: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `detached_part`
[INFO] [stdout]    --> src/main.rs:255:50
[INFO] [stdout]     |
[INFO] [stdout] 255 |                         PartDetach{ parent_part, detached_part, player } => todo!()
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^ help: try ignoring the field: `detached_part: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `player`
[INFO] [stdout]    --> src/main.rs:255:65
[INFO] [stdout]     |
[INFO] [stdout] 255 |                         PartDetach{ parent_part, detached_part, player } => todo!()
[INFO] [stdout]     |                                                                 ^^^^^^ help: try ignoring the field: `player: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `point`
[INFO] [stdout]    --> src/main.rs:382:37
[INFO] [stdout]     |
[INFO] [stdout] 382 | ...                   let point = nphysics2d::math::Point::new(x + core_location.x, y + core_location.y);
[INFO] [stdout]     |                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_point`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `part`
[INFO] [stdout]    --> src/main.rs:385:63
[INFO] [stdout]     |
[INFO] [stdout] 385 | ...                   if let FreePart::Decaying(part, _) | FreePart::EarthCargo(part, _) = &free_part {
[INFO] [stdout]     |                                                 ^^^^                            ^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]     |
[INFO] [stdout] 385 |                                     if let FreePart::Decaying(_part, _) | FreePart::EarthCargo(_part, _) = &free_part {
[INFO] [stdout]     |                                                               ^^^^^                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `core`
[INFO] [stdout]    --> src/main.rs:461:51
[INFO] [stdout]     |
[INFO] [stdout] 461 |                         if let Some((player_meta, core)) = players.get_mut(&id) {
[INFO] [stdout]     |                                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_core`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `attachment_msg`
[INFO] [stdout]    --> src/main.rs:473:37
[INFO] [stdout]     |
[INFO] [stdout] 473 | ...                   let mut attachment_msg: Option<Vec<u8>> = None;
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_attachment_msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `details`
[INFO] [stdout]    --> src/main.rs:506:60
[INFO] [stdout]     |
[INFO] [stdout] 506 | ...                   if let Err((part, slot_id, details, teleport_to, thrust_mode, my_actual_facing)) = recurse3(
[INFO] [stdout]     |                                                  ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_details`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `client`
[INFO] [stdout]    --> src/session.rs:181:58
[INFO] [stdout]     |
[INFO] [stdout] 181 |                         ToServerMsg::Handshake{ session, client, name } => {
[INFO] [stdout]     |                                                          ^^^^^^ help: try ignoring the field: `client: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `listener`
[INFO] [stdout]   --> src/session.rs:63:36
[INFO] [stdout]    |
[INFO] [stdout] 63 |             SessionDInit::InitPloz(listener, inbound, outbound, api) => {
[INFO] [stdout]    |                                    ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_listener`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `inbound`
[INFO] [stdout]   --> src/session.rs:63:46
[INFO] [stdout]    |
[INFO] [stdout] 63 |             SessionDInit::InitPloz(listener, inbound, outbound, api) => {
[INFO] [stdout]    |                                              ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_inbound`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `outbound`
[INFO] [stdout]   --> src/session.rs:63:55
[INFO] [stdout]    |
[INFO] [stdout] 63 |             SessionDInit::InitPloz(listener, inbound, outbound, api) => {
[INFO] [stdout]    |                                                       ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_outbound`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `api`
[INFO] [stdout]   --> src/session.rs:63:65
[INFO] [stdout]    |
[INFO] [stdout] 63 |             SessionDInit::InitPloz(listener, inbound, outbound, api) => {
[INFO] [stdout]    |                                                                 ^^^ help: if this is intentional, prefix it with an underscore: `_api`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/world/mod.rs:146:13
[INFO] [stdout]     |
[INFO] [stdout] 146 |         let mut constraint1 = nphysics2d::joint::RevoluteConstraint::new(
[INFO] [stdout]     |             ----^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/world/mod.rs:153:13
[INFO] [stdout]     |
[INFO] [stdout] 153 |         let mut constraint2 = nphysics2d::joint::RevoluteConstraint::new(
[INFO] [stdout]     |             ----^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `attachment_collider_cuboid`
[INFO] [stdout]   --> src/world/parts.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     attachment_collider_cuboid: ShapeHandle<MyUnits>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new`
[INFO] [stdout]    --> src/session.rs:247:12
[INFO] [stdout]     |
[INFO] [stdout] 247 |     pub fn new(socket: TcpStream) -> PotentialSession {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stdout]    --> src/world/parts.rs:268:74
[INFO] [stdout]     |
[INFO] [stdout] 268 | ...alThrustMode) { std::mem::replace::<CompactThrustMode>(self, CompactThrustMode::new(horizontal, self.get_vertical())); }
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stdout]    --> src/world/parts.rs:269:68
[INFO] [stdout]     |
[INFO] [stdout] 269 | ...alThrustMode) { std::mem::replace::<CompactThrustMode>(self, CompactThrustMode::new(self.get_horizontal(), vertical)); }
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stdout]    --> src/world/parts.rs:270:93
[INFO] [stdout]     |
[INFO] [stdout] 270 | ...erticalThrustMode) { std::mem::replace::<CompactThrustMode>(self, CompactThrustMode::new(horizontal, vertical)); }
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]   --> src/codec.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     out.write_with::<f32>(&mut index, *float, BE);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]   --> src/codec.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |     out.write_with::<u16>(&mut index, *ushort, byte::BE);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]   --> src/codec.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 40 |     out.write_with::<u32>(&mut index, *uint, byte::BE);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/session.rs:163:37
[INFO] [stdout]     |
[INFO] [stdout] 163 | ...                   socket.flush().await; 
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stdout]    --> src/session.rs:267:25
[INFO] [stdout]     |
[INFO] [stdout] 267 |                         std::mem::replace(self.get_mut(), PotentialSession::AwaitingHandshake(socket));
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::task::Poll` that must be used
[INFO] [stdout]    --> src/session.rs:303:9
[INFO] [stdout]     |
[INFO] [stdout] 303 |         Pin::new(&mut self.socket).poll_flush(ctx);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Poll` may be a `Pending` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 56 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 3m 15s
[INFO] running `Command { std: "docker" "inspect" "939635c30d2b9d0bb5ccfbfb333a4907dc7479c593646620f3fe09eaa471db5c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "939635c30d2b9d0bb5ccfbfb333a4907dc7479c593646620f3fe09eaa471db5c", kill_on_drop: false }`
[INFO] [stdout] 939635c30d2b9d0bb5ccfbfb333a4907dc7479c593646620f3fe09eaa471db5c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] cd486e811df12b21f3af7d7632fd132c0823f6e15440f8b62b271e9d7d3dbf4a
[INFO] running `Command { std: "docker" "start" "-a" "cd486e811df12b21f3af7d7632fd132c0823f6e15440f8b62b271e9d7d3dbf4a", kill_on_drop: false }`
[INFO] [stderr]    Compiling glap-rs-server v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `async_std::net::TcpStream`
[INFO] [stdout]  --> src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use async_std::net::TcpStream;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AttachedPartFacing`
[INFO] [stdout]   --> src/main.rs:12:26
[INFO] [stdout]    |
[INFO] [stdout] 12 | use world::parts::{Part, AttachedPartFacing};
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_tungstenite::tungstenite::Message`
[INFO] [stdout]   --> src/main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use async_tungstenite::tungstenite::Message; use session::MyWebSocket;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `session::MyWebSocket`
[INFO] [stdout]   --> src/main.rs:13:50
[INFO] [stdout]    |
[INFO] [stdout] 13 | use async_tungstenite::tungstenite::Message; use session::MyWebSocket;
[INFO] [stdout]    |                                                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `UnitComplex`
[INFO] [stdout]   --> src/main.rs:14:60
[INFO] [stdout]    |
[INFO] [stdout] 14 | use nalgebra::Vector2; use nalgebra::geometry::{Isometry2, UnitComplex};
[INFO] [stdout]    |                                                            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ncollide2d::pipeline::object::CollisionGroups`
[INFO] [stdout]   --> src/main.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use ncollide2d::pipeline::object::CollisionGroups;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::any::Any`
[INFO] [stdout]   --> src/main.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::any::Any;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BTreeSet`
[INFO] [stdout]  --> src/world/mod.rs:3:34
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::collections::{BTreeMap, BTreeSet};
[INFO] [stdout]   |                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nphysics2d::force_generator::DefaultForceGeneratorSet`
[INFO] [stdout]  --> src/world/mod.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use nphysics2d::force_generator::DefaultForceGeneratorSet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RigidBody`
[INFO] [stdout]  --> src/world/planets.rs:2:26
[INFO] [stdout]   |
[INFO] [stdout] 2 | use nphysics2d::object::{RigidBody, RigidBodyDesc, BodyStatus, BodyPartHandle};
[INFO] [stdout]   |                          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Collider`, `RigidBody`
[INFO] [stdout]  --> src/world/parts.rs:1:26
[INFO] [stdout]   |
[INFO] [stdout] 1 | use nphysics2d::object::{RigidBody, Body, RigidBodyDesc, Collider, ColliderDesc, BodyPartHandle, BodyStatus, DefaultColliderHandle};
[INFO] [stdout]   |                          ^^^^^^^^^                       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nphysics2d::math::Isometry`
[INFO] [stdout]  --> src/world/parts.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use nphysics2d::math::Isometry;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `One`
[INFO] [stdout]  --> src/world/parts.rs:7:36
[INFO] [stdout]   |
[INFO] [stdout] 7 | use num_traits::identities::{Zero, One};
[INFO] [stdout]   |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ncollide2d::pipeline::object::CollisionGroups`
[INFO] [stdout]  --> src/world/parts.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use ncollide2d::pipeline::object::CollisionGroups;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around assigned value
[INFO] [stdout]    --> src/codec.rs:143:15
[INFO] [stdout]     |
[INFO] [stdout] 143 |                 session = {if buf[*index] > 0 {*index += 1; let tmp; tmp = type_string_deserialize(&buf, index)?; Some(tmp)} else {*index += 1; None}};
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_braces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around assigned value
[INFO] [stdout]    --> src/codec.rs:317:21
[INFO] [stdout]     |
[INFO] [stdout] 317 | ...[*index] > 0 {*index += 1; let tmp; tmp = type_u16_deserialize(&buf, index)?; Some(tmp)} else {*index += 1; None}};
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around assigned value
[INFO] [stdout]    --> src/codec.rs:340:19
[INFO] [stdout]     |
[INFO] [stdout] 340 |                 grabed_part = {if buf[*index] > 0 {*index += 1; let tmp; tmp = type_u16_deserialize(&buf, index)?; Some(tmp)} else {*index += 1; None}};
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Body`, `RigidBody`
[INFO] [stdout]  --> src/session.rs:8:26
[INFO] [stdout]   |
[INFO] [stdout] 8 | use nphysics2d::object::{Body, BodySet, RigidBody};
[INFO] [stdout]   |                          ^^^^           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MyHandle`, `MyUnits`
[INFO] [stdout]  --> src/session.rs:9:20
[INFO] [stdout]   |
[INFO] [stdout] 9 | use super::world::{MyHandle, MyUnits};
[INFO] [stdout]   |                    ^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Part`
[INFO] [stdout]   --> src/session.rs:10:27
[INFO] [stdout]    |
[INFO] [stdout] 10 | use super::world::parts::{Part, PartKind};
[INFO] [stdout]    |                           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Deref`
[INFO] [stdout]   --> src/session.rs:12:16
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::ops::{Deref, DerefMut};
[INFO] [stdout]    |                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `surf::Client`
[INFO] [stdout]  --> src/beamout.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use surf::Client;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `World`
[INFO] [stdout]  --> src/beamout.rs:2:30
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::world::{MyHandle, World};
[INFO] [stdout]   |                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RigidBody`
[INFO] [stdout]  --> src/beamout.rs:9:26
[INFO] [stdout]   |
[INFO] [stdout] 9 | use nphysics2d::object::{RigidBody, BodyPart, Body};
[INFO] [stdout]   |                          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:473:37
[INFO] [stdout]     |
[INFO] [stdout] 473 | ...                   let mut attachment_msg: Option<Vec<u8>> = None;
[INFO] [stdout]     |                           ----^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::FutureExt`
[INFO] [stdout]  --> src/main.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use futures::FutureExt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BodySet`
[INFO] [stdout]  --> src/session.rs:8:32
[INFO] [stdout]   |
[INFO] [stdout] 8 | use nphysics2d::object::{Body, BodySet, RigidBody};
[INFO] [stdout]   |                                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BodyPart`
[INFO] [stdout]  --> src/beamout.rs:9:37
[INFO] [stdout]   |
[INFO] [stdout] 9 | use nphysics2d::object::{RigidBody, BodyPart, Body};
[INFO] [stdout]   |                                     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Body`
[INFO] [stdout]  --> src/beamout.rs:9:47
[INFO] [stdout]   |
[INFO] [stdout] 9 | use nphysics2d::object::{RigidBody, BodyPart, Body};
[INFO] [stdout]   |                                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `planet`
[INFO] [stdout]    --> src/main.rs:243:54
[INFO] [stdout]     |
[INFO] [stdout] 243 |                         PlayerUntouchPlanet{ player, planet, part } => {
[INFO] [stdout]     |                                                      ^^^^^^ help: try ignoring the field: `planet: _`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parent_part`
[INFO] [stdout]    --> src/main.rs:255:37
[INFO] [stdout]     |
[INFO] [stdout] 255 |                         PartDetach{ parent_part, detached_part, player } => todo!()
[INFO] [stdout]     |                                     ^^^^^^^^^^^ help: try ignoring the field: `parent_part: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `detached_part`
[INFO] [stdout]    --> src/main.rs:255:50
[INFO] [stdout]     |
[INFO] [stdout] 255 |                         PartDetach{ parent_part, detached_part, player } => todo!()
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^ help: try ignoring the field: `detached_part: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `player`
[INFO] [stdout]    --> src/main.rs:255:65
[INFO] [stdout]     |
[INFO] [stdout] 255 |                         PartDetach{ parent_part, detached_part, player } => todo!()
[INFO] [stdout]     |                                                                 ^^^^^^ help: try ignoring the field: `player: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `point`
[INFO] [stdout]    --> src/main.rs:382:37
[INFO] [stdout]     |
[INFO] [stdout] 382 | ...                   let point = nphysics2d::math::Point::new(x + core_location.x, y + core_location.y);
[INFO] [stdout]     |                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_point`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `part`
[INFO] [stdout]    --> src/main.rs:385:63
[INFO] [stdout]     |
[INFO] [stdout] 385 | ...                   if let FreePart::Decaying(part, _) | FreePart::EarthCargo(part, _) = &free_part {
[INFO] [stdout]     |                                                 ^^^^                            ^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]     |
[INFO] [stdout] 385 |                                     if let FreePart::Decaying(_part, _) | FreePart::EarthCargo(_part, _) = &free_part {
[INFO] [stdout]     |                                                               ^^^^^                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `core`
[INFO] [stdout]    --> src/main.rs:461:51
[INFO] [stdout]     |
[INFO] [stdout] 461 |                         if let Some((player_meta, core)) = players.get_mut(&id) {
[INFO] [stdout]     |                                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_core`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `attachment_msg`
[INFO] [stdout]    --> src/main.rs:473:37
[INFO] [stdout]     |
[INFO] [stdout] 473 | ...                   let mut attachment_msg: Option<Vec<u8>> = None;
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_attachment_msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `details`
[INFO] [stdout]    --> src/main.rs:506:60
[INFO] [stdout]     |
[INFO] [stdout] 506 | ...                   if let Err((part, slot_id, details, teleport_to, thrust_mode, my_actual_facing)) = recurse3(
[INFO] [stdout]     |                                                  ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_details`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `client`
[INFO] [stdout]    --> src/session.rs:181:58
[INFO] [stdout]     |
[INFO] [stdout] 181 |                         ToServerMsg::Handshake{ session, client, name } => {
[INFO] [stdout]     |                                                          ^^^^^^ help: try ignoring the field: `client: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `listener`
[INFO] [stdout]   --> src/session.rs:63:36
[INFO] [stdout]    |
[INFO] [stdout] 63 |             SessionDInit::InitPloz(listener, inbound, outbound, api) => {
[INFO] [stdout]    |                                    ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_listener`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `inbound`
[INFO] [stdout]   --> src/session.rs:63:46
[INFO] [stdout]    |
[INFO] [stdout] 63 |             SessionDInit::InitPloz(listener, inbound, outbound, api) => {
[INFO] [stdout]    |                                              ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_inbound`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `outbound`
[INFO] [stdout]   --> src/session.rs:63:55
[INFO] [stdout]    |
[INFO] [stdout] 63 |             SessionDInit::InitPloz(listener, inbound, outbound, api) => {
[INFO] [stdout]    |                                                       ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_outbound`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `api`
[INFO] [stdout]   --> src/session.rs:63:65
[INFO] [stdout]    |
[INFO] [stdout] 63 |             SessionDInit::InitPloz(listener, inbound, outbound, api) => {
[INFO] [stdout]    |                                                                 ^^^ help: if this is intentional, prefix it with an underscore: `_api`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/world/mod.rs:146:13
[INFO] [stdout]     |
[INFO] [stdout] 146 |         let mut constraint1 = nphysics2d::joint::RevoluteConstraint::new(
[INFO] [stdout]     |             ----^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/world/mod.rs:153:13
[INFO] [stdout]     |
[INFO] [stdout] 153 |         let mut constraint2 = nphysics2d::joint::RevoluteConstraint::new(
[INFO] [stdout]     |             ----^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `attachment_collider_cuboid`
[INFO] [stdout]   --> src/world/parts.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     attachment_collider_cuboid: ShapeHandle<MyUnits>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new`
[INFO] [stdout]    --> src/session.rs:247:12
[INFO] [stdout]     |
[INFO] [stdout] 247 |     pub fn new(socket: TcpStream) -> PotentialSession {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stdout]    --> src/world/parts.rs:268:74
[INFO] [stdout]     |
[INFO] [stdout] 268 | ...alThrustMode) { std::mem::replace::<CompactThrustMode>(self, CompactThrustMode::new(horizontal, self.get_vertical())); }
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stdout]    --> src/world/parts.rs:269:68
[INFO] [stdout]     |
[INFO] [stdout] 269 | ...alThrustMode) { std::mem::replace::<CompactThrustMode>(self, CompactThrustMode::new(self.get_horizontal(), vertical)); }
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stdout]    --> src/world/parts.rs:270:93
[INFO] [stdout]     |
[INFO] [stdout] 270 | ...erticalThrustMode) { std::mem::replace::<CompactThrustMode>(self, CompactThrustMode::new(horizontal, vertical)); }
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]   --> src/codec.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     out.write_with::<f32>(&mut index, *float, BE);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]   --> src/codec.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |     out.write_with::<u16>(&mut index, *ushort, byte::BE);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]   --> src/codec.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 40 |     out.write_with::<u32>(&mut index, *uint, byte::BE);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/session.rs:163:37
[INFO] [stdout]     |
[INFO] [stdout] 163 | ...                   socket.flush().await; 
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stdout]    --> src/session.rs:267:25
[INFO] [stdout]     |
[INFO] [stdout] 267 |                         std::mem::replace(self.get_mut(), PotentialSession::AwaitingHandshake(socket));
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::task::Poll` that must be used
[INFO] [stdout]    --> src/session.rs:303:9
[INFO] [stdout]     |
[INFO] [stdout] 303 |         Pin::new(&mut self.socket).poll_flush(ctx);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Poll` may be a `Pending` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 56 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 3.21s
[INFO] running `Command { std: "docker" "inspect" "cd486e811df12b21f3af7d7632fd132c0823f6e15440f8b62b271e9d7d3dbf4a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cd486e811df12b21f3af7d7632fd132c0823f6e15440f8b62b271e9d7d3dbf4a", kill_on_drop: false }`
[INFO] [stdout] cd486e811df12b21f3af7d7632fd132c0823f6e15440f8b62b271e9d7d3dbf4a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 734fb1ef6dcd7e1de8ae3b514adee3dd5b0eb0e7e121a7ad42a60dd1653256c3
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "734fb1ef6dcd7e1de8ae3b514adee3dd5b0eb0e7e121a7ad42a60dd1653256c3", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `async_std::net::TcpStream`
[INFO] [stderr]  --> src/main.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use async_std::net::TcpStream;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `AttachedPartFacing`
[INFO] [stderr]   --> src/main.rs:12:26
[INFO] [stderr]    |
[INFO] [stderr] 12 | use world::parts::{Part, AttachedPartFacing};
[INFO] [stderr]    |                          ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `async_tungstenite::tungstenite::Message`
[INFO] [stderr]   --> src/main.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | use async_tungstenite::tungstenite::Message; use session::MyWebSocket;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `session::MyWebSocket`
[INFO] [stderr]   --> src/main.rs:13:50
[INFO] [stderr]    |
[INFO] [stderr] 13 | use async_tungstenite::tungstenite::Message; use session::MyWebSocket;
[INFO] [stderr]    |                                                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `UnitComplex`
[INFO] [stderr]   --> src/main.rs:14:60
[INFO] [stderr]    |
[INFO] [stderr] 14 | use nalgebra::Vector2; use nalgebra::geometry::{Isometry2, UnitComplex};
[INFO] [stderr]    |                                                            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ncollide2d::pipeline::object::CollisionGroups`
[INFO] [stderr]   --> src/main.rs:15:5
[INFO] [stderr]    |
[INFO] [stderr] 15 | use ncollide2d::pipeline::object::CollisionGroups;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::any::Any`
[INFO] [stderr]   --> src/main.rs:17:5
[INFO] [stderr]    |
[INFO] [stderr] 17 | use std::any::Any;
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `BTreeSet`
[INFO] [stderr]  --> src/world/mod.rs:3:34
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::collections::{BTreeMap, BTreeSet};
[INFO] [stderr]   |                                  ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `nphysics2d::force_generator::DefaultForceGeneratorSet`
[INFO] [stderr]  --> src/world/mod.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use nphysics2d::force_generator::DefaultForceGeneratorSet;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `RigidBody`
[INFO] [stderr]  --> src/world/planets.rs:2:26
[INFO] [stderr]   |
[INFO] [stderr] 2 | use nphysics2d::object::{RigidBody, RigidBodyDesc, BodyStatus, BodyPartHandle};
[INFO] [stderr]   |                          ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Collider`, `RigidBody`
[INFO] [stderr]  --> src/world/parts.rs:1:26
[INFO] [stderr]   |
[INFO] [stderr] 1 | use nphysics2d::object::{RigidBody, Body, RigidBodyDesc, Collider, ColliderDesc, BodyPartHandle, BodyStatus, DefaultColliderHandle};
[INFO] [stderr]   |                          ^^^^^^^^^                       ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `nphysics2d::math::Isometry`
[INFO] [stderr]  --> src/world/parts.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use nphysics2d::math::Isometry;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `One`
[INFO] [stderr]  --> src/world/parts.rs:7:36
[INFO] [stderr]   |
[INFO] [stderr] 7 | use num_traits::identities::{Zero, One};
[INFO] [stderr]   |                                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ncollide2d::pipeline::object::CollisionGroups`
[INFO] [stderr]  --> src/world/parts.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use ncollide2d::pipeline::object::CollisionGroups;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary braces around assigned value
[INFO] [stderr]    --> src/codec.rs:143:15
[INFO] [stderr]     |
[INFO] [stderr] 143 |                 session = {if buf[*index] > 0 {*index += 1; let tmp; tmp = type_string_deserialize(&buf, index)?; Some(tmp)} else {*index += 1; None}};
[INFO] [stderr]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_braces)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary braces around assigned value
[INFO] [stderr]    --> src/codec.rs:317:21
[INFO] [stderr]     |
[INFO] [stderr] 317 | ...[*index] > 0 {*index += 1; let tmp; tmp = type_u16_deserialize(&buf, index)?; Some(tmp)} else {*index += 1; None}};
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary braces around assigned value
[INFO] [stderr]    --> src/codec.rs:340:19
[INFO] [stderr]     |
[INFO] [stderr] 340 |                 grabed_part = {if buf[*index] > 0 {*index += 1; let tmp; tmp = type_u16_deserialize(&buf, index)?; Some(tmp)} else {*index += 1; None}};
[INFO] [stderr]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Body`, `RigidBody`
[INFO] [stderr]  --> src/session.rs:8:26
[INFO] [stderr]   |
[INFO] [stderr] 8 | use nphysics2d::object::{Body, BodySet, RigidBody};
[INFO] [stderr]   |                          ^^^^           ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `MyHandle`, `MyUnits`
[INFO] [stderr]  --> src/session.rs:9:20
[INFO] [stderr]   |
[INFO] [stderr] 9 | use super::world::{MyHandle, MyUnits};
[INFO] [stderr]   |                    ^^^^^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Part`
[INFO] [stderr]   --> src/session.rs:10:27
[INFO] [stderr]    |
[INFO] [stderr] 10 | use super::world::parts::{Part, PartKind};
[INFO] [stderr]    |                           ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Deref`
[INFO] [stderr]   --> src/session.rs:12:16
[INFO] [stderr]    |
[INFO] [stderr] 12 | use std::ops::{Deref, DerefMut};
[INFO] [stderr]    |                ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `surf::Client`
[INFO] [stderr]  --> src/beamout.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use surf::Client;
[INFO] [stderr]   |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `World`
[INFO] [stderr]  --> src/beamout.rs:2:30
[INFO] [stderr]   |
[INFO] [stderr] 2 | use crate::world::{MyHandle, World};
[INFO] [stderr]   |                              ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `RigidBody`
[INFO] [stderr]  --> src/beamout.rs:9:26
[INFO] [stderr]   |
[INFO] [stderr] 9 | use nphysics2d::object::{RigidBody, BodyPart, Body};
[INFO] [stderr]   |                          ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/main.rs:473:37
[INFO] [stderr]     |
[INFO] [stderr] 473 | ...                   let mut attachment_msg: Option<Vec<u8>> = None;
[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: unused import: `futures::FutureExt`
[INFO] [stderr]  --> src/main.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use futures::FutureExt;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `BodySet`
[INFO] [stderr]  --> src/session.rs:8:32
[INFO] [stderr]   |
[INFO] [stderr] 8 | use nphysics2d::object::{Body, BodySet, RigidBody};
[INFO] [stderr]   |                                ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `BodyPart`
[INFO] [stderr]  --> src/beamout.rs:9:37
[INFO] [stderr]   |
[INFO] [stderr] 9 | use nphysics2d::object::{RigidBody, BodyPart, Body};
[INFO] [stderr]   |                                     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Body`
[INFO] [stderr]  --> src/beamout.rs:9:47
[INFO] [stderr]   |
[INFO] [stderr] 9 | use nphysics2d::object::{RigidBody, BodyPart, Body};
[INFO] [stderr]   |                                               ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `planet`
[INFO] [stderr]    --> src/main.rs:243:54
[INFO] [stderr]     |
[INFO] [stderr] 243 |                         PlayerUntouchPlanet{ player, planet, part } => {
[INFO] [stderr]     |                                                      ^^^^^^ help: try ignoring the field: `planet: _`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `parent_part`
[INFO] [stderr]    --> src/main.rs:255:37
[INFO] [stderr]     |
[INFO] [stderr] 255 |                         PartDetach{ parent_part, detached_part, player } => todo!()
[INFO] [stderr]     |                                     ^^^^^^^^^^^ help: try ignoring the field: `parent_part: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `detached_part`
[INFO] [stderr]    --> src/main.rs:255:50
[INFO] [stderr]     |
[INFO] [stderr] 255 |                         PartDetach{ parent_part, detached_part, player } => todo!()
[INFO] [stderr]     |                                                  ^^^^^^^^^^^^^ help: try ignoring the field: `detached_part: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `player`
[INFO] [stderr]    --> src/main.rs:255:65
[INFO] [stderr]     |
[INFO] [stderr] 255 |                         PartDetach{ parent_part, detached_part, player } => todo!()
[INFO] [stderr]     |                                                                 ^^^^^^ help: try ignoring the field: `player: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `point`
[INFO] [stderr]    --> src/main.rs:382:37
[INFO] [stderr]     |
[INFO] [stderr] 382 | ...                   let point = nphysics2d::math::Point::new(x + core_location.x, y + core_location.y);
[INFO] [stderr]     |                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_point`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `part`
[INFO] [stderr]    --> src/main.rs:385:63
[INFO] [stderr]     |
[INFO] [stderr] 385 | ...                   if let FreePart::Decaying(part, _) | FreePart::EarthCargo(part, _) = &free_part {
[INFO] [stderr]     |                                                 ^^^^                            ^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: if this is intentional, prefix it with an underscore
[INFO] [stderr]     |
[INFO] [stderr] 385 |                                     if let FreePart::Decaying(_part, _) | FreePart::EarthCargo(_part, _) = &free_part {
[INFO] [stderr]     |                                                               ^^^^^                            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `core`
[INFO] [stderr]    --> src/main.rs:461:51
[INFO] [stderr]     |
[INFO] [stderr] 461 |                         if let Some((player_meta, core)) = players.get_mut(&id) {
[INFO] [stderr]     |                                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_core`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `attachment_msg`
[INFO] [stderr]    --> src/main.rs:473:37
[INFO] [stderr]     |
[INFO] [stderr] 473 | ...                   let mut attachment_msg: Option<Vec<u8>> = None;
[INFO] [stderr]     |                           ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_attachment_msg`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `details`
[INFO] [stderr]    --> src/main.rs:506:60
[INFO] [stderr]     |
[INFO] [stderr] 506 | ...                   if let Err((part, slot_id, details, teleport_to, thrust_mode, my_actual_facing)) = recurse3(
[INFO] [stderr]     |                                                  ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_details`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `client`
[INFO] [stderr]    --> src/session.rs:181:58
[INFO] [stderr]     |
[INFO] [stderr] 181 |                         ToServerMsg::Handshake{ session, client, name } => {
[INFO] [stderr]     |                                                          ^^^^^^ help: try ignoring the field: `client: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `listener`
[INFO] [stderr]   --> src/session.rs:63:36
[INFO] [stderr]    |
[INFO] [stderr] 63 |             SessionDInit::InitPloz(listener, inbound, outbound, api) => {
[INFO] [stderr]    |                                    ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_listener`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `inbound`
[INFO] [stderr]   --> src/session.rs:63:46
[INFO] [stderr]    |
[INFO] [stderr] 63 |             SessionDInit::InitPloz(listener, inbound, outbound, api) => {
[INFO] [stderr]    |                                              ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_inbound`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `outbound`
[INFO] [stderr]   --> src/session.rs:63:55
[INFO] [stderr]    |
[INFO] [stderr] 63 |             SessionDInit::InitPloz(listener, inbound, outbound, api) => {
[INFO] [stderr]    |                                                       ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_outbound`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `api`
[INFO] [stderr]   --> src/session.rs:63:65
[INFO] [stderr]    |
[INFO] [stderr] 63 |             SessionDInit::InitPloz(listener, inbound, outbound, api) => {
[INFO] [stderr]    |                                                                 ^^^ help: if this is intentional, prefix it with an underscore: `_api`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/world/mod.rs:146:13
[INFO] [stderr]     |
[INFO] [stderr] 146 |         let mut constraint1 = nphysics2d::joint::RevoluteConstraint::new(
[INFO] [stderr]     |             ----^^^^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/world/mod.rs:153:13
[INFO] [stderr]     |
[INFO] [stderr] 153 |         let mut constraint2 = nphysics2d::joint::RevoluteConstraint::new(
[INFO] [stderr]     |             ----^^^^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: field is never read: `attachment_collider_cuboid`
[INFO] [stderr]   --> src/world/parts.rs:15:5
[INFO] [stderr]    |
[INFO] [stderr] 15 |     attachment_collider_cuboid: ShapeHandle<MyUnits>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `new`
[INFO] [stderr]    --> src/session.rs:247:12
[INFO] [stderr]     |
[INFO] [stderr] 247 |     pub fn new(socket: TcpStream) -> PotentialSession {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stderr]    --> src/world/parts.rs:268:74
[INFO] [stderr]     |
[INFO] [stderr] 268 | ...alThrustMode) { std::mem::replace::<CompactThrustMode>(self, CompactThrustMode::new(horizontal, self.get_vertical())); }
[INFO] [stderr]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stderr] 
[INFO] [stderr] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stderr]    --> src/world/parts.rs:269:68
[INFO] [stderr]     |
[INFO] [stderr] 269 | ...alThrustMode) { std::mem::replace::<CompactThrustMode>(self, CompactThrustMode::new(self.get_horizontal(), vertical)); }
[INFO] [stderr]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stderr] 
[INFO] [stderr] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stderr]    --> src/world/parts.rs:270:93
[INFO] [stderr]     |
[INFO] [stderr] 270 | ...erticalThrustMode) { std::mem::replace::<CompactThrustMode>(self, CompactThrustMode::new(horizontal, vertical)); }
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` that must be used
[INFO] [stderr]   --> src/codec.rs:22:5
[INFO] [stderr]    |
[INFO] [stderr] 22 |     out.write_with::<f32>(&mut index, *float, BE);
[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/codec.rs:31:5
[INFO] [stderr]    |
[INFO] [stderr] 31 |     out.write_with::<u16>(&mut index, *ushort, byte::BE);
[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/codec.rs:40:5
[INFO] [stderr]    |
[INFO] [stderr] 40 |     out.write_with::<u32>(&mut index, *uint, byte::BE);
[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/session.rs:163:37
[INFO] [stderr]     |
[INFO] [stderr] 163 | ...                   socket.flush().await; 
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] 
[INFO] [stderr] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stderr]    --> src/session.rs:267:25
[INFO] [stderr]     |
[INFO] [stderr] 267 |                         std::mem::replace(self.get_mut(), PotentialSession::AwaitingHandshake(socket));
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::task::Poll` that must be used
[INFO] [stderr]    --> src/session.rs:303:9
[INFO] [stderr]     |
[INFO] [stderr] 303 |         Pin::new(&mut self.socket).poll_flush(ctx);
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Poll` may be a `Pending` variant, which should be handled
[INFO] [stderr] 
[INFO] [stderr] warning: 56 warnings emitted
[INFO] [stderr] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.51s
[INFO] [stdout] 
[INFO] [stderr]      Running /opt/rustwide/target/debug/deps/glap_rs_server-950b8c867d07ae74
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "734fb1ef6dcd7e1de8ae3b514adee3dd5b0eb0e7e121a7ad42a60dd1653256c3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "734fb1ef6dcd7e1de8ae3b514adee3dd5b0eb0e7e121a7ad42a60dd1653256c3", kill_on_drop: false }`
[INFO] [stdout] 734fb1ef6dcd7e1de8ae3b514adee3dd5b0eb0e7e121a7ad42a60dd1653256c3
