[INFO] cloning repository https://github.com/szeka94/rust_tetris
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/szeka94/rust_tetris" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fszeka94%2Frust_tetris", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fszeka94%2Frust_tetris'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] e12187d5b4f875ed3c6c1d2b52cfea048bf9ba21
[INFO] checking szeka94/rust_tetris against master#b0696a5160711c068cb1f01b7437db7990d15750 for pr-121848
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fszeka94%2Frust_tetris" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/szeka94/rust_tetris on toolchain b0696a5160711c068cb1f01b7437db7990d15750
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b0696a5160711c068cb1f01b7437db7990d15750" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/szeka94/rust_tetris
[INFO] finished tweaking git repo https://github.com/szeka94/rust_tetris
[INFO] tweaked toml for git repo https://github.com/szeka94/rust_tetris written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/szeka94/rust_tetris 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" "+b0696a5160711c068cb1f01b7437db7990d15750" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[ERROR] error running command: no output for 300 seconds
[ERROR] this task or one of its parent failed!
[ERROR] no output for 300 seconds
[ERROR] note: run with `RUST_BACKTRACE=1` to display a backtrace.
[INFO] checking szeka94/rust_tetris against try#bfe97fcae016881ad333f0ff8cea2cadb9cf136c for pr-121848
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fszeka94%2Frust_tetris" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/szeka94/rust_tetris on toolchain bfe97fcae016881ad333f0ff8cea2cadb9cf136c
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bfe97fcae016881ad333f0ff8cea2cadb9cf136c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/szeka94/rust_tetris
[INFO] finished tweaking git repo https://github.com/szeka94/rust_tetris
[INFO] tweaked toml for git repo https://github.com/szeka94/rust_tetris written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/szeka94/rust_tetris 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" "+bfe97fcae016881ad333f0ff8cea2cadb9cf136c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded wayland-sys v0.21.4
[INFO] [stderr]   Downloaded piston-viewport v0.4.0
[INFO] [stderr]   Downloaded pistoncore-window v0.33.0
[INFO] [stderr]   Downloaded pistoncore-event_loop v0.38.0
[INFO] [stderr]   Downloaded piston v0.38.0
[INFO] [stderr]   Downloaded piston-gfx_texture v0.34.0
[INFO] [stderr]   Downloaded ordered-float v0.5.2
[INFO] [stderr]   Downloaded pistoncore-input v0.22.0
[INFO] [stderr]   Downloaded approx v0.3.0
[INFO] [stderr]   Downloaded stb_truetype v0.2.4
[INFO] [stderr]   Downloaded andrew v0.1.4
[INFO] [stderr]   Downloaded piston2d-graphics v0.27.0
[INFO] [stderr]   Downloaded wayland-protocols v0.21.4
[INFO] [stderr]   Downloaded smithay-client-toolkit v0.4.2
[INFO] [stderr]   Downloaded piston2d-gfx_graphics v0.53.0
[INFO] [stderr]   Downloaded piston_window v0.84.0
[INFO] [stderr]   Downloaded winit v0.18.0
[INFO] [stderr]   Downloaded rusttype v0.7.3
[INFO] [stderr]   Downloaded wayland-client v0.21.4
[INFO] [stderr]   Downloaded wayland-commons v0.21.4
[INFO] [stderr]   Downloaded wayland-scanner v0.21.4
[INFO] [stderr]   Downloaded pistoncore-glutin_window v0.50.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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" "+bfe97fcae016881ad333f0ff8cea2cadb9cf136c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 22ad900c5239773ddbc41c2ed76bd57b9f1512353810d1f69eecbadd47a8214a
[INFO] running `Command { std: "docker" "start" "-a" "22ad900c5239773ddbc41c2ed76bd57b9f1512353810d1f69eecbadd47a8214a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "22ad900c5239773ddbc41c2ed76bd57b9f1512353810d1f69eecbadd47a8214a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "22ad900c5239773ddbc41c2ed76bd57b9f1512353810d1f69eecbadd47a8214a", kill_on_drop: false }`
[INFO] [stdout] 22ad900c5239773ddbc41c2ed76bd57b9f1512353810d1f69eecbadd47a8214a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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" "+bfe97fcae016881ad333f0ff8cea2cadb9cf136c" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b325267aa190d55b4f8bcc131a7c09e12b3cce42a9073493dbc38dae452bf6ee
[INFO] running `Command { std: "docker" "start" "-a" "b325267aa190d55b4f8bcc131a7c09e12b3cce42a9073493dbc38dae452bf6ee", kill_on_drop: false }`
[INFO] [stderr]    Compiling num-traits v0.2.6
[INFO] [stderr]    Compiling libc v0.2.44
[INFO] [stderr]     Checking cfg-if v0.1.6
[INFO] [stderr]     Checking bitflags v1.0.4
[INFO] [stderr]    Compiling proc-macro2 v0.4.24
[INFO] [stderr]     Checking lazy_static v1.2.0
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]     Checking nodrop v0.1.13
[INFO] [stderr]     Checking byteorder v1.2.7
[INFO] [stderr]     Checking void v1.0.2
[INFO] [stderr]    Compiling xml-rs v0.8.0
[INFO] [stderr]     Checking arrayvec v0.4.8
[INFO] [stderr]     Checking scopeguard v0.3.3
[INFO] [stderr]    Compiling log v0.4.6
[INFO] [stderr]    Compiling cc v1.0.25
[INFO] [stderr]    Compiling khronos_api v2.2.0
[INFO] [stderr]     Checking unreachable v1.0.0
[INFO] [stderr]    Compiling xml-rs v0.7.0
[INFO] [stderr]     Checking stb_truetype v0.2.4
[INFO] [stderr]    Compiling wayland-scanner v0.21.4
[INFO] [stderr]     Checking piston-float v0.3.0
[INFO] [stderr]    Compiling nix v0.11.0
[INFO] [stderr]     Checking crossbeam-utils v0.2.2
[INFO] [stderr]    Compiling gl_generator v0.9.0
[INFO] [stderr]    Compiling quote v0.6.10
[INFO] [stderr]     Checking memoffset v0.2.1
[INFO] [stderr]    Compiling rayon-core v1.4.1
[INFO] [stderr]     Checking rand_core v0.3.0
[INFO] [stderr]    Compiling num-integer v0.1.39
[INFO] [stderr]    Compiling syn v0.15.22
[INFO] [stderr]    Compiling libloading v0.5.0
[INFO] [stderr]     Checking rand_core v0.2.2
[INFO] [stderr]     Checking crossbeam-epoch v0.3.1
[INFO] [stderr]    Compiling wayland-client v0.21.4
[INFO] [stderr]     Checking piston-viewport v0.4.0
[INFO] [stderr]    Compiling serde v1.0.80
[INFO] [stderr]    Compiling khronos_api v3.0.0
[INFO] [stderr]     Checking crossbeam-deque v0.2.0
[INFO] [stderr]    Compiling parking_lot_core v0.3.1
[INFO] [stderr]     Checking dlib v0.4.1
[INFO] [stderr]     Checking wayland-sys v0.21.4
[INFO] [stderr]     Checking rand v0.5.5
[INFO] [stderr]    Compiling wayland-protocols v0.21.4
[INFO] [stderr]     Checking ordered-float v1.0.1
[INFO] [stderr]     Checking approx v0.3.0
[INFO] [stderr]     Checking num_cpus v1.8.0
[INFO] [stderr]     Checking downcast-rs v1.0.3
[INFO] [stderr]    Compiling num-derive v0.2.3
[INFO] [stderr]    Compiling num-iter v0.1.37
[INFO] [stderr]     Checking stable_deref_trait v1.1.1
[INFO] [stderr]     Checking same-file v1.0.4
[INFO] [stderr]    Compiling rayon v1.0.3
[INFO] [stderr]    Compiling pkg-config v0.3.14
[INFO] [stderr]     Checking adler32 v1.0.3
[INFO] [stderr]     Checking walkdir v2.2.7
[INFO] [stderr]     Checking owning_ref v0.4.0
[INFO] [stderr]     Checking rusttype v0.7.3
[INFO] [stderr]    Compiling x11-dl v2.18.3
[INFO] [stderr]     Checking line_drawing v0.7.0
[INFO] [stderr]     Checking smallvec v0.6.6
[INFO] [stderr]     Checking draw_state v0.8.0
[INFO] [stderr]     Checking either v1.5.0
[INFO] [stderr]     Checking xdg v2.2.0
[INFO] [stderr]    Compiling num-rational v0.2.1
[INFO] [stderr]     Checking lzw v0.10.0
[INFO] [stderr]     Checking shader_version v0.3.0
[INFO] [stderr]     Checking wayland-commons v0.21.4
[INFO] [stderr]     Checking andrew v0.1.4
[INFO] [stderr]    Compiling gl_generator v0.10.0
[INFO] [stderr]     Checking lock_api v0.1.5
[INFO] [stderr]     Checking inflate v0.4.3
[INFO] [stderr]     Checking deflate v0.7.19
[INFO] [stderr]     Checking num-traits v0.1.43
[INFO] [stderr]     Checking memmap v0.6.2
[INFO] [stderr]     Checking color_quant v1.0.1
[INFO] [stderr]     Checking png v0.12.0
[INFO] [stderr]     Checking ordered-float v0.5.2
[INFO] [stderr]     Checking gif v0.10.1
[INFO] [stderr]     Checking parking_lot v0.6.4
[INFO] [stderr]    Compiling gl v0.10.0
[INFO] [stderr]    Compiling glutin v0.19.0
[INFO] [stderr]    Compiling gfx_gl v0.5.0
[INFO] [stderr]     Checking shared_library v0.1.9
[INFO] [stderr]     Checking percent-encoding v1.0.1
[INFO] [stderr]     Checking approx v0.1.1
[INFO] [stderr]     Checking scoped_threadpool v0.1.9
[INFO] [stderr]     Checking jpeg-decoder v0.1.15
[INFO] [stderr]     Checking piston-texture v0.6.0
[INFO] [stderr]     Checking rusttype v0.5.2
[INFO] [stderr]     Checking osmesa-sys v0.1.2
[INFO] [stderr]     Checking vecmath v0.3.1
[INFO] [stderr]     Checking read_color v1.0.0
[INFO] [stderr]     Checking interpolation v0.1.0
[INFO] [stderr]     Checking piston-shaders_graphics2d v0.3.1
[INFO] [stderr]     Checking piston2d-graphics v0.27.0
[INFO] [stderr]    Compiling serde_derive v1.0.80
[INFO] [stderr]    Compiling derivative v1.0.2
[INFO] [stderr]     Checking smithay-client-toolkit v0.4.2
[INFO] [stderr]     Checking winit v0.18.0
[INFO] [stderr]     Checking tiff v0.2.1
[INFO] [stderr]     Checking image v0.20.1
[INFO] [stderr]     Checking gfx_core v0.8.3
[INFO] [stderr]     Checking gfx v0.17.1
[INFO] [stderr]     Checking gfx_device_gl v0.15.3
[INFO] [stderr]     Checking pistoncore-input v0.22.0
[INFO] [stderr]     Checking piston-gfx_texture v0.34.0
[INFO] [stderr]     Checking piston2d-gfx_graphics v0.53.0
[INFO] [stderr]     Checking pistoncore-window v0.33.0
[INFO] [stderr]     Checking pistoncore-event_loop v0.38.0
[INFO] [stderr]     Checking pistoncore-glutin_window v0.50.1
[INFO] [stderr]     Checking piston v0.38.0
[INFO] [stderr]     Checking piston_window v0.84.0
[INFO] [stderr]     Checking tetris v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: expected identifier, found keyword `type`
[INFO] [stdout]   --> src/game.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct Cell {
[INFO] [stdout]    |            ---- while parsing this struct
[INFO] [stdout] 15 |     type: CellType,
[INFO] [stdout]    |     ^^^^ expected identifier, found keyword
[INFO] [stdout]    |
[INFO] [stdout] help: escape `type` to use it as an identifier
[INFO] [stdout]    |
[INFO] [stdout] 15 |     r#type: CellType,
[INFO] [stdout]    |     ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected identifier, found keyword `type`
[INFO] [stdout]   --> src/game.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct Cell {
[INFO] [stdout]    |            ---- while parsing this struct
[INFO] [stdout] 15 |     type: CellType,
[INFO] [stdout]    |     ^^^^ expected identifier, found keyword
[INFO] [stdout]    |
[INFO] [stdout] help: escape `type` to use it as an identifier
[INFO] [stdout]    |
[INFO] [stdout] 15 |     r#type: CellType,
[INFO] [stdout]    |     ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected identifier, found keyword `type`
[INFO] [stdout]   --> src/game.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn new(type: CellType) -> Cell {
[INFO] [stdout]    |            ^^^^ expected identifier, found keyword
[INFO] [stdout]    |
[INFO] [stdout] help: escape `type` to use it as an identifier
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn new(r#type: CellType) -> Cell {
[INFO] [stdout]    |            ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected identifier, found keyword `type`
[INFO] [stdout]   --> src/game.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn new(type: CellType) -> Cell {
[INFO] [stdout]    |            ^^^^ expected identifier, found keyword
[INFO] [stdout]    |
[INFO] [stdout] help: escape `type` to use it as an identifier
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn new(r#type: CellType) -> Cell {
[INFO] [stdout]    |            ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected identifier, found keyword `type`
[INFO] [stdout]   --> src/game.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |         Cell {
[INFO] [stdout]    |         ---- while parsing this struct
[INFO] [stdout] 21 |             type
[INFO] [stdout]    |             ^^^^ expected identifier, found keyword
[INFO] [stdout]    |
[INFO] [stdout] help: escape `type` to use it as an identifier
[INFO] [stdout]    |
[INFO] [stdout] 21 |             r#type
[INFO] [stdout]    |             ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected identifier, found keyword `type`
[INFO] [stdout]   --> src/game.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 40 | struct Tetris {
[INFO] [stdout]    |        ------ while parsing this struct
[INFO] [stdout] 41 |     // the type
[INFO] [stdout] 42 |     type: TetrisType,
[INFO] [stdout]    |     ^^^^ expected identifier, found keyword
[INFO] [stdout]    |
[INFO] [stdout] help: escape `type` to use it as an identifier
[INFO] [stdout]    |
[INFO] [stdout] 42 |     r#type: TetrisType,
[INFO] [stdout]    |     ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected identifier, found keyword `type`
[INFO] [stdout]   --> src/game.rs:49:16
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub fn new(type: TetrisType) -> Tetris {
[INFO] [stdout]    |                ^^^^ expected identifier, found keyword
[INFO] [stdout]    |
[INFO] [stdout] help: escape `type` to use it as an identifier
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub fn new(r#type: TetrisType) -> Tetris {
[INFO] [stdout]    |                ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected identifier, found keyword `type`
[INFO] [stdout]   --> src/game.rs:51:13
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Tetris {
[INFO] [stdout]    |         ------ while parsing this struct
[INFO] [stdout] 51 |             type,
[INFO] [stdout]    |             ^^^^ expected identifier, found keyword
[INFO] [stdout]    |
[INFO] [stdout] help: escape `type` to use it as an identifier
[INFO] [stdout]    |
[INFO] [stdout] 51 |             r#type,
[INFO] [stdout]    |             ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0583]: file not found for module `tetris`
[INFO] [stdout]  --> src/main.rs:6:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | mod tetris;
[INFO] [stdout]   | ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: to create the module `tetris`, create file "src/tetris.rs" or "src/tetris/mod.rs"
[INFO] [stdout]   = note: if there is a `mod tetris` elsewhere in the crate already, import it with `use crate::...` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected identifier, found keyword `type`
[INFO] [stdout]   --> src/game.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 20 |         Cell {
[INFO] [stdout]    |         ---- while parsing this struct
[INFO] [stdout] 21 |             type
[INFO] [stdout]    |             ^^^^ expected identifier, found keyword
[INFO] [stdout]    |
[INFO] [stdout] help: escape `type` to use it as an identifier
[INFO] [stdout]    |
[INFO] [stdout] 21 |             r#type
[INFO] [stdout]    |             ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected identifier, found keyword `type`
[INFO] [stdout]   --> src/game.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 40 | struct Tetris {
[INFO] [stdout]    |        ------ while parsing this struct
[INFO] [stdout] 41 |     // the type
[INFO] [stdout] 42 |     type: TetrisType,
[INFO] [stdout]    |     ^^^^ expected identifier, found keyword
[INFO] [stdout]    |
[INFO] [stdout] help: escape `type` to use it as an identifier
[INFO] [stdout]    |
[INFO] [stdout] 42 |     r#type: TetrisType,
[INFO] [stdout]    |     ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected identifier, found keyword `type`
[INFO] [stdout]   --> src/game.rs:49:16
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub fn new(type: TetrisType) -> Tetris {
[INFO] [stdout]    |                ^^^^ expected identifier, found keyword
[INFO] [stdout]    |
[INFO] [stdout] help: escape `type` to use it as an identifier
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub fn new(r#type: TetrisType) -> Tetris {
[INFO] [stdout]    |                ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected identifier, found keyword `type`
[INFO] [stdout]   --> src/game.rs:51:13
[INFO] [stdout]    |
[INFO] [stdout] 50 |         Tetris {
[INFO] [stdout]    |         ------ while parsing this struct
[INFO] [stdout] 51 |             type,
[INFO] [stdout]    |             ^^^^ expected identifier, found keyword
[INFO] [stdout]    |
[INFO] [stdout] help: escape `type` to use it as an identifier
[INFO] [stdout]    |
[INFO] [stdout] 51 |             r#type,
[INFO] [stdout]    |             ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0583]: file not found for module `tetris`
[INFO] [stdout]  --> src/main.rs:6:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | mod tetris;
[INFO] [stdout]   | ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: to create the module `tetris`, create file "src/tetris.rs" or "src/tetris/mod.rs"
[INFO] [stdout]   = note: if there is a `mod tetris` elsewhere in the crate already, import it with `use crate::...` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0573]: expected type, found variant `CellType::Empty`
[INFO] [stdout]   --> src/game.rs:67:28
[INFO] [stdout]    |
[INFO] [stdout] 67 |     grid: [[[CellType::new(CellType::Empty); COL_COUNT as usize]; ROW_COUNT as usize]],
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^ not a type
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items instead
[INFO] [stdout]    |
[INFO] [stdout] 1  + use std::io::Empty;
[INFO] [stdout]    |
[INFO] [stdout] 1  + use std::iter::Empty;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `Empty`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 67 -     grid: [[[CellType::new(CellType::Empty); COL_COUNT as usize]; ROW_COUNT as usize]],
[INFO] [stdout] 67 +     grid: [[[CellType::new(Empty); COL_COUNT as usize]; ROW_COUNT as usize]],
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0573]: expected type, found variant `CellType::Empty`
[INFO] [stdout]   --> src/game.rs:67:28
[INFO] [stdout]    |
[INFO] [stdout] 67 |     grid: [[[CellType::new(CellType::Empty); COL_COUNT as usize]; ROW_COUNT as usize]],
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^ not a type
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items instead
[INFO] [stdout]    |
[INFO] [stdout] 1  + use std::io::Empty;
[INFO] [stdout]    |
[INFO] [stdout] 1  + use std::iter::Empty;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `Empty`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 67 -     grid: [[[CellType::new(CellType::Empty); COL_COUNT as usize]; ROW_COUNT as usize]],
[INFO] [stdout] 67 +     grid: [[[CellType::new(Empty); COL_COUNT as usize]; ROW_COUNT as usize]],
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `draw_block`
[INFO] [stdout]   --> src/main.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | use draw::{draw_block, to_coord_u32};
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `draw_block`
[INFO] [stdout]   --> src/main.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | use draw::{draw_block, to_coord_u32};
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0214]: parenthesized type parameters may only be used with a `Fn` trait
[INFO] [stdout]   --> src/game.rs:67:24
[INFO] [stdout]    |
[INFO] [stdout] 67 |     grid: [[[CellType::new(CellType::Empty); COL_COUNT as usize]; ROW_COUNT as usize]],
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^ only `Fn` traits may use parentheses
[INFO] [stdout]    |
[INFO] [stdout] help: use angle brackets instead
[INFO] [stdout]    |
[INFO] [stdout] 67 |     grid: [[[CellType::new<CellType::Empty>; COL_COUNT as usize]; ROW_COUNT as usize]],
[INFO] [stdout]    |                           ~               ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0214]: parenthesized type parameters may only be used with a `Fn` trait
[INFO] [stdout]   --> src/game.rs:67:24
[INFO] [stdout]    |
[INFO] [stdout] 67 |     grid: [[[CellType::new(CellType::Empty); COL_COUNT as usize]; ROW_COUNT as usize]],
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^ only `Fn` traits may use parentheses
[INFO] [stdout]    |
[INFO] [stdout] help: use angle brackets instead
[INFO] [stdout]    |
[INFO] [stdout] 67 |     grid: [[[CellType::new<CellType::Empty>; COL_COUNT as usize]; ROW_COUNT as usize]],
[INFO] [stdout]    |                           ~               ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant named `new` found for enum `CellType`
[INFO] [stdout]   --> src/game.rs:67:24
[INFO] [stdout]    |
[INFO] [stdout] 7  | enum CellType {
[INFO] [stdout]    | ------------- variant `new` not found here
[INFO] [stdout] ...
[INFO] [stdout] 67 |     grid: [[[CellType::new(CellType::Empty); COL_COUNT as usize]; ROW_COUNT as usize]],
[INFO] [stdout]    |                        ^^^ variant not found in `CellType`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant named `new` found for enum `CellType`
[INFO] [stdout]   --> src/game.rs:67:24
[INFO] [stdout]    |
[INFO] [stdout] 7  | enum CellType {
[INFO] [stdout]    | ------------- variant `new` not found here
[INFO] [stdout] ...
[INFO] [stdout] 67 |     grid: [[[CellType::new(CellType::Empty); COL_COUNT as usize]; ROW_COUNT as usize]],
[INFO] [stdout]    |                        ^^^ variant not found in `CellType`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Direction`
[INFO] [stdout]   --> src/game.rs:90:31
[INFO] [stdout]    |
[INFO] [stdout] 90 |             Key::Down => Some(Direction::Down),
[INFO] [stdout]    |                               ^^^^^^^^^ use of undeclared type `Direction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Direction`
[INFO] [stdout]   --> src/game.rs:90:31
[INFO] [stdout]    |
[INFO] [stdout] 90 |             Key::Down => Some(Direction::Down),
[INFO] [stdout]    |                               ^^^^^^^^^ use of undeclared type `Direction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Direction`
[INFO] [stdout]   --> src/game.rs:91:31
[INFO] [stdout]    |
[INFO] [stdout] 91 |             Key::Left => Some(Direction::Left),
[INFO] [stdout]    |                               ^^^^^^^^^ use of undeclared type `Direction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Direction`
[INFO] [stdout]   --> src/game.rs:91:31
[INFO] [stdout]    |
[INFO] [stdout] 91 |             Key::Left => Some(Direction::Left),
[INFO] [stdout]    |                               ^^^^^^^^^ use of undeclared type `Direction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Direction`
[INFO] [stdout]   --> src/game.rs:92:32
[INFO] [stdout]    |
[INFO] [stdout] 92 |             Key::Right => Some(Direction::Right),
[INFO] [stdout]    |                                ^^^^^^^^^ use of undeclared type `Direction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Direction`
[INFO] [stdout]   --> src/game.rs:92:32
[INFO] [stdout]    |
[INFO] [stdout] 92 |             Key::Right => Some(Direction::Right),
[INFO] [stdout]    |                                ^^^^^^^^^ use of undeclared type `Direction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `update_dir` found for struct `Tetris` in the current scope
[INFO] [stdout]   --> src/game.rs:96:21
[INFO] [stdout]    |
[INFO] [stdout] 40 | struct Tetris {
[INFO] [stdout]    | ------------- method `update_dir` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 96 |         self.tetris.update_dir(dir);
[INFO] [stdout]    |                     ^^^^^^^^^^ method not found in `Tetris`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `update_dir` found for struct `Tetris` in the current scope
[INFO] [stdout]   --> src/game.rs:96:21
[INFO] [stdout]    |
[INFO] [stdout] 40 | struct Tetris {
[INFO] [stdout]    | ------------- method `update_dir` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 96 |         self.tetris.update_dir(dir);
[INFO] [stdout]    |                     ^^^^^^^^^^ method not found in `Tetris`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 |     let mut game = Game::new(width, height);
[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] error: aborting due to 14 previous errors; 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0214, E0433, E0573, E0583, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0214`.
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 |     let mut game = Game::new(width, height);
[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] error: aborting due to 14 previous errors; 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0214, E0433, E0573, E0583, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0214`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `tetris` (bin "tetris" test) due to 15 previous errors; 2 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `tetris` (bin "tetris") due to 15 previous errors; 2 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "b325267aa190d55b4f8bcc131a7c09e12b3cce42a9073493dbc38dae452bf6ee", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b325267aa190d55b4f8bcc131a7c09e12b3cce42a9073493dbc38dae452bf6ee", kill_on_drop: false }`
[INFO] [stdout] b325267aa190d55b4f8bcc131a7c09e12b3cce42a9073493dbc38dae452bf6ee
