[INFO] cloning repository https://github.com/rightfold/graveyard [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/rightfold/graveyard" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frightfold%2Fgraveyard", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frightfold%2Fgraveyard'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 9e8040f2f41ab661d912dd29deec416a83b4bb41 [INFO] checking rightfold/graveyard against master#5518eaa946291f00471af8b254b2a1715f234882 for pr-120393 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frightfold%2Fgraveyard" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/rightfold/graveyard 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/rightfold/graveyard [INFO] finished tweaking git repo https://github.com/rightfold/graveyard [INFO] tweaked toml for git repo https://github.com/rightfold/graveyard written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/rightfold/graveyard 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 bear-lib-terminal v1.3.3 [INFO] [stderr] Downloaded bear-lib-terminal-sys v1.2.2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 0b0cf7a44f9363ce1b24c97208de7ac4ed760a708e2ee037a1b9fcdbcb87fc02 [INFO] running `Command { std: "docker" "start" "-a" "0b0cf7a44f9363ce1b24c97208de7ac4ed760a708e2ee037a1b9fcdbcb87fc02", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "0b0cf7a44f9363ce1b24c97208de7ac4ed760a708e2ee037a1b9fcdbcb87fc02", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0b0cf7a44f9363ce1b24c97208de7ac4ed760a708e2ee037a1b9fcdbcb87fc02", kill_on_drop: false }` [INFO] [stdout] 0b0cf7a44f9363ce1b24c97208de7ac4ed760a708e2ee037a1b9fcdbcb87fc02 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e79ac7f94783caa2d4fd72d811cee5d5a26a6d4c62b5c5a04a3937957f128d91 [INFO] running `Command { std: "docker" "start" "-a" "e79ac7f94783caa2d4fd72d811cee5d5a26a6d4c62b5c5a04a3937957f128d91", kill_on_drop: false }` [INFO] [stderr] Compiling unicode-xid v0.0.4 [INFO] [stderr] Checking libc v0.2.34 [INFO] [stderr] Compiling quote v0.3.15 [INFO] [stderr] Checking serde v1.0.23 [INFO] [stderr] Checking byteorder v1.2.1 [INFO] [stderr] Compiling synom v0.11.3 [INFO] [stderr] Compiling syn v0.11.11 [INFO] [stderr] Checking bear-lib-terminal-sys v1.2.2 [INFO] [stderr] Checking rand v0.3.18 [INFO] [stderr] Checking bear-lib-terminal v1.3.3 [INFO] [stderr] Compiling serde_derive_internals v0.17.0 [INFO] [stderr] Compiling serde_derive v1.0.23 [INFO] [stderr] Checking bincode v0.9.2 [INFO] [stderr] Checking graveyard v0.0.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/game/server/maze.rs:8:28 [INFO] [stdout] | [INFO] [stdout] 8 | fn set_wall(&mut self, Direction); [INFO] [stdout] | ^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Direction` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] = note: `#[warn(anonymous_parameters)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/infra/client/log.rs:9:25 [INFO] [stdout] | [INFO] [stdout] 9 | fn color(&mut self, Color, Color); [INFO] [stdout] | ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Color` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/infra/client/log.rs:9:32 [INFO] [stdout] | [INFO] [stdout] 9 | fn color(&mut self, Color, Color); [INFO] [stdout] | ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Color` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/infra/client/log.rs:10:25 [INFO] [stdout] | [INFO] [stdout] 10 | fn write(&mut self, &str); [INFO] [stdout] | ^^^^ help: try naming the parameter or explicitly ignoring it: `_: &str` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/game/server/maze.rs:8:28 [INFO] [stdout] | [INFO] [stdout] 8 | fn set_wall(&mut self, Direction); [INFO] [stdout] | ^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Direction` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] = note: `#[warn(anonymous_parameters)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/infra/client/log.rs:9:25 [INFO] [stdout] | [INFO] [stdout] 9 | fn color(&mut self, Color, Color); [INFO] [stdout] | ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Color` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/infra/client/log.rs:9:32 [INFO] [stdout] | [INFO] [stdout] 9 | fn color(&mut self, Color, Color); [INFO] [stdout] | ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Color` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/infra/client/log.rs:10:25 [INFO] [stdout] | [INFO] [stdout] 10 | fn write(&mut self, &str); [INFO] [stdout] | ^^^^ help: try naming the parameter or explicitly ignoring it: `_: &str` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over an `Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/game/server/maze.rs:58:29 [INFO] [stdout] | [INFO] [stdout] 58 | for cell in matrix.get_mut(wall_c as usize + 0, wall_d as usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(for_loops_over_fallibles)]` on by default [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 58 | while let Some(cell) = matrix.get_mut(wall_c as usize + 0, wall_d as usize) { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 58 | if let Some(cell) = matrix.get_mut(wall_c as usize + 0, wall_d as usize) { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over an `Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/game/server/maze.rs:61:29 [INFO] [stdout] | [INFO] [stdout] 61 | for cell in matrix.get_mut(wall_c as usize + 1, wall_d as usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 61 | while let Some(cell) = matrix.get_mut(wall_c as usize + 1, wall_d as usize) { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 61 | if let Some(cell) = matrix.get_mut(wall_c as usize + 1, wall_d as usize) { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over an `Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/game/server/maze.rs:65:29 [INFO] [stdout] | [INFO] [stdout] 65 | for cell in matrix.get_mut(wall_d as usize + 0, wall_c as usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 65 | while let Some(cell) = matrix.get_mut(wall_d as usize + 0, wall_c as usize) { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 65 | if let Some(cell) = matrix.get_mut(wall_d as usize + 0, wall_c as usize) { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over an `Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/game/server/maze.rs:68:29 [INFO] [stdout] | [INFO] [stdout] 68 | for cell in matrix.get_mut(wall_d as usize + 1, wall_c as usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 68 | while let Some(cell) = matrix.get_mut(wall_d as usize + 1, wall_c as usize) { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 68 | if let Some(cell) = matrix.get_mut(wall_d as usize + 1, wall_c as usize) { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over an `Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/game/server/maze.rs:58:29 [INFO] [stdout] | [INFO] [stdout] 58 | for cell in matrix.get_mut(wall_c as usize + 0, wall_d as usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(for_loops_over_fallibles)]` on by default [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 58 | while let Some(cell) = matrix.get_mut(wall_c as usize + 0, wall_d as usize) { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 58 | if let Some(cell) = matrix.get_mut(wall_c as usize + 0, wall_d as usize) { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over an `Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/game/server/maze.rs:61:29 [INFO] [stdout] | [INFO] [stdout] 61 | for cell in matrix.get_mut(wall_c as usize + 1, wall_d as usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 61 | while let Some(cell) = matrix.get_mut(wall_c as usize + 1, wall_d as usize) { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 61 | if let Some(cell) = matrix.get_mut(wall_c as usize + 1, wall_d as usize) { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over an `Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/game/server/maze.rs:65:29 [INFO] [stdout] | [INFO] [stdout] 65 | for cell in matrix.get_mut(wall_d as usize + 0, wall_c as usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 65 | while let Some(cell) = matrix.get_mut(wall_d as usize + 0, wall_c as usize) { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 65 | if let Some(cell) = matrix.get_mut(wall_d as usize + 0, wall_c as usize) { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over an `Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/game/server/maze.rs:68:29 [INFO] [stdout] | [INFO] [stdout] 68 | for cell in matrix.get_mut(wall_d as usize + 1, wall_c as usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 68 | while let Some(cell) = matrix.get_mut(wall_d as usize + 1, wall_c as usize) { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 68 | if let Some(cell) = matrix.get_mut(wall_d as usize + 1, wall_c as usize) { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 8 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 8 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1.97s [INFO] running `Command { std: "docker" "inspect" "e79ac7f94783caa2d4fd72d811cee5d5a26a6d4c62b5c5a04a3937957f128d91", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e79ac7f94783caa2d4fd72d811cee5d5a26a6d4c62b5c5a04a3937957f128d91", kill_on_drop: false }` [INFO] [stdout] e79ac7f94783caa2d4fd72d811cee5d5a26a6d4c62b5c5a04a3937957f128d91