[INFO] cloning repository https://github.com/jeremiah-crosby/wizard_conquest [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jeremiah-crosby/wizard_conquest" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjeremiah-crosby%2Fwizard_conquest", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjeremiah-crosby%2Fwizard_conquest'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 47f442a1db96a834027bee391ce8372621c6d871 [INFO] checking jeremiah-crosby/wizard_conquest against master#a609fb45efad59dfd459c76e50899be9f0583b5a for pr-80579 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjeremiah-crosby%2Fwizard_conquest" "/workspace/builds/worker-9/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-9/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/jeremiah-crosby/wizard_conquest on toolchain a609fb45efad59dfd459c76e50899be9f0583b5a [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/jeremiah-crosby/wizard_conquest [INFO] finished tweaking git repo https://github.com/jeremiah-crosby/wizard_conquest [INFO] tweaked toml for git repo https://github.com/jeremiah-crosby/wizard_conquest written to /workspace/builds/worker-9/source/Cargo.toml [INFO] crate git repo https://github.com/jeremiah-crosby/wizard_conquest already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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:b8eeb62f26c39b23691079a6cb6de528d8e88b4d71a8f6b1d30f8ba7d9c16de9" "/opt/rustwide/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "metadata" "--no-deps" "--format-version=1", 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] fd559b49de353b48c4cb8db07cb63a78a0d880c2b1e6d56e5436faf05e20139a [INFO] running `Command { std: "docker" "start" "-a" "fd559b49de353b48c4cb8db07cb63a78a0d880c2b1e6d56e5436faf05e20139a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "fd559b49de353b48c4cb8db07cb63a78a0d880c2b1e6d56e5436faf05e20139a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fd559b49de353b48c4cb8db07cb63a78a0d880c2b1e6d56e5436faf05e20139a", kill_on_drop: false }` [INFO] [stdout] fd559b49de353b48c4cb8db07cb63a78a0d880c2b1e6d56e5436faf05e20139a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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" "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:b8eeb62f26c39b23691079a6cb6de528d8e88b4d71a8f6b1d30f8ba7d9c16de9" "/opt/rustwide/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] fcbd33ba13a189403399c06aff5053e105fdd62febb77796b4f9c68f069ac2e2 [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" "fcbd33ba13a189403399c06aff5053e105fdd62febb77796b4f9c68f069ac2e2", kill_on_drop: false }` [INFO] [stderr] Compiling num-traits v0.2.5 [INFO] [stderr] Compiling siphasher v0.2.2 [INFO] [stderr] Checking lazy_static v1.0.2 [INFO] [stderr] Compiling libc v0.2.42 [INFO] [stderr] Checking cfg-if v0.1.4 [INFO] [stderr] Compiling dtoa v0.4.3 [INFO] [stderr] Compiling cc v1.0.18 [INFO] [stderr] Compiling unicode-xid v0.0.4 [INFO] [stderr] Compiling num-integer v0.1.39 [INFO] [stderr] Compiling quote v0.3.15 [INFO] [stderr] Compiling sdl2-sys v0.27.3 [INFO] [stderr] Compiling regex v1.0.2 [INFO] [stderr] Checking smallvec v0.4.5 [INFO] [stderr] Checking quick-error v1.2.2 [INFO] [stderr] Checking rustc-serialize v0.3.24 [INFO] [stderr] Checking itoa v0.3.4 [INFO] [stderr] Checking termcolor v1.0.1 [INFO] [stderr] Checking serde v0.9.15 [INFO] [stderr] Checking time v0.1.40 [INFO] [stderr] Checking memchr v2.0.1 [INFO] [stderr] Checking atty v0.2.11 [INFO] [stderr] Compiling xml-rs v0.3.6 [INFO] [stderr] Checking arrayvec v0.4.7 [INFO] [stderr] Compiling x11-dl v2.18.1 [INFO] [stderr] Checking regex-syntax v0.6.2 [INFO] [stderr] Checking arrayvec v0.3.25 [INFO] [stderr] Compiling log v0.4.3 [INFO] [stderr] Checking crossbeam-utils v0.2.2 [INFO] [stderr] Compiling synom v0.11.3 [INFO] [stderr] Checking shared_library v0.1.9 [INFO] [stderr] Checking rand v0.3.22 [INFO] [stderr] Compiling phf_shared v0.7.22 [INFO] [stderr] Checking humantime v1.1.1 [INFO] [stderr] Checking aho-corasick v0.6.6 [INFO] [stderr] Checking thread_local v0.3.5 [INFO] [stderr] Compiling rand v0.4.2 [INFO] [stderr] Checking pulse v0.5.3 [INFO] [stderr] Compiling log v0.3.9 [INFO] [stderr] Checking crossbeam-epoch v0.3.1 [INFO] [stderr] Checking tempfile v2.2.0 [INFO] [stderr] Checking osmesa-sys v0.1.2 [INFO] [stderr] Compiling syn v0.11.11 [INFO] [stderr] Checking fs2 v0.2.5 [INFO] [stderr] Compiling wayland-scanner v0.5.11 [INFO] [stderr] Compiling phf v0.7.22 [INFO] [stderr] Compiling gl_generator v0.5.5 [INFO] [stderr] Checking memmap v0.2.3 [INFO] [stderr] Checking crossbeam-deque v0.2.0 [INFO] [stderr] Checking rayon-core v1.4.1 [INFO] [stderr] Compiling phf_generator v0.7.22 [INFO] [stderr] Compiling num-traits v0.1.43 [INFO] [stderr] Compiling phf_codegen v0.7.22 [INFO] [stderr] Compiling serde_json v0.9.10 [INFO] [stderr] Compiling backtrace-sys v0.1.23 [INFO] [stderr] Compiling miniz-sys v0.1.10 [INFO] [stderr] Compiling target_build_utils v0.3.1 [INFO] [stderr] Compiling wayland-client v0.5.12 [INFO] [stderr] Checking rayon v0.8.2 [INFO] [stderr] Checking rayon v0.7.1 [INFO] [stderr] Checking num-iter v0.1.37 [INFO] [stderr] Checking toml v0.2.1 [INFO] [stderr] Checking num v0.1.42 [INFO] [stderr] Checking sdl2 v0.27.3 [INFO] [stderr] Compiling glutin v0.6.2 [INFO] [stderr] Compiling glium v0.15.0 [INFO] [stderr] Compiling serde_codegen_internals v0.14.2 [INFO] [stderr] Checking hibitset v0.1.3 [INFO] [stderr] Checking backtrace v0.2.3 [INFO] [stderr] Checking flate2 v1.0.1 [INFO] [stderr] Compiling shred-derive v0.3.0 [INFO] [stderr] Checking tiled v0.7.4 [INFO] [stderr] Compiling serde_derive v0.9.15 [INFO] [stderr] Checking env_logger v0.5.11 [INFO] [stderr] Checking shred v0.4.6 [INFO] [stderr] Checking specs v0.9.5 [INFO] [stderr] Compiling libloading v0.3.4 [INFO] [stderr] Checking dlib v0.3.1 [INFO] [stderr] Checking wayland-sys v0.5.11 [INFO] [stderr] Checking wayland-window v0.2.3 [INFO] [stderr] Checking wayland-kbd v0.3.6 [INFO] [stderr] Checking glium_sdl2 v0.13.0 [INFO] [stderr] Checking wizard_conquest v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/state/title.rs:79:43 [INFO] [stdout] | [INFO] [stdout] 79 | fn enter(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/state/title.rs:92:75 [INFO] [stdout] | [INFO] [stdout] 92 | fn update(&mut self) -> Result>, Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/state/overworld.rs:49:43 [INFO] [stdout] | [INFO] [stdout] 49 | fn enter(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/state/overworld.rs:58:75 [INFO] [stdout] | [INFO] [stdout] 58 | fn update(&mut self) -> Result>, Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/state/pause.rs:57:43 [INFO] [stdout] | [INFO] [stdout] 57 | fn enter(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/state/pause.rs:64:75 [INFO] [stdout] | [INFO] [stdout] 64 | fn update(&mut self) -> Result>, Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/state/mod.rs:16:14 [INFO] [stdout] | [INFO] [stdout] 16 | Push(Box + 'context>), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GameState<'context> + 'context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/state/mod.rs:18:21 [INFO] [stdout] | [INFO] [stdout] 18 | PopThenPush(Box + 'context>), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GameState<'context> + 'context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/state/mod.rs:21:43 [INFO] [stdout] | [INFO] [stdout] 21 | fn enter(&mut self) -> Result<(), Box>; [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/state/mod.rs:22:75 [INFO] [stdout] | [INFO] [stdout] 22 | fn update(&mut self) -> Result>, Box>; [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/systems/playing/input.rs:92:25 [INFO] [stdout] | [INFO] [stdout] 92 | ) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/systems/playing/camera.rs:35:25 [INFO] [stdout] | [INFO] [stdout] 35 | ) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/systems/playing/camera.rs:47:25 [INFO] [stdout] | [INFO] [stdout] 47 | ) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/systems/playing/render.rs:43:25 [INFO] [stdout] | [INFO] [stdout] 43 | ) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/systems/playing/render.rs:117:25 [INFO] [stdout] | [INFO] [stdout] 117 | ) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/gfx/resolution.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | (self.actual_width as f32 / self.virtual_width as f32) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/gfx/resolution.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | (self.actual_height as f32 / self.virtual_height as f32) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/gfx/window.rs:16:61 [INFO] [stdout] | [INFO] [stdout] 16 | pub fn new(sdl_context: &Sdl) -> Result> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/gfx/window.rs:44:56 [INFO] [stdout] | [INFO] [stdout] 44 | pub fn setup_viewport(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game/mod.rs:25:21 [INFO] [stdout] | [INFO] [stdout] 25 | states: Vec + 'ttf>>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GameState<'ttf> + 'ttf` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game/mod.rs:32:33 [INFO] [stdout] | [INFO] [stdout] 32 | ) -> Result, Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game/mod.rs:42:59 [INFO] [stdout] | [INFO] [stdout] 42 | pub fn load_title_screen(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game/mod.rs:49:52 [INFO] [stdout] | [INFO] [stdout] 49 | pub fn reset_game(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game/mod.rs:56:45 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn run(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game/mod.rs:62:46 [INFO] [stdout] | [INFO] [stdout] 62 | let mut transition_state: Option> = None; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GameState + 'ttf` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game/mod.rs:76:52 [INFO] [stdout] | [INFO] [stdout] 76 | let mut unwrapped_trans_state: Box + 'ttf> = transition_state [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GameState<'ttf> + 'ttf` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/serialization/entity_loader.rs:15:22 [INFO] [stdout] | [INFO] [stdout] 15 | reader: &mut io::Read, [INFO] [stdout] | ^^^^^^^^ help: use `dyn`: `dyn io::Read` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/state/title.rs:79:43 [INFO] [stdout] | [INFO] [stdout] 79 | fn enter(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/state/title.rs:92:75 [INFO] [stdout] | [INFO] [stdout] 92 | fn update(&mut self) -> Result>, Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/state/overworld.rs:49:43 [INFO] [stdout] | [INFO] [stdout] 49 | fn enter(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/state/overworld.rs:58:75 [INFO] [stdout] | [INFO] [stdout] 58 | fn update(&mut self) -> Result>, Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/state/pause.rs:57:43 [INFO] [stdout] | [INFO] [stdout] 57 | fn enter(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/state/pause.rs:64:75 [INFO] [stdout] | [INFO] [stdout] 64 | fn update(&mut self) -> Result>, Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/state/mod.rs:16:14 [INFO] [stdout] | [INFO] [stdout] 16 | Push(Box + 'context>), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GameState<'context> + 'context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/state/mod.rs:18:21 [INFO] [stdout] | [INFO] [stdout] 18 | PopThenPush(Box + 'context>), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GameState<'context> + 'context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/state/mod.rs:21:43 [INFO] [stdout] | [INFO] [stdout] 21 | fn enter(&mut self) -> Result<(), Box>; [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/state/mod.rs:22:75 [INFO] [stdout] | [INFO] [stdout] 22 | fn update(&mut self) -> Result>, Box>; [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/systems/playing/input.rs:92:25 [INFO] [stdout] | [INFO] [stdout] 92 | ) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/systems/playing/camera.rs:35:25 [INFO] [stdout] | [INFO] [stdout] 35 | ) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/systems/playing/camera.rs:47:25 [INFO] [stdout] | [INFO] [stdout] 47 | ) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/systems/playing/render.rs:43:25 [INFO] [stdout] | [INFO] [stdout] 43 | ) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/systems/playing/render.rs:117:25 [INFO] [stdout] | [INFO] [stdout] 117 | ) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/gfx/resolution.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | (self.actual_width as f32 / self.virtual_width as f32) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/gfx/resolution.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | (self.actual_height as f32 / self.virtual_height as f32) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/gfx/window.rs:16:61 [INFO] [stdout] | [INFO] [stdout] 16 | pub fn new(sdl_context: &Sdl) -> Result> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/gfx/window.rs:44:56 [INFO] [stdout] | [INFO] [stdout] 44 | pub fn setup_viewport(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game/mod.rs:25:21 [INFO] [stdout] | [INFO] [stdout] 25 | states: Vec + 'ttf>>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GameState<'ttf> + 'ttf` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game/mod.rs:32:33 [INFO] [stdout] | [INFO] [stdout] 32 | ) -> Result, Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game/mod.rs:42:59 [INFO] [stdout] | [INFO] [stdout] 42 | pub fn load_title_screen(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game/mod.rs:49:52 [INFO] [stdout] | [INFO] [stdout] 49 | pub fn reset_game(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game/mod.rs:56:45 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn run(&mut self) -> Result<(), Box> { [INFO] [stdout] | ^^^^^ help: use `dyn`: `dyn Error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game/mod.rs:62:46 [INFO] [stdout] | [INFO] [stdout] 62 | let mut transition_state: Option> = None; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GameState + 'ttf` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/game/mod.rs:76:52 [INFO] [stdout] | [INFO] [stdout] 76 | let mut unwrapped_trans_state: Box + 'ttf> = transition_state [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn GameState<'ttf> + 'ttf` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/serialization/entity_loader.rs:15:22 [INFO] [stdout] | [INFO] [stdout] 15 | reader: &mut io::Read, [INFO] [stdout] | ^^^^^^^^ help: use `dyn`: `dyn io::Read` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/resource.rs:54:47 [INFO] [stdout] | [INFO] [stdout] 54 | ResourceError::Io(ref err) => err.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/resource.rs:55:60 [INFO] [stdout] | [INFO] [stdout] 55 | ResourceError::Deserialization(ref err) => err.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/serialization/mod.rs:47:65 [INFO] [stdout] | [INFO] [stdout] 47 | SerializationError::Deserialize(ref error) => error.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/serialization/mod.rs:49:56 [INFO] [stdout] | [INFO] [stdout] 49 | SerializationError::Io(ref error) => error.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/level.rs:44:48 [INFO] [stdout] | [INFO] [stdout] 44 | LevelError::Io(ref error) => error.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/level.rs:45:51 [INFO] [stdout] | [INFO] [stdout] 45 | LevelError::Tiled(ref error) => error.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/level.rs:46:54 [INFO] [stdout] | [INFO] [stdout] 46 | LevelError::Resource(ref error) => error.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/resource.rs:54:47 [INFO] [stdout] | [INFO] [stdout] 54 | ResourceError::Io(ref err) => err.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/resource.rs:55:60 [INFO] [stdout] | [INFO] [stdout] 55 | ResourceError::Deserialization(ref err) => err.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/serialization/mod.rs:47:65 [INFO] [stdout] | [INFO] [stdout] 47 | SerializationError::Deserialize(ref error) => error.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/serialization/mod.rs:49:56 [INFO] [stdout] | [INFO] [stdout] 49 | SerializationError::Io(ref error) => error.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/level.rs:44:48 [INFO] [stdout] | [INFO] [stdout] 44 | LevelError::Io(ref error) => error.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/level.rs:45:51 [INFO] [stdout] | [INFO] [stdout] 45 | LevelError::Tiled(ref error) => error.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/level.rs:46:54 [INFO] [stdout] | [INFO] [stdout] 46 | LevelError::Resource(ref error) => error.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/systems/playing/render.rs:85:25 [INFO] [stdout] | [INFO] [stdout] 85 | let mut renderer = window.renderer_mut(); [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/systems/playing/render.rs:131:21 [INFO] [stdout] | [INFO] [stdout] 131 | let mut renderer = window.renderer_mut(); [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/systems/common/menu.rs:44:21 [INFO] [stdout] | [INFO] [stdout] 44 | let mut renderer = window.renderer_mut(); [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/systems/common/render.rs:35:21 [INFO] [stdout] | [INFO] [stdout] 35 | let mut renderer = window.renderer_mut(); [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/systems/common/render.rs:74:17 [INFO] [stdout] | [INFO] [stdout] 74 | let mut renderer = window.renderer_mut(); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `proc_macro` has been stable since 1.29.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/main.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | #![feature(proc_macro)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(stable_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/systems/playing/render.rs:85:25 [INFO] [stdout] | [INFO] [stdout] 85 | let mut renderer = window.renderer_mut(); [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/systems/playing/render.rs:131:21 [INFO] [stdout] | [INFO] [stdout] 131 | let mut renderer = window.renderer_mut(); [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/systems/common/menu.rs:44:21 [INFO] [stdout] | [INFO] [stdout] 44 | let mut renderer = window.renderer_mut(); [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/systems/common/render.rs:35:21 [INFO] [stdout] | [INFO] [stdout] 35 | let mut renderer = window.renderer_mut(); [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/systems/common/render.rs:74:17 [INFO] [stdout] | [INFO] [stdout] 74 | let mut renderer = window.renderer_mut(); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 40 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `proc_macro` has been stable since 1.29.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/main.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | #![feature(proc_macro)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(stable_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 40 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1m 36s [INFO] running `Command { std: "docker" "inspect" "fcbd33ba13a189403399c06aff5053e105fdd62febb77796b4f9c68f069ac2e2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fcbd33ba13a189403399c06aff5053e105fdd62febb77796b4f9c68f069ac2e2", kill_on_drop: false }` [INFO] [stdout] fcbd33ba13a189403399c06aff5053e105fdd62febb77796b4f9c68f069ac2e2