[INFO] cloning repository https://github.com/sinesc/spacegame
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/sinesc/spacegame" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsinesc%2Fspacegame", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsinesc%2Fspacegame'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] ceadb3ba604624d9873c0facaef2aed50c9282e3
[INFO] checking sinesc/spacegame against master#5518eaa946291f00471af8b254b2a1715f234882 for pr-120393
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsinesc%2Fspacegame" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/sinesc/spacegame on toolchain 5518eaa946291f00471af8b254b2a1715f234882
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/sinesc/spacegame
[INFO] finished tweaking git repo https://github.com/sinesc/spacegame
[INFO] tweaked toml for git repo https://github.com/sinesc/spacegame written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/sinesc/spacegame already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded serde_yaml v0.7.4
[INFO] [stderr]   Downloaded palette v0.3.0
[INFO] [stderr]   Downloaded glium v0.21.0
[INFO] [stderr]   Downloaded servo-freetype-sys v4.0.3
[INFO] [stderr]   Downloaded font-loader v0.6.0
[INFO] [stderr]   Downloaded specs v0.11.2
[INFO] [stderr]   Downloaded coreaudio-sys v0.2.1
[INFO] [stderr]   Downloaded cmake v0.1.31
[INFO] [stderr]   Downloaded radiant-utils v0.2.2
[INFO] [stderr]   Downloaded core-text v9.2.0
[INFO] [stderr]   Downloaded servo-fontconfig-sys v4.0.4
[INFO] [stderr]   Downloaded yaml-merge-keys v0.2.1
[INFO] [stderr]   Downloaded gleam v0.5.1
[INFO] [stderr]   Downloaded avec v0.1.0
[INFO] [stderr]   Downloaded x11-dl v2.18.0
[INFO] [stderr]   Downloaded expat-sys v2.1.5
[INFO] [stderr]   Downloaded radiant-rs v0.12.6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 85d725263eeb457fed2d8dacfa46caefedb0471c226bd0e574edb42b70aa8535
[INFO] running `Command { std: "docker" "start" "-a" "85d725263eeb457fed2d8dacfa46caefedb0471c226bd0e574edb42b70aa8535", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "85d725263eeb457fed2d8dacfa46caefedb0471c226bd0e574edb42b70aa8535", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "85d725263eeb457fed2d8dacfa46caefedb0471c226bd0e574edb42b70aa8535", kill_on_drop: false }`
[INFO] [stdout] 85d725263eeb457fed2d8dacfa46caefedb0471c226bd0e574edb42b70aa8535
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fe073a1891d7465f83b432b6103af9716591be79f49ead70ff037f4ba0c141ff
[INFO] running `Command { std: "docker" "start" "-a" "fe073a1891d7465f83b432b6103af9716591be79f49ead70ff037f4ba0c141ff", kill_on_drop: false }`
[INFO] [stderr]     Checking libc v0.2.42
[INFO] [stderr]    Compiling cc v1.0.17
[INFO] [stderr]     Checking lazy_static v1.0.1
[INFO] [stderr]    Compiling pkg-config v0.3.11
[INFO] [stderr]    Compiling bitflags v1.0.3
[INFO] [stderr]    Compiling num-traits v0.2.4
[INFO] [stderr]     Checking cfg-if v0.1.3
[INFO] [stderr]     Checking byteorder v1.2.3
[INFO] [stderr]    Compiling xml-rs v0.7.0
[INFO] [stderr]     Checking nodrop v0.1.12
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]     Checking arrayvec v0.4.7
[INFO] [stderr]     Checking crossbeam-utils v0.2.2
[INFO] [stderr]    Compiling khronos_api v2.2.0
[INFO] [stderr]     Checking scopeguard v0.3.3
[INFO] [stderr]     Checking memoffset v0.2.1
[INFO] [stderr]    Compiling cmake v0.1.31
[INFO] [stderr]     Checking crossbeam-epoch v0.3.1
[INFO] [stderr]     Checking rand v0.4.2
[INFO] [stderr]    Compiling rayon-core v1.4.0
[INFO] [stderr]     Checking either v1.5.0
[INFO] [stderr]     Checking crossbeam-deque v0.2.0
[INFO] [stderr]    Compiling wayland-scanner v0.12.5
[INFO] [stderr]    Compiling log v0.4.2
[INFO] [stderr]     Checking num_cpus v1.8.0
[INFO] [stderr]     Checking token_store v0.1.2
[INFO] [stderr]    Compiling gl_generator v0.9.0
[INFO] [stderr]    Compiling num-integer v0.1.38
[INFO] [stderr]    Compiling libloading v0.5.0
[INFO] [stderr]    Compiling backtrace-sys v0.1.23
[INFO] [stderr]    Compiling expat-sys v2.1.5
[INFO] [stderr]    Compiling wayland-client v0.12.5
[INFO] [stderr]    Compiling wayland-protocols v0.12.5
[INFO] [stderr]    Compiling servo-freetype-sys v4.0.3
[INFO] [stderr]    Compiling siphasher v0.2.2
[INFO] [stderr]     Checking void v1.0.2
[INFO] [stderr]     Checking smallvec v0.6.1
[INFO] [stderr]    Compiling phf_shared v0.7.22
[INFO] [stderr]     Checking dlib v0.4.1
[INFO] [stderr]     Checking wayland-sys v0.12.5
[INFO] [stderr]     Checking rayon v1.0.1
[INFO] [stderr]     Checking num-traits v0.1.43
[INFO] [stderr]    Compiling x11-dl v2.18.0
[INFO] [stderr]     Checking memmap v0.6.2
[INFO] [stderr]    Compiling proc-macro2 v0.4.6
[INFO] [stderr]     Checking remove_dir_all v0.5.1
[INFO] [stderr]    Compiling unicode-xid v0.0.4
[INFO] [stderr]     Checking tempfile v3.0.2
[INFO] [stderr]    Compiling quote v0.6.3
[INFO] [stderr]    Compiling servo-fontconfig-sys v4.0.4
[INFO] [stderr]     Checking adler32 v1.0.2
[INFO] [stderr]    Compiling phf_generator v0.7.22
[INFO] [stderr]    Compiling serde v1.0.66
[INFO] [stderr]    Compiling num-iter v0.1.37
[INFO] [stderr]     Checking linked-hash-map v0.5.1
[INFO] [stderr]    Compiling quote v0.3.15
[INFO] [stderr]     Checking approx v0.1.1
[INFO] [stderr]     Checking rustc-demangle v0.1.8
[INFO] [stderr]    Compiling phf_codegen v0.7.22
[INFO] [stderr]    Compiling syn v0.14.2
[INFO] [stderr]    Compiling glutin v0.14.0
[INFO] [stderr]     Checking shared_library v0.1.8
[INFO] [stderr]     Checking fnv v1.0.6
[INFO] [stderr]     Checking percent-encoding v1.0.1
[INFO] [stderr]     Checking osmesa-sys v0.1.2
[INFO] [stderr]    Compiling palette v0.3.0
[INFO] [stderr]     Checking wayland-kbd v0.13.1
[INFO] [stderr]     Checking backtrace v0.3.8
[INFO] [stderr]     Checking inflate v0.4.2
[INFO] [stderr]     Checking deflate v0.7.18
[INFO] [stderr]    Compiling glium v0.21.0
[INFO] [stderr]     Checking unreachable v0.1.1
[INFO] [stderr]     Checking unreachable v1.0.0
[INFO] [stderr]    Compiling alsa-sys v0.1.2
[INFO] [stderr]     Checking memchr v2.0.1
[INFO] [stderr]     Checking lzw v0.10.0
[INFO] [stderr]     Checking stable_deref_trait v1.0.0
[INFO] [stderr]     Checking color_quant v1.0.0
[INFO] [stderr]    Compiling regex v1.0.0
[INFO] [stderr]     Checking ucd-util v0.1.1
[INFO] [stderr]     Checking regex-syntax v0.6.0
[INFO] [stderr]     Checking gif v0.10.0
[INFO] [stderr]     Checking owning_ref v0.3.3
[INFO] [stderr]    Compiling itertools v0.5.10
[INFO] [stderr]     Checking png v0.12.0
[INFO] [stderr]     Checking aho-corasick v0.6.4
[INFO] [stderr]    Compiling num-derive v0.2.2
[INFO] [stderr]     Checking wayland-window v0.13.3
[INFO] [stderr]     Checking thread_local v0.3.5
[INFO] [stderr]     Checking ordered-float v0.5.0
[INFO] [stderr]     Checking servo-fontconfig v0.4.0
[INFO] [stderr]     Checking phf v0.7.22
[INFO] [stderr]     Checking winit v0.12.0
[INFO] [stderr]     Checking jpeg-decoder v0.1.14
[INFO] [stderr]    Compiling syn v0.10.8
[INFO] [stderr]     Checking num-rational v0.1.42
[INFO] [stderr]    Compiling synom v0.11.3
[INFO] [stderr]     Checking parking_lot_core v0.2.14
[INFO] [stderr]     Checking stb_truetype v0.2.2
[INFO] [stderr]    Compiling proc-macro2 v0.2.3
[INFO] [stderr]     Checking utf8-ranges v1.0.0
[INFO] [stderr]     Checking scoped_threadpool v0.1.9
[INFO] [stderr]     Checking lazy_static v0.2.11
[INFO] [stderr]     Checking image v0.19.0
[INFO] [stderr]     Checking rusttype v0.5.2
[INFO] [stderr]    Compiling quote v0.4.2
[INFO] [stderr]     Checking parking_lot v0.5.5
[INFO] [stderr]    Compiling syn v0.11.11
[INFO] [stderr]     Checking font-loader v0.6.0
[INFO] [stderr]    Compiling serde_derive v1.0.66
[INFO] [stderr]     Checking yaml-rust v0.4.0
[INFO] [stderr]     Checking enum_primitive v0.1.1
[INFO] [stderr]     Checking rand v0.3.22
[INFO] [stderr]     Checking ogg v0.4.1
[INFO] [stderr]     Checking fxhash v0.2.1
[INFO] [stderr]     Checking dtoa v0.4.2
[INFO] [stderr]     Checking atom v0.3.5
[INFO] [stderr]     Checking mopa v0.2.2
[INFO] [stderr]     Checking unicode-normalization v0.1.7
[INFO] [stderr]     Checking avec v0.1.0
[INFO] [stderr]     Checking serde_yaml v0.7.4
[INFO] [stderr]     Checking shred v0.7.0
[INFO] [stderr]     Checking hibitset v0.5.0
[INFO] [stderr]    Compiling shred-derive v0.5.0
[INFO] [stderr]     Checking lewton v0.5.2
[INFO] [stderr]     Checking cgmath v0.14.1
[INFO] [stderr]     Checking cpal v0.8.1
[INFO] [stderr]    Compiling derivative v1.0.0
[INFO] [stderr]    Compiling syn v0.12.15
[INFO] [stderr]     Checking error-chain v0.10.0
[INFO] [stderr]     Checking itertools v0.7.8
[INFO] [stderr]     Checking tuple_utils v0.2.0
[INFO] [stderr]     Checking claxon v0.3.1
[INFO] [stderr]     Checking yaml-rust v0.3.5
[INFO] [stderr]     Checking crossbeam v0.3.2
[INFO] [stderr]     Checking hound v3.4.0
[INFO] [stderr]     Checking unicode-segmentation v1.2.1
[INFO] [stderr]     Checking yaml-merge-keys v0.2.1
[INFO] [stderr]     Checking rodio v0.7.0
[INFO] [stderr]     Checking shrev v1.0.1
[INFO] [stderr]     Checking specs v0.11.2
[INFO] [stderr]    Compiling specs-derive v0.2.0
[INFO] [stderr]     Checking radiant-rs v0.12.6
[INFO] [stderr]     Checking radiant-utils v0.2.2
[INFO] [stderr]     Checking spacegame v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `cmp`, `collections`, `process`
[INFO] [stdout]  --> src/prelude.rs:1:19
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub use std::{fs, cmp, path, collections, io, process, fmt, error};
[INFO] [stdout]   |                   ^^^        ^^^^^^^^^^^      ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `radiant_utils::maths as rm`
[INFO] [stdout]   --> src/prelude.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use radiant_utils::maths as rm;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `radiant_utils::util as ru`
[INFO] [stdout]   --> src/prelude.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use radiant_utils::util as ru;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `cmp`, `collections`, `process`
[INFO] [stdout]  --> src/prelude.rs:1:19
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub use std::{fs, cmp, path, collections, io, process, fmt, error};
[INFO] [stdout]   |                   ^^^        ^^^^^^^^^^^      ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `radiant_utils::maths as rm`
[INFO] [stdout]   --> src/prelude.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use radiant_utils::maths as rm;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `radiant_utils::util as ru`
[INFO] [stdout]   --> src/prelude.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use radiant_utils::util as ru;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/def/mod.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | / lazy_static! {
[INFO] [stdout] 22 | |     static ref MERGE_KEY: serde_yaml::Value = serde_yaml::Value::String("<<<".to_string());
[INFO] [stdout] 23 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/def/mod.rs:28:23
[INFO] [stdout]    |
[INFO] [stdout] 28 |     cause: Option<Box<error::Error>>,
[INFO] [stdout]    |                       ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 28 |     cause: Option<Box<dyn error::Error>>,
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/cmd.rs:55:27
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub type Handler<T> = Box<Fn(&Cmd<T>, &[Param])>;
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub type Handler<T> = Box<dyn Fn(&Cmd<T>, &[Param])>;
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/def/mod.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | / lazy_static! {
[INFO] [stdout] 22 | |     static ref MERGE_KEY: serde_yaml::Value = serde_yaml::Value::String("<<<".to_string());
[INFO] [stdout] 23 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/def/mod.rs:47:38
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn cause(self: &Self) -> Option<&error::Error> {
[INFO] [stdout]    |                                      ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn cause(self: &Self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/def/mod.rs:28:23
[INFO] [stdout]    |
[INFO] [stdout] 28 |     cause: Option<Box<error::Error>>,
[INFO] [stdout]    |                       ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 28 |     cause: Option<Box<dyn error::Error>>,
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/cmd.rs:55:27
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub type Handler<T> = Box<Fn(&Cmd<T>, &[Param])>;
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub type Handler<T> = Box<dyn Fn(&Cmd<T>, &[Param])>;
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/def/mod.rs:47:38
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn cause(self: &Self) -> Option<&error::Error> {
[INFO] [stdout]    |                                      ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn cause(self: &Self) -> Option<&dyn error::Error> {
[INFO] [stdout]    |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/cmd.rs:37:33
[INFO] [stdout]    |
[INFO] [stdout] 37 |         write!(f, "{} {}", self.description(), match self {
[INFO] [stdout]    |                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/cmd.rs:37:33
[INFO] [stdout]    |
[INFO] [stdout] 37 |         write!(f, "{} {}", self.description(), match self {
[INFO] [stdout]    |                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/level/system/inertia.rs:48:21
[INFO] [stdout]    |
[INFO] [stdout] 48 |                 let mut av_current = (target_angle - old_angle).to_radians();
[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: variable does not need to be mutable
[INFO] [stdout]   --> src/level/system/inertia.rs:94:21
[INFO] [stdout]    |
[INFO] [stdout] 94 |                 let mut av_current = (target_angle - old_angle).to_radians();
[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/level/system/inertia.rs:48:21
[INFO] [stdout]    |
[INFO] [stdout] 48 |                 let mut av_current = (target_angle - old_angle).to_radians();
[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: variable does not need to be mutable
[INFO] [stdout]   --> src/level/system/inertia.rs:94:21
[INFO] [stdout]    |
[INFO] [stdout] 94 |                 let mut av_current = (target_angle - old_angle).to_radians();
[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/level/system/compute.rs:65:17
[INFO] [stdout]    |
[INFO] [stdout] 65 |             let mut a1 = Angle::from(target_pos - spatial.position);
[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/level/system/compute.rs:65:17
[INFO] [stdout]    |
[INFO] [stdout] 65 |             let mut a1 = Angle::from(target_pos - spatial.position);
[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/level/mod.rs:104:17
[INFO] [stdout]     |
[INFO] [stdout] 104 |             let mut layer = Layer::new((info.scale * 1920., info.scale * 1080.)).arc();
[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/level/mod.rs:104:17
[INFO] [stdout]     |
[INFO] [stdout] 104 |             let mut layer = Layer::new((info.scale * 1920., info.scale * 1080.)).arc();
[INFO] [stdout]     |                 ----^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `sprite` is never read
[INFO] [stdout]   --> src/level/mod.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct Infrastructure {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 19 |     sprite      : Repository<Arc<Sprite>>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `spawn_lazy` is never used
[INFO] [stdout]   --> src/level/mod.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl WorldState {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] 36 |     // TODO: not really nice to have these on worldstate. they are only here because they require "age", which is available on worldstate
[INFO] [stdout] 37 |     pub fn spawn_lazy(self: &Self, lazy: &LazyUpdate, entities: &EntitiesRes, name: &str, position: Option<Vec2>, angle: Option<Angle>, f...
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 14 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `sprite` is never read
[INFO] [stdout]   --> src/level/mod.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct Infrastructure {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 19 |     sprite      : Repository<Arc<Sprite>>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `spawn_lazy` is never used
[INFO] [stdout]   --> src/level/mod.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl WorldState {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] 36 |     // TODO: not really nice to have these on worldstate. they are only here because they require "age", which is available on worldstate
[INFO] [stdout] 37 |     pub fn spawn_lazy(self: &Self, lazy: &LazyUpdate, entities: &EntitiesRes, name: &str, position: Option<Vec2>, angle: Option<Angle>, f...
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 14 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [optimized + debuginfo] target(s) in 11.68s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: syn v0.10.8, syn v0.12.15, syn v0.14.2
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "fe073a1891d7465f83b432b6103af9716591be79f49ead70ff037f4ba0c141ff", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fe073a1891d7465f83b432b6103af9716591be79f49ead70ff037f4ba0c141ff", kill_on_drop: false }`
[INFO] [stdout] fe073a1891d7465f83b432b6103af9716591be79f49ead70ff037f4ba0c141ff
