[INFO] cloning repository https://github.com/carlos1798/2048-in-rust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/carlos1798/2048-in-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcarlos1798%2F2048-in-rust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcarlos1798%2F2048-in-rust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 1d5920b81ec7833248b965b2a0f15e8329c9b7fc [INFO] checking carlos1798/2048-in-rust against master#385fa9d845dd326c6bbfd58c22244215e431948a for absurd-question-mark-desugar [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcarlos1798%2F2048-in-rust" "/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/carlos1798/2048-in-rust on toolchain 385fa9d845dd326c6bbfd58c22244215e431948a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/carlos1798/2048-in-rust [INFO] finished tweaking git repo https://github.com/carlos1798/2048-in-rust [INFO] tweaked toml for git repo https://github.com/carlos1798/2048-in-rust written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/carlos1798/2048-in-rust 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" "+385fa9d845dd326c6bbfd58c22244215e431948a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [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" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a0eec34d41499a6488deff427fc0657eb993bf356275c2ee24e633634372ab22 [INFO] running `Command { std: "docker" "start" "-a" "a0eec34d41499a6488deff427fc0657eb993bf356275c2ee24e633634372ab22", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a0eec34d41499a6488deff427fc0657eb993bf356275c2ee24e633634372ab22", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a0eec34d41499a6488deff427fc0657eb993bf356275c2ee24e633634372ab22", kill_on_drop: false }` [INFO] [stdout] a0eec34d41499a6488deff427fc0657eb993bf356275c2ee24e633634372ab22 [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" "+385fa9d845dd326c6bbfd58c22244215e431948a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 7a157cc278eb6b4752aae41a2d75fbebc8392f270575735c938b1141b3900c4f [INFO] running `Command { std: "docker" "start" "-a" "7a157cc278eb6b4752aae41a2d75fbebc8392f270575735c938b1141b3900c4f", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.139 [INFO] [stderr] Compiling log v0.4.17 [INFO] [stderr] Compiling parking_lot_core v0.9.6 [INFO] [stderr] Checking smallvec v1.10.0 [INFO] [stderr] Compiling lock_api v0.4.9 [INFO] [stderr] Checking unicode-segmentation v1.10.0 [INFO] [stderr] Checking cassowary v0.3.0 [INFO] [stderr] Checking signal-hook-registry v1.4.0 [INFO] [stderr] Checking getrandom v0.2.8 [INFO] [stderr] Checking mio v0.8.5 [INFO] [stderr] Checking signal-hook v0.3.14 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking parking_lot v0.12.1 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking signal-hook-mio v0.2.3 [INFO] [stderr] Checking crossterm v0.25.0 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking tui v0.19.0 [INFO] [stderr] Checking dosmilochenta v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `Text` [INFO] [stdout] --> src/main.rs:13:23 [INFO] [stdout] | [INFO] [stdout] 13 | use tui::text::{Span, Text}; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Canvas`, `Line`, `MapResolution`, `Map`, `Rectangle`, `self` [INFO] [stdout] --> src/main.rs:14:28 [INFO] [stdout] | [INFO] [stdout] 14 | use tui::widgets::canvas::{self, Canvas, Line, Map, MapResolution, Rectangle}; [INFO] [stdout] | ^^^^ ^^^^^^ ^^^^ ^^^ ^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BorderType`, `Paragraph`, `Widget` [INFO] [stdout] --> src/main.rs:15:27 [INFO] [stdout] | [INFO] [stdout] 15 | use tui::widgets::{Block, BorderType, Borders, Paragraph, Widget}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/main.rs:300:55 [INFO] [stdout] | [INFO] [stdout] 300 | .style(Style::default().bg(Color::Rgb((20), (20), (1)))); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 300 - .style(Style::default().bg(Color::Rgb((20), (20), (1)))); [INFO] [stdout] 300 + .style(Style::default().bg(Color::Rgb(20, (20), (1)))); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/main.rs:300:61 [INFO] [stdout] | [INFO] [stdout] 300 | .style(Style::default().bg(Color::Rgb((20), (20), (1)))); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 300 - .style(Style::default().bg(Color::Rgb((20), (20), (1)))); [INFO] [stdout] 300 + .style(Style::default().bg(Color::Rgb((20), 20, (1)))); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/main.rs:300:67 [INFO] [stdout] | [INFO] [stdout] 300 | .style(Style::default().bg(Color::Rgb((20), (20), (1)))); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 300 - .style(Style::default().bg(Color::Rgb((20), (20), (1)))); [INFO] [stdout] 300 + .style(Style::default().bg(Color::Rgb((20), (20), 1))); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Text` [INFO] [stdout] --> src/main.rs:13:23 [INFO] [stdout] | [INFO] [stdout] 13 | use tui::text::{Span, Text}; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Canvas`, `Line`, `MapResolution`, `Map`, `Rectangle`, `self` [INFO] [stdout] --> src/main.rs:14:28 [INFO] [stdout] | [INFO] [stdout] 14 | use tui::widgets::canvas::{self, Canvas, Line, Map, MapResolution, Rectangle}; [INFO] [stdout] | ^^^^ ^^^^^^ ^^^^ ^^^ ^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BorderType`, `Paragraph`, `Widget` [INFO] [stdout] --> src/main.rs:15:27 [INFO] [stdout] | [INFO] [stdout] 15 | use tui::widgets::{Block, BorderType, Borders, Paragraph, Widget}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/main.rs:300:55 [INFO] [stdout] | [INFO] [stdout] 300 | .style(Style::default().bg(Color::Rgb((20), (20), (1)))); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 300 - .style(Style::default().bg(Color::Rgb((20), (20), (1)))); [INFO] [stdout] 300 + .style(Style::default().bg(Color::Rgb(20, (20), (1)))); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/main.rs:300:61 [INFO] [stdout] | [INFO] [stdout] 300 | .style(Style::default().bg(Color::Rgb((20), (20), (1)))); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 300 - .style(Style::default().bg(Color::Rgb((20), (20), (1)))); [INFO] [stdout] 300 + .style(Style::default().bg(Color::Rgb((20), 20, (1)))); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/main.rs:300:67 [INFO] [stdout] | [INFO] [stdout] 300 | .style(Style::default().bg(Color::Rgb((20), (20), (1)))); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 300 - .style(Style::default().bg(Color::Rgb((20), (20), (1)))); [INFO] [stdout] 300 + .style(Style::default().bg(Color::Rgb((20), (20), 1))); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `chunks` [INFO] [stdout] --> src/main.rs:251:9 [INFO] [stdout] | [INFO] [stdout] 251 | let chunks = Layout::default() [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_chunks` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cell` [INFO] [stdout] --> src/main.rs:257:17 [INFO] [stdout] | [INFO] [stdout] 257 | for (j, cell) in row.iter().enumerate() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_cell` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fiveonetwo` [INFO] [stdout] --> src/main.rs:289:17 [INFO] [stdout] | [INFO] [stdout] 289 | let fiveonetwo: Block = Block::default() [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fiveonetwo` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `white` [INFO] [stdout] --> src/main.rs:298:17 [INFO] [stdout] | [INFO] [stdout] 298 | let white: Block = Block::default() [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_white` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:262:17 [INFO] [stdout] | [INFO] [stdout] 262 | let mut block = Block::default() [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 variable: `res` [INFO] [stdout] --> src/main.rs:367:9 [INFO] [stdout] | [INFO] [stdout] 367 | let res = run_app(&mut terminal, game); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:364:9 [INFO] [stdout] | [INFO] [stdout] 364 | let mut game = Game::new(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `start` and `die` are never read [INFO] [stdout] --> src/main.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 18 | struct Game { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 19 | start: bool, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 20 | die: bool, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `prepare_board` and `print_board` are never used [INFO] [stdout] --> src/main.rs:45:8 [INFO] [stdout] | [INFO] [stdout] 35 | impl Board { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 45 | fn prepare_board(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 85 | fn print_board(&self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:369:5 [INFO] [stdout] | [INFO] [stdout] 369 | / execute!( [INFO] [stdout] 370 | | terminal.backend_mut(), [INFO] [stdout] 371 | | LeaveAlternateScreen, [INFO] [stdout] 372 | | DisableMouseCapture [INFO] [stdout] 373 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this warning originates in the macro `execute` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 16 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `chunks` [INFO] [stdout] --> src/main.rs:251:9 [INFO] [stdout] | [INFO] [stdout] 251 | let chunks = Layout::default() [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_chunks` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cell` [INFO] [stdout] --> src/main.rs:257:17 [INFO] [stdout] | [INFO] [stdout] 257 | for (j, cell) in row.iter().enumerate() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_cell` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fiveonetwo` [INFO] [stdout] --> src/main.rs:289:17 [INFO] [stdout] | [INFO] [stdout] 289 | let fiveonetwo: Block = Block::default() [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fiveonetwo` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `white` [INFO] [stdout] --> src/main.rs:298:17 [INFO] [stdout] | [INFO] [stdout] 298 | let white: Block = Block::default() [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_white` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:262:17 [INFO] [stdout] | [INFO] [stdout] 262 | let mut block = Block::default() [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 variable: `res` [INFO] [stdout] --> src/main.rs:367:9 [INFO] [stdout] | [INFO] [stdout] 367 | let res = run_app(&mut terminal, game); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:364:9 [INFO] [stdout] | [INFO] [stdout] 364 | let mut game = Game::new(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `start` and `die` are never read [INFO] [stdout] --> src/main.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 18 | struct Game { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 19 | start: bool, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 20 | die: bool, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `prepare_board` and `print_board` are never used [INFO] [stdout] --> src/main.rs:45:8 [INFO] [stdout] | [INFO] [stdout] 35 | impl Board { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 45 | fn prepare_board(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 85 | fn print_board(&self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:369:5 [INFO] [stdout] | [INFO] [stdout] 369 | / execute!( [INFO] [stdout] 370 | | terminal.backend_mut(), [INFO] [stdout] 371 | | LeaveAlternateScreen, [INFO] [stdout] 372 | | DisableMouseCapture [INFO] [stdout] 373 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this warning originates in the macro `execute` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 16 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.33s [INFO] running `Command { std: "docker" "inspect" "7a157cc278eb6b4752aae41a2d75fbebc8392f270575735c938b1141b3900c4f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7a157cc278eb6b4752aae41a2d75fbebc8392f270575735c938b1141b3900c4f", kill_on_drop: false }` [INFO] [stdout] 7a157cc278eb6b4752aae41a2d75fbebc8392f270575735c938b1141b3900c4f [INFO] checking carlos1798/2048-in-rust against try#645bb72776a6a56a1a8f52631a44bd082b2ba509 for absurd-question-mark-desugar [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcarlos1798%2F2048-in-rust" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/carlos1798/2048-in-rust on toolchain 645bb72776a6a56a1a8f52631a44bd082b2ba509 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/carlos1798/2048-in-rust [INFO] finished tweaking git repo https://github.com/carlos1798/2048-in-rust [INFO] tweaked toml for git repo https://github.com/carlos1798/2048-in-rust written to /workspace/builds/worker-3-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/carlos1798/2048-in-rust 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" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] b8b2320571edcdba900c1784fa28851c6dc8b0f3eaddcf23d44cfd867178ec99 [INFO] running `Command { std: "docker" "start" "-a" "b8b2320571edcdba900c1784fa28851c6dc8b0f3eaddcf23d44cfd867178ec99", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b8b2320571edcdba900c1784fa28851c6dc8b0f3eaddcf23d44cfd867178ec99", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b8b2320571edcdba900c1784fa28851c6dc8b0f3eaddcf23d44cfd867178ec99", kill_on_drop: false }` [INFO] [stdout] b8b2320571edcdba900c1784fa28851c6dc8b0f3eaddcf23d44cfd867178ec99 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 460a8a783bd368e639193832ed1810a0cdbfaa8ec8b70c60a671d42ab82ab221 [INFO] running `Command { std: "docker" "start" "-a" "460a8a783bd368e639193832ed1810a0cdbfaa8ec8b70c60a671d42ab82ab221", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.139 [INFO] [stderr] Compiling log v0.4.17 [INFO] [stderr] Compiling lock_api v0.4.9 [INFO] [stderr] Compiling parking_lot_core v0.9.6 [INFO] [stderr] Checking smallvec v1.10.0 [INFO] [stderr] Checking unicode-segmentation v1.10.0 [INFO] [stderr] Checking cassowary v0.3.0 [INFO] [stderr] Checking signal-hook-registry v1.4.0 [INFO] [stderr] Checking getrandom v0.2.8 [INFO] [stderr] Checking mio v0.8.5 [INFO] [stderr] Checking parking_lot v0.12.1 [INFO] [stderr] Checking signal-hook v0.3.14 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking signal-hook-mio v0.2.3 [INFO] [stderr] Checking crossterm v0.25.0 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking tui v0.19.0 [INFO] [stderr] Checking dosmilochenta v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `Text` [INFO] [stdout] --> src/main.rs:13:23 [INFO] [stdout] | [INFO] [stdout] 13 | use tui::text::{Span, Text}; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Canvas`, `Line`, `MapResolution`, `Map`, `Rectangle`, `self` [INFO] [stdout] --> src/main.rs:14:28 [INFO] [stdout] | [INFO] [stdout] 14 | use tui::widgets::canvas::{self, Canvas, Line, Map, MapResolution, Rectangle}; [INFO] [stdout] | ^^^^ ^^^^^^ ^^^^ ^^^ ^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BorderType`, `Paragraph`, `Widget` [INFO] [stdout] --> src/main.rs:15:27 [INFO] [stdout] | [INFO] [stdout] 15 | use tui::widgets::{Block, BorderType, Borders, Paragraph, Widget}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/main.rs:300:55 [INFO] [stdout] | [INFO] [stdout] 300 | .style(Style::default().bg(Color::Rgb((20), (20), (1)))); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 300 - .style(Style::default().bg(Color::Rgb((20), (20), (1)))); [INFO] [stdout] 300 + .style(Style::default().bg(Color::Rgb(20, (20), (1)))); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/main.rs:300:61 [INFO] [stdout] | [INFO] [stdout] 300 | .style(Style::default().bg(Color::Rgb((20), (20), (1)))); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 300 - .style(Style::default().bg(Color::Rgb((20), (20), (1)))); [INFO] [stdout] 300 + .style(Style::default().bg(Color::Rgb((20), 20, (1)))); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/main.rs:300:67 [INFO] [stdout] | [INFO] [stdout] 300 | .style(Style::default().bg(Color::Rgb((20), (20), (1)))); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 300 - .style(Style::default().bg(Color::Rgb((20), (20), (1)))); [INFO] [stdout] 300 + .style(Style::default().bg(Color::Rgb((20), (20), 1))); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Text` [INFO] [stdout] --> src/main.rs:13:23 [INFO] [stdout] | [INFO] [stdout] 13 | use tui::text::{Span, Text}; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Canvas`, `Line`, `MapResolution`, `Map`, `Rectangle`, `self` [INFO] [stdout] --> src/main.rs:14:28 [INFO] [stdout] | [INFO] [stdout] 14 | use tui::widgets::canvas::{self, Canvas, Line, Map, MapResolution, Rectangle}; [INFO] [stdout] | ^^^^ ^^^^^^ ^^^^ ^^^ ^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BorderType`, `Paragraph`, `Widget` [INFO] [stdout] --> src/main.rs:15:27 [INFO] [stdout] | [INFO] [stdout] 15 | use tui::widgets::{Block, BorderType, Borders, Paragraph, Widget}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/main.rs:300:55 [INFO] [stdout] | [INFO] [stdout] 300 | .style(Style::default().bg(Color::Rgb((20), (20), (1)))); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 300 - .style(Style::default().bg(Color::Rgb((20), (20), (1)))); [INFO] [stdout] 300 + .style(Style::default().bg(Color::Rgb(20, (20), (1)))); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/main.rs:300:61 [INFO] [stdout] | [INFO] [stdout] 300 | .style(Style::default().bg(Color::Rgb((20), (20), (1)))); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 300 - .style(Style::default().bg(Color::Rgb((20), (20), (1)))); [INFO] [stdout] 300 + .style(Style::default().bg(Color::Rgb((20), 20, (1)))); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/main.rs:300:67 [INFO] [stdout] | [INFO] [stdout] 300 | .style(Style::default().bg(Color::Rgb((20), (20), (1)))); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 300 - .style(Style::default().bg(Color::Rgb((20), (20), (1)))); [INFO] [stdout] 300 + .style(Style::default().bg(Color::Rgb((20), (20), 1))); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `chunks` [INFO] [stdout] --> src/main.rs:251:9 [INFO] [stdout] | [INFO] [stdout] 251 | let chunks = Layout::default() [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_chunks` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cell` [INFO] [stdout] --> src/main.rs:257:17 [INFO] [stdout] | [INFO] [stdout] 257 | for (j, cell) in row.iter().enumerate() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_cell` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fiveonetwo` [INFO] [stdout] --> src/main.rs:289:17 [INFO] [stdout] | [INFO] [stdout] 289 | let fiveonetwo: Block = Block::default() [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fiveonetwo` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `white` [INFO] [stdout] --> src/main.rs:298:17 [INFO] [stdout] | [INFO] [stdout] 298 | let white: Block = Block::default() [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_white` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:262:17 [INFO] [stdout] | [INFO] [stdout] 262 | let mut block = Block::default() [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 variable: `res` [INFO] [stdout] --> src/main.rs:367:9 [INFO] [stdout] | [INFO] [stdout] 367 | let res = run_app(&mut terminal, game); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:364:9 [INFO] [stdout] | [INFO] [stdout] 364 | let mut game = Game::new(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `start` and `die` are never read [INFO] [stdout] --> src/main.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 18 | struct Game { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 19 | start: bool, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 20 | die: bool, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `prepare_board` and `print_board` are never used [INFO] [stdout] --> src/main.rs:45:8 [INFO] [stdout] | [INFO] [stdout] 35 | impl Board { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 45 | fn prepare_board(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 85 | fn print_board(&self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:369:5 [INFO] [stdout] | [INFO] [stdout] 369 | / execute!( [INFO] [stdout] 370 | | terminal.backend_mut(), [INFO] [stdout] 371 | | LeaveAlternateScreen, [INFO] [stdout] 372 | | DisableMouseCapture [INFO] [stdout] 373 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this warning originates in the macro `execute` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 16 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `chunks` [INFO] [stdout] --> src/main.rs:251:9 [INFO] [stdout] | [INFO] [stdout] 251 | let chunks = Layout::default() [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_chunks` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cell` [INFO] [stdout] --> src/main.rs:257:17 [INFO] [stdout] | [INFO] [stdout] 257 | for (j, cell) in row.iter().enumerate() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_cell` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fiveonetwo` [INFO] [stdout] --> src/main.rs:289:17 [INFO] [stdout] | [INFO] [stdout] 289 | let fiveonetwo: Block = Block::default() [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fiveonetwo` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `white` [INFO] [stdout] --> src/main.rs:298:17 [INFO] [stdout] | [INFO] [stdout] 298 | let white: Block = Block::default() [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_white` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:262:17 [INFO] [stdout] | [INFO] [stdout] 262 | let mut block = Block::default() [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 variable: `res` [INFO] [stdout] --> src/main.rs:367:9 [INFO] [stdout] | [INFO] [stdout] 367 | let res = run_app(&mut terminal, game); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:364:9 [INFO] [stdout] | [INFO] [stdout] 364 | let mut game = Game::new(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `start` and `die` are never read [INFO] [stdout] --> src/main.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 18 | struct Game { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 19 | start: bool, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 20 | die: bool, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `prepare_board` and `print_board` are never used [INFO] [stdout] --> src/main.rs:45:8 [INFO] [stdout] | [INFO] [stdout] 35 | impl Board { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 45 | fn prepare_board(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 85 | fn print_board(&self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:369:5 [INFO] [stdout] | [INFO] [stdout] 369 | / execute!( [INFO] [stdout] 370 | | terminal.backend_mut(), [INFO] [stdout] 371 | | LeaveAlternateScreen, [INFO] [stdout] 372 | | DisableMouseCapture [INFO] [stdout] 373 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this warning originates in the macro `execute` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 16 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.79s [INFO] running `Command { std: "docker" "inspect" "460a8a783bd368e639193832ed1810a0cdbfaa8ec8b70c60a671d42ab82ab221", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "460a8a783bd368e639193832ed1810a0cdbfaa8ec8b70c60a671d42ab82ab221", kill_on_drop: false }` [INFO] [stdout] 460a8a783bd368e639193832ed1810a0cdbfaa8ec8b70c60a671d42ab82ab221