[INFO] updating cached repository https://github.com/xaviershay/rust-puzzlefighter
[INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"`
[INFO] running `"git" "rev-parse" "HEAD"`
[INFO] [stdout] 5220173bae894ab69539d0085b3e5d5783bec8af
[INFO] checking xaviershay/rust-puzzlefighter against master#209b2be09fcaff937480d1fbbe8b31646e361c7a for pr-70917
[INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fxaviershay%2Frust-puzzlefighter" "/workspace/builds/worker-10/source"`
[INFO] [stderr] Cloning into '/workspace/builds/worker-10/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/xaviershay/rust-puzzlefighter on toolchain 209b2be09fcaff937480d1fbbe8b31646e361c7a
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "read-manifest" "--manifest-path" "Cargo.toml"`
[INFO] started tweaking git repo https://github.com/xaviershay/rust-puzzlefighter
[INFO] removed 0 missing examples
[INFO] removed 0 missing tests
[INFO] finished tweaking git repo https://github.com/xaviershay/rust-puzzlefighter
[INFO] tweaked toml for git repo https://github.com/xaviershay/rust-puzzlefighter written to /workspace/builds/worker-10/source/Cargo.toml
[INFO] crate git repo https://github.com/xaviershay/rust-puzzlefighter already has a lockfile, it will not be regenerated
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "fetch" "--locked" "--manifest-path" "Cargo.toml"`
[INFO] [stderr] warning: An explicit [[test]] section is specified in Cargo.toml which currently
[INFO] [stderr] disables Cargo from automatically inferring other test targets.
[INFO] [stderr] This inference behavior will change in the Rust 2018 edition and the following
[INFO] [stderr] files will be included as a test target:
[INFO] [stderr] 
[INFO] [stderr] * /workspace/builds/worker-10/source/tests/test_debug.rs
[INFO] [stderr] * /workspace/builds/worker-10/source/tests/test_fuse.rs
[INFO] [stderr] * /workspace/builds/worker-10/source/tests/test_drop.rs
[INFO] [stderr] * /workspace/builds/worker-10/source/tests/test_wall_kick.rs
[INFO] [stderr] 
[INFO] [stderr] This is likely to break cargo build or cargo test as these files may not be
[INFO] [stderr] ready to be compiled as a test target today. You can future-proof yourself
[INFO] [stderr] and disable this warning by adding `autotests = false` to your [package]
[INFO] [stderr] section. You may also move the files to a location where Cargo would not
[INFO] [stderr] automatically infer them to be a target, such as in subfolders.
[INFO] [stderr] 
[INFO] [stderr] For more information on this warning you can consult
[INFO] [stderr] https://github.com/rust-lang/cargo/issues/5330
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr] error: the lock file /workspace/builds/worker-10/source/Cargo.lock needs to be updated but --locked was passed to prevent this
[INFO] [stderr] If you want to try to generate the lock file without accessing the network, use the --offline flag.
[INFO] the lockfile is outdated, regenerating it
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating git repository `https://github.com/PistonDevelopers/sprite`
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "fetch" "--locked" "--manifest-path" "Cargo.toml"`
[INFO] [stderr] warning: An explicit [[test]] section is specified in Cargo.toml which currently
[INFO] [stderr] disables Cargo from automatically inferring other test targets.
[INFO] [stderr] This inference behavior will change in the Rust 2018 edition and the following
[INFO] [stderr] files will be included as a test target:
[INFO] [stderr] 
[INFO] [stderr] * /workspace/builds/worker-10/source/tests/test_debug.rs
[INFO] [stderr] * /workspace/builds/worker-10/source/tests/test_fuse.rs
[INFO] [stderr] * /workspace/builds/worker-10/source/tests/test_drop.rs
[INFO] [stderr] * /workspace/builds/worker-10/source/tests/test_wall_kick.rs
[INFO] [stderr] 
[INFO] [stderr] This is likely to break cargo build or cargo test as these files may not be
[INFO] [stderr] ready to be compiled as a test target today. You can future-proof yourself
[INFO] [stderr] and disable this warning by adding `autotests = false` to your [package]
[INFO] [stderr] section. You may also move the files to a location where Cargo would not
[INFO] [stderr] automatically infer them to be a target, such as in subfolders.
[INFO] [stderr] 
[INFO] [stderr] For more information on this warning you can consult
[INFO] [stderr] https://github.com/rust-lang/cargo/issues/5330
[INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/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" "MAP_USER_ID=0" "-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" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "check" "--frozen" "--all" "--all-targets"`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 1fadab367db81f72aa683513ee4508b16c4a107a4c228e16bfe2d6464983c3a4
[INFO] running `"docker" "start" "-a" "1fadab367db81f72aa683513ee4508b16c4a107a4c228e16bfe2d6464983c3a4"`
[INFO] [stderr] warning: An explicit [[test]] section is specified in Cargo.toml which currently
[INFO] [stderr] disables Cargo from automatically inferring other test targets.
[INFO] [stderr] This inference behavior will change in the Rust 2018 edition and the following
[INFO] [stderr] files will be included as a test target:
[INFO] [stderr] 
[INFO] [stderr] * /opt/rustwide/workdir/tests/test_debug.rs
[INFO] [stderr] * /opt/rustwide/workdir/tests/test_fuse.rs
[INFO] [stderr] * /opt/rustwide/workdir/tests/test_drop.rs
[INFO] [stderr] * /opt/rustwide/workdir/tests/test_wall_kick.rs
[INFO] [stderr] 
[INFO] [stderr] This is likely to break cargo build or cargo test as these files may not be
[INFO] [stderr] ready to be compiled as a test target today. You can future-proof yourself
[INFO] [stderr] and disable this warning by adding `autotests = false` to your [package]
[INFO] [stderr] section. You may also move the files to a location where Cargo would not
[INFO] [stderr] automatically infer them to be a target, such as in subfolders.
[INFO] [stderr] 
[INFO] [stderr] For more information on this warning you can consult
[INFO] [stderr] https://github.com/rust-lang/cargo/issues/5330
[INFO] [stderr]     Checking piston-float v1.0.0
[INFO] [stderr]     Checking piston-graphics_api_version v0.2.0
[INFO] [stderr]     Checking piston-texture v0.8.0
[INFO] [stderr]     Checking interpolation v0.2.0
[INFO] [stderr]     Checking bytemuck v1.2.0
[INFO] [stderr]    Compiling sdl2 v0.32.2
[INFO] [stderr]     Checking uuid v0.8.1
[INFO] [stderr]     Checking find_folder v0.3.0
[INFO] [stderr]    Compiling sdl2-sys v0.32.6
[INFO] [stderr]     Checking memmap v0.7.0
[INFO] [stderr]     Checking shared_library v0.1.9
[INFO] [stderr]     Checking raw-window-handle v0.3.3
[INFO] [stderr]    Compiling gl_generator v0.13.1
[INFO] [stderr]    Compiling gl_generator v0.14.0
[INFO] [stderr]     Checking deflate v0.8.4
[INFO] [stderr]     Checking tiff v0.4.0
[INFO] [stderr]     Checking x11-dl v2.18.5
[INFO] [stderr]     Checking uuid v0.6.5
[INFO] [stderr]     Checking tempdir v0.3.7
[INFO] [stderr]    Compiling gl v0.11.0
[INFO] [stderr]     Checking nix v0.14.1
[INFO] [stderr]     Checking draw_state v0.8.0
[INFO] [stderr]     Checking rand v0.6.5
[INFO] [stderr]     Checking ordered-float v1.0.2
[INFO] [stderr]     Checking approx v0.3.2
[INFO] [stderr]     Checking line_drawing v0.7.0
[INFO] [stderr]     Checking shader_version v0.6.0
[INFO] [stderr]     Checking piston-viewport v1.0.0
[INFO] [stderr]     Checking vecmath v1.0.0
[INFO] [stderr]     Checking osmesa-sys v0.1.2
[INFO] [stderr]     Checking num-rational v0.2.4
[INFO] [stderr]     Checking rayon-core v1.7.0
[INFO] [stderr]     Checking png v0.16.2
[INFO] [stderr]     Checking rusttype v0.8.3
[INFO] [stderr]     Checking pistoncore-input v0.28.0
[INFO] [stderr]     Checking gfx_core v0.9.2
[INFO] [stderr]     Checking rayon v1.3.0
[INFO] [stderr]     Checking rusttype v0.7.9
[INFO] [stderr]     Checking piston2d-graphics v0.36.0
[INFO] [stderr]     Checking andrew v0.2.1
[INFO] [stderr]    Compiling glutin_glx_sys v0.1.6
[INFO] [stderr]    Compiling glutin_egl_sys v0.1.4
[INFO] [stderr]    Compiling gfx_gl v0.6.1
[INFO] [stderr]     Checking pistoncore-window v0.44.0
[INFO] [stderr]     Checking piston-ai_behavior v0.31.0
[INFO] [stderr]     Checking pistoncore-event_loop v0.49.0
[INFO] [stderr]     Checking piston2d-sprite v0.59.0 (https://github.com/PistonDevelopers/sprite#4b4f8891)
[INFO] [stderr]     Checking piston v0.49.0
[INFO] [stderr]     Checking jpeg-decoder v0.1.18
[INFO] [stderr]     Checking wayland-commons v0.21.13
[INFO] [stderr]     Checking image v0.23.3
[INFO] [stderr]     Checking wayland-client v0.21.13
[INFO] [stderr]     Checking pistoncore-sdl2_window v0.63.0
[INFO] [stderr]     Checking wayland-protocols v0.21.13
[INFO] [stderr]     Checking smithay-client-toolkit v0.4.6
[INFO] [stderr]     Checking gfx v0.18.2
[INFO] [stderr]     Checking gfx_device_gl v0.16.2
[INFO] [stderr]     Checking winit v0.19.5
[INFO] [stderr]     Checking piston-gfx_texture v0.41.0
[INFO] [stderr]     Checking glutin v0.21.2
[INFO] [stderr]     Checking piston2d-gfx_graphics v0.68.0
[INFO] [stderr]     Checking pistoncore-glutin_window v0.63.0
[INFO] [stderr]     Checking piston_window v0.107.0
[INFO] [stderr]     Checking puzzlefighter v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr] error: no rules expected the token `flags`
[INFO] [stderr]   --> src/values.rs:80:5
[INFO] [stderr]    |
[INFO] [stderr] 80 |     flags Sides: u8 {
[INFO] [stderr]    |     ^^^^^ no rules expected this token in macro call
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `Sides`
[INFO] [stderr]    --> src/values.rs:212:9
[INFO] [stderr]     |
[INFO] [stderr] 212 |         Sides::from_bits(0b00000000);
[INFO] [stderr]     |         ^^^^^ use of undeclared type or module `Sides`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `Sides`
[INFO] [stderr]    --> src/values.rs:213:9
[INFO] [stderr]     |
[INFO] [stderr] 213 |         Sides::from_bits_truncate(0b00000000);
[INFO] [stderr]     |         ^^^^^ use of undeclared type or module `Sides`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `JoystickButton`
[INFO] [stderr]   --> src/human_player.rs:94:64
[INFO] [stderr]    |
[INFO] [stderr] 94 |             inputs.insert(InputButton::Piston(Button::Joystick(JoystickButton::new(0, 1))), InputAction::Clockwise);
[INFO] [stderr]    |                                                                ^^^^^^^^^^^^^^ use of undeclared type or module `JoystickButton`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `JoystickButton`
[INFO] [stderr]   --> src/human_player.rs:95:64
[INFO] [stderr]    |
[INFO] [stderr] 95 |             inputs.insert(InputButton::Piston(Button::Joystick(JoystickButton::new(0, 3))), InputAction::AntiClockwise);
[INFO] [stderr]    |                                                                ^^^^^^^^^^^^^^ use of undeclared type or module `JoystickButton`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `JoystickButton`
[INFO] [stderr]    --> src/human_player.rs:105:64
[INFO] [stderr]     |
[INFO] [stderr] 105 |             inputs.insert(InputButton::Piston(Button::Joystick(JoystickButton::new(1, 1))), InputAction::Clockwise);
[INFO] [stderr]     |                                                                ^^^^^^^^^^^^^^ use of undeclared type or module `JoystickButton`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `JoystickButton`
[INFO] [stderr]    --> src/human_player.rs:106:64
[INFO] [stderr]     |
[INFO] [stderr] 106 |             inputs.insert(InputButton::Piston(Button::Joystick(JoystickButton::new(1, 3))), InputAction::AntiClockwise);
[INFO] [stderr]     |                                                                ^^^^^^^^^^^^^^ use of undeclared type or module `JoystickButton`
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Sides` in this scope
[INFO] [stderr]    --> src/values.rs:102:14
[INFO] [stderr]     |
[INFO] [stderr] 102 |     borders: Sides,
[INFO] [stderr]     |              ^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_ALL` in this scope
[INFO] [stderr]    --> src/values.rs:119:22
[INFO] [stderr]     |
[INFO] [stderr] 119 |             borders: SIDE_ALL,
[INFO] [stderr]     |                      ^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_ALL` in this scope
[INFO] [stderr]    --> src/values.rs:129:22
[INFO] [stderr]     |
[INFO] [stderr] 129 |             borders: SIDE_ALL,
[INFO] [stderr]     |                      ^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_ALL` in this scope
[INFO] [stderr]    --> src/values.rs:135:25
[INFO] [stderr]     |
[INFO] [stderr] 135 |         self.borders != SIDE_ALL
[INFO] [stderr]     |                         ^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Sides` in this scope
[INFO] [stderr]    --> src/values.rs:169:6
[INFO] [stderr]     |
[INFO] [stderr] 169 | impl Sides {
[INFO] [stderr]     |      ^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_RIGHT` in this scope
[INFO] [stderr]    --> src/values.rs:210:21
[INFO] [stderr]     |
[INFO] [stderr] 210 |         self.remove(SIDE_RIGHT);
[INFO] [stderr]     |                     ^^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_RIGHT` in this scope
[INFO] [stderr]    --> src/values.rs:211:21
[INFO] [stderr]     |
[INFO] [stderr] 211 |         self.toggle(SIDE_RIGHT);
[INFO] [stderr]     |                     ^^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Sides` in this scope
[INFO] [stderr]    --> src/values.rs:287:30
[INFO] [stderr]     |
[INFO] [stderr] 287 |     pub fn to_side(&self) -> Sides {
[INFO] [stderr]     |                              ^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_TOP` in this scope
[INFO] [stderr]    --> src/values.rs:289:33
[INFO] [stderr]     |
[INFO] [stderr] 289 |             Direction::Up    => SIDE_TOP,
[INFO] [stderr]     |                                 ^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_RIGHT` in this scope
[INFO] [stderr]    --> src/values.rs:290:33
[INFO] [stderr]     |
[INFO] [stderr] 290 |             Direction::Right => SIDE_RIGHT,
[INFO] [stderr]     |                                 ^^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_BOTTOM` in this scope
[INFO] [stderr]    --> src/values.rs:291:33
[INFO] [stderr]     |
[INFO] [stderr] 291 |             Direction::Down  => SIDE_BOTTOM,
[INFO] [stderr]     |                                 ^^^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_LEFT` in this scope
[INFO] [stderr]    --> src/values.rs:292:33
[INFO] [stderr]     |
[INFO] [stderr] 292 |             Direction::Left  => SIDE_LEFT,
[INFO] [stderr]     |                                 ^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Sides` in this scope
[INFO] [stderr]    --> src/values.rs:429:30
[INFO] [stderr]     |
[INFO] [stderr] 429 |     pub fn borders(&self) -> Sides { self.block.borders }
[INFO] [stderr]     |                              ^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Sides` in this scope
[INFO] [stderr]    --> src/values.rs:434:33
[INFO] [stderr]     |
[INFO] [stderr] 434 |     pub fn fuse(&self, borders: Sides) -> Self {
[INFO] [stderr]     |                                 ^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_BOTTOM` in this scope
[INFO] [stderr]    --> src/board.rs:313:63
[INFO] [stderr]     |
[INFO] [stderr] 313 |             if block.is_fused() && block.borders().intersects(SIDE_BOTTOM) {
[INFO] [stderr]     |                                                               ^^^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_BOTTOM_RIGHT` in this scope
[INFO] [stderr]    --> src/board.rs:322:39
[INFO] [stderr]     |
[INFO] [stderr] 322 |                 if block.borders() == SIDE_BOTTOM_RIGHT {
[INFO] [stderr]     |                                       ^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_BOTTOM` in this scope
[INFO] [stderr]    --> src/board.rs:384:50
[INFO] [stderr]     |
[INFO] [stderr] 384 |                         self.grid.set(block.fuse(SIDE_BOTTOM | SIDE_LEFT));
[INFO] [stderr]     |                                                  ^^^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_LEFT` in this scope
[INFO] [stderr]    --> src/board.rs:384:64
[INFO] [stderr]     |
[INFO] [stderr] 384 |                         self.grid.set(block.fuse(SIDE_BOTTOM | SIDE_LEFT));
[INFO] [stderr]     |                                                                ^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_TOP` in this scope
[INFO] [stderr]    --> src/board.rs:385:47
[INFO] [stderr]     |
[INFO] [stderr] 385 |                         self.grid.set(up.fuse(SIDE_TOP | SIDE_LEFT));
[INFO] [stderr]     |                                               ^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_LEFT` in this scope
[INFO] [stderr]    --> src/board.rs:385:58
[INFO] [stderr]     |
[INFO] [stderr] 385 |                         self.grid.set(up.fuse(SIDE_TOP | SIDE_LEFT));
[INFO] [stderr]     |                                                          ^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_BOTTOM` in this scope
[INFO] [stderr]    --> src/board.rs:386:50
[INFO] [stderr]     |
[INFO] [stderr] 386 |                         self.grid.set(right.fuse(SIDE_BOTTOM | SIDE_RIGHT));
[INFO] [stderr]     |                                                  ^^^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_RIGHT` in this scope
[INFO] [stderr]    --> src/board.rs:386:64
[INFO] [stderr]     |
[INFO] [stderr] 386 |                         self.grid.set(right.fuse(SIDE_BOTTOM | SIDE_RIGHT));
[INFO] [stderr]     |                                                                ^^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_TOP` in this scope
[INFO] [stderr]    --> src/board.rs:387:52
[INFO] [stderr]     |
[INFO] [stderr] 387 |                         self.grid.set(upright.fuse(SIDE_TOP | SIDE_RIGHT));
[INFO] [stderr]     |                                                    ^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_RIGHT` in this scope
[INFO] [stderr]    --> src/board.rs:387:63
[INFO] [stderr]     |
[INFO] [stderr] 387 |                         self.grid.set(upright.fuse(SIDE_TOP | SIDE_RIGHT));
[INFO] [stderr]     |                                                               ^^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_NONE` in this scope
[INFO] [stderr]    --> src/board.rs:492:21
[INFO] [stderr]     |
[INFO] [stderr] 492 |                     SIDE_NONE
[INFO] [stderr]     |                     ^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_BOTTOM_LEFT` in this scope
[INFO] [stderr]    --> src/board.rs:571:49
[INFO] [stderr]     |
[INFO] [stderr] 571 |                     if block.borders().contains(SIDE_BOTTOM_LEFT) {
[INFO] [stderr]     |                                                 ^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `default_draw_state` in this scope
[INFO] [stderr]    --> src/board_renderer.rs:305:34
[INFO] [stderr]     |
[INFO] [stderr] 305 |                 let draw_state = default_draw_state();
[INFO] [stderr]     |                                  ^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0422]: cannot find struct, variant or union type `JoystickAxisArgs` in this scope
[INFO] [stderr]    --> src/human_player.rs:168:21
[INFO] [stderr]     |
[INFO] [stderr] 168 |         if let Some(JoystickAxisArgs { axis, position, id }) = e.joystick_axis_args() {
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0214]: parenthesized type parameters may only be used with a `Fn` trait
[INFO] [stderr]   --> src/block_grid.rs:44:33
[INFO] [stderr]    |
[INFO] [stderr] 44 |         self.cells[block.y() as usize()][block.x() as usize()] = Some(block);
[INFO] [stderr]    |                                 ^^^^^^^ only `Fn` traits may use parentheses
[INFO] [stderr] 
[INFO] [stderr] error[E0214]: parenthesized type parameters may only be used with a `Fn` trait
[INFO] [stderr]   --> src/block_grid.rs:44:55
[INFO] [stderr]    |
[INFO] [stderr] 44 |         self.cells[block.y() as usize()][block.x() as usize()] = Some(block);
[INFO] [stderr]    |                                                       ^^^^^^^ only `Fn` traits may use parentheses
[INFO] [stderr] 
[INFO] [stderr] error[E0214]: parenthesized type parameters may only be used with a `Fn` trait
[INFO] [stderr]   --> src/block_grid.rs:50:36
[INFO] [stderr]    |
[INFO] [stderr] 50 |         self.cells[position.y() as usize()][position.x() as usize()] = None;
[INFO] [stderr]    |                                    ^^^^^^^ only `Fn` traits may use parentheses
[INFO] [stderr] 
[INFO] [stderr] error[E0214]: parenthesized type parameters may only be used with a `Fn` trait
[INFO] [stderr]   --> src/block_grid.rs:50:61
[INFO] [stderr]    |
[INFO] [stderr] 50 |         self.cells[position.y() as usize()][position.x() as usize()] = None;
[INFO] [stderr]    |                                                             ^^^^^^^ only `Fn` traits may use parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `self::rand::*`
[INFO] [stderr]    --> src/values.rs:484:13
[INFO] [stderr]     |
[INFO] [stderr] 484 |         use self::rand::*;
[INFO] [stderr]     |             ^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/board.rs:514:30
[INFO] [stderr]     |
[INFO] [stderr] 514 |         let options: Vec<Box<Fn(Piece) -> Piece>> = vec!(
[INFO] [stderr]     |                              ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Piece) -> Piece`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary braces around assigned value
[INFO] [stderr]    --> src/board_renderer.rs:110:22
[INFO] [stderr]     |
[INFO] [stderr] 110 |         let exists = { self.sprites.contains_key(&block.block()) };
[INFO] [stderr]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_braces)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary braces around assigned value
[INFO] [stderr]    --> src/board_renderer.rs:134:22
[INFO] [stderr]     |
[INFO] [stderr] 134 |         let sprite = { self.scene.child_mut(sprite_id).unwrap() };
[INFO] [stderr]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces
[INFO] [stderr] 
[INFO] [stderr] error[E0107]: wrong number of type arguments: expected at most 1, found 2
[INFO] [stderr]  --> src/wrapper_types.rs:6:23
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub type GameWindow = PistonWindow<(), Sdl2Window>;
[INFO] [stderr]   |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected at most 1 type argument
[INFO] [stderr] 
[INFO] [stderr] error: aborting due to 40 previous errors
[INFO] [stderr] 
[INFO] [stderr] Some errors have detailed explanations: E0107, E0214, E0412, E0422, E0425, E0433.
[INFO] [stderr] For more information about an error, try `rustc --explain E0107`.
[INFO] [stderr] error: could not compile `puzzlefighter`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: no rules expected the token `flags`
[INFO] [stderr]   --> src/values.rs:80:5
[INFO] [stderr]    |
[INFO] [stderr] 80 |     flags Sides: u8 {
[INFO] [stderr]    |     ^^^^^ no rules expected this token in macro call
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `Sides`
[INFO] [stderr]    --> src/values.rs:212:9
[INFO] [stderr]     |
[INFO] [stderr] 212 |         Sides::from_bits(0b00000000);
[INFO] [stderr]     |         ^^^^^ use of undeclared type or module `Sides`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `Sides`
[INFO] [stderr]    --> src/values.rs:213:9
[INFO] [stderr]     |
[INFO] [stderr] 213 |         Sides::from_bits_truncate(0b00000000);
[INFO] [stderr]     |         ^^^^^ use of undeclared type or module `Sides`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `JoystickButton`
[INFO] [stderr]   --> src/human_player.rs:94:64
[INFO] [stderr]    |
[INFO] [stderr] 94 |             inputs.insert(InputButton::Piston(Button::Joystick(JoystickButton::new(0, 1))), InputAction::Clockwise);
[INFO] [stderr]    |                                                                ^^^^^^^^^^^^^^ use of undeclared type or module `JoystickButton`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `JoystickButton`
[INFO] [stderr]   --> src/human_player.rs:95:64
[INFO] [stderr]    |
[INFO] [stderr] 95 |             inputs.insert(InputButton::Piston(Button::Joystick(JoystickButton::new(0, 3))), InputAction::AntiClockwise);
[INFO] [stderr]    |                                                                ^^^^^^^^^^^^^^ use of undeclared type or module `JoystickButton`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `JoystickButton`
[INFO] [stderr]    --> src/human_player.rs:105:64
[INFO] [stderr]     |
[INFO] [stderr] 105 |             inputs.insert(InputButton::Piston(Button::Joystick(JoystickButton::new(1, 1))), InputAction::Clockwise);
[INFO] [stderr]     |                                                                ^^^^^^^^^^^^^^ use of undeclared type or module `JoystickButton`
[INFO] [stderr] 
[INFO] [stderr] error[E0433]: failed to resolve: use of undeclared type or module `JoystickButton`
[INFO] [stderr]    --> src/human_player.rs:106:64
[INFO] [stderr]     |
[INFO] [stderr] 106 |             inputs.insert(InputButton::Piston(Button::Joystick(JoystickButton::new(1, 3))), InputAction::AntiClockwise);
[INFO] [stderr]     |                                                                ^^^^^^^^^^^^^^ use of undeclared type or module `JoystickButton`
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Sides` in this scope
[INFO] [stderr]    --> src/values.rs:102:14
[INFO] [stderr]     |
[INFO] [stderr] 102 |     borders: Sides,
[INFO] [stderr]     |              ^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_ALL` in this scope
[INFO] [stderr]    --> src/values.rs:119:22
[INFO] [stderr]     |
[INFO] [stderr] 119 |             borders: SIDE_ALL,
[INFO] [stderr]     |                      ^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_ALL` in this scope
[INFO] [stderr]    --> src/values.rs:129:22
[INFO] [stderr]     |
[INFO] [stderr] 129 |             borders: SIDE_ALL,
[INFO] [stderr]     |                      ^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_ALL` in this scope
[INFO] [stderr]    --> src/values.rs:135:25
[INFO] [stderr]     |
[INFO] [stderr] 135 |         self.borders != SIDE_ALL
[INFO] [stderr]     |                         ^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Sides` in this scope
[INFO] [stderr]    --> src/values.rs:169:6
[INFO] [stderr]     |
[INFO] [stderr] 169 | impl Sides {
[INFO] [stderr]     |      ^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_RIGHT` in this scope
[INFO] [stderr]    --> src/values.rs:210:21
[INFO] [stderr]     |
[INFO] [stderr] 210 |         self.remove(SIDE_RIGHT);
[INFO] [stderr]     |                     ^^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_RIGHT` in this scope
[INFO] [stderr]    --> src/values.rs:211:21
[INFO] [stderr]     |
[INFO] [stderr] 211 |         self.toggle(SIDE_RIGHT);
[INFO] [stderr]     |                     ^^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Sides` in this scope
[INFO] [stderr]    --> src/values.rs:287:30
[INFO] [stderr]     |
[INFO] [stderr] 287 |     pub fn to_side(&self) -> Sides {
[INFO] [stderr]     |                              ^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_TOP` in this scope
[INFO] [stderr]    --> src/values.rs:289:33
[INFO] [stderr]     |
[INFO] [stderr] 289 |             Direction::Up    => SIDE_TOP,
[INFO] [stderr]     |                                 ^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_RIGHT` in this scope
[INFO] [stderr]    --> src/values.rs:290:33
[INFO] [stderr]     |
[INFO] [stderr] 290 |             Direction::Right => SIDE_RIGHT,
[INFO] [stderr]     |                                 ^^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_BOTTOM` in this scope
[INFO] [stderr]    --> src/values.rs:291:33
[INFO] [stderr]     |
[INFO] [stderr] 291 |             Direction::Down  => SIDE_BOTTOM,
[INFO] [stderr]     |                                 ^^^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_LEFT` in this scope
[INFO] [stderr]    --> src/values.rs:292:33
[INFO] [stderr]     |
[INFO] [stderr] 292 |             Direction::Left  => SIDE_LEFT,
[INFO] [stderr]     |                                 ^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Sides` in this scope
[INFO] [stderr]    --> src/values.rs:429:30
[INFO] [stderr]     |
[INFO] [stderr] 429 |     pub fn borders(&self) -> Sides { self.block.borders }
[INFO] [stderr]     |                              ^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0412]: cannot find type `Sides` in this scope
[INFO] [stderr]    --> src/values.rs:434:33
[INFO] [stderr]     |
[INFO] [stderr] 434 |     pub fn fuse(&self, borders: Sides) -> Self {
[INFO] [stderr]     |                                 ^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_BOTTOM` in this scope
[INFO] [stderr]    --> src/board.rs:313:63
[INFO] [stderr]     |
[INFO] [stderr] 313 |             if block.is_fused() && block.borders().intersects(SIDE_BOTTOM) {
[INFO] [stderr]     |                                                               ^^^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_BOTTOM_RIGHT` in this scope
[INFO] [stderr]    --> src/board.rs:322:39
[INFO] [stderr]     |
[INFO] [stderr] 322 |                 if block.borders() == SIDE_BOTTOM_RIGHT {
[INFO] [stderr]     |                                       ^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_BOTTOM` in this scope
[INFO] [stderr]    --> src/board.rs:384:50
[INFO] [stderr]     |
[INFO] [stderr] 384 |                         self.grid.set(block.fuse(SIDE_BOTTOM | SIDE_LEFT));
[INFO] [stderr]     |                                                  ^^^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_LEFT` in this scope
[INFO] [stderr]    --> src/board.rs:384:64
[INFO] [stderr]     |
[INFO] [stderr] 384 |                         self.grid.set(block.fuse(SIDE_BOTTOM | SIDE_LEFT));
[INFO] [stderr]     |                                                                ^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_TOP` in this scope
[INFO] [stderr]    --> src/board.rs:385:47
[INFO] [stderr]     |
[INFO] [stderr] 385 |                         self.grid.set(up.fuse(SIDE_TOP | SIDE_LEFT));
[INFO] [stderr]     |                                               ^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_LEFT` in this scope
[INFO] [stderr]    --> src/board.rs:385:58
[INFO] [stderr]     |
[INFO] [stderr] 385 |                         self.grid.set(up.fuse(SIDE_TOP | SIDE_LEFT));
[INFO] [stderr]     |                                                          ^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_BOTTOM` in this scope
[INFO] [stderr]    --> src/board.rs:386:50
[INFO] [stderr]     |
[INFO] [stderr] 386 |                         self.grid.set(right.fuse(SIDE_BOTTOM | SIDE_RIGHT));
[INFO] [stderr]     |                                                  ^^^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_RIGHT` in this scope
[INFO] [stderr]    --> src/board.rs:386:64
[INFO] [stderr]     |
[INFO] [stderr] 386 |                         self.grid.set(right.fuse(SIDE_BOTTOM | SIDE_RIGHT));
[INFO] [stderr]     |                                                                ^^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_TOP` in this scope
[INFO] [stderr]    --> src/board.rs:387:52
[INFO] [stderr]     |
[INFO] [stderr] 387 |                         self.grid.set(upright.fuse(SIDE_TOP | SIDE_RIGHT));
[INFO] [stderr]     |                                                    ^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_RIGHT` in this scope
[INFO] [stderr]    --> src/board.rs:387:63
[INFO] [stderr]     |
[INFO] [stderr] 387 |                         self.grid.set(upright.fuse(SIDE_TOP | SIDE_RIGHT));
[INFO] [stderr]     |                                                               ^^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_NONE` in this scope
[INFO] [stderr]    --> src/board.rs:492:21
[INFO] [stderr]     |
[INFO] [stderr] 492 |                     SIDE_NONE
[INFO] [stderr]     |                     ^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find value `SIDE_BOTTOM_LEFT` in this scope
[INFO] [stderr]    --> src/board.rs:571:49
[INFO] [stderr]     |
[INFO] [stderr] 571 |                     if block.borders().contains(SIDE_BOTTOM_LEFT) {
[INFO] [stderr]     |                                                 ^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0425]: cannot find function `default_draw_state` in this scope
[INFO] [stderr]    --> src/board_renderer.rs:305:34
[INFO] [stderr]     |
[INFO] [stderr] 305 |                 let draw_state = default_draw_state();
[INFO] [stderr]     |                                  ^^^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0422]: cannot find struct, variant or union type `JoystickAxisArgs` in this scope
[INFO] [stderr]    --> src/human_player.rs:168:21
[INFO] [stderr]     |
[INFO] [stderr] 168 |         if let Some(JoystickAxisArgs { axis, position, id }) = e.joystick_axis_args() {
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^^^ not found in this scope
[INFO] [stderr] 
[INFO] [stderr] error[E0214]: parenthesized type parameters may only be used with a `Fn` trait
[INFO] [stderr]   --> src/block_grid.rs:44:33
[INFO] [stderr]    |
[INFO] [stderr] 44 |         self.cells[block.y() as usize()][block.x() as usize()] = Some(block);
[INFO] [stderr]    |                                 ^^^^^^^ only `Fn` traits may use parentheses
[INFO] [stderr] 
[INFO] [stderr] error[E0214]: parenthesized type parameters may only be used with a `Fn` trait
[INFO] [stderr]   --> src/block_grid.rs:44:55
[INFO] [stderr]    |
[INFO] [stderr] 44 |         self.cells[block.y() as usize()][block.x() as usize()] = Some(block);
[INFO] [stderr]    |                                                       ^^^^^^^ only `Fn` traits may use parentheses
[INFO] [stderr] 
[INFO] [stderr] error[E0214]: parenthesized type parameters may only be used with a `Fn` trait
[INFO] [stderr]   --> src/block_grid.rs:50:36
[INFO] [stderr]    |
[INFO] [stderr] 50 |         self.cells[position.y() as usize()][position.x() as usize()] = None;
[INFO] [stderr]    |                                    ^^^^^^^ only `Fn` traits may use parentheses
[INFO] [stderr] 
[INFO] [stderr] error[E0214]: parenthesized type parameters may only be used with a `Fn` trait
[INFO] [stderr]   --> src/block_grid.rs:50:61
[INFO] [stderr]    |
[INFO] [stderr] 50 |         self.cells[position.y() as usize()][position.x() as usize()] = None;
[INFO] [stderr]    |                                                             ^^^^^^^ only `Fn` traits may use parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `self::rand::*`
[INFO] [stderr]    --> src/values.rs:484:13
[INFO] [stderr]     |
[INFO] [stderr] 484 |         use self::rand::*;
[INFO] [stderr]     |             ^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/board.rs:514:30
[INFO] [stderr]     |
[INFO] [stderr] 514 |         let options: Vec<Box<Fn(Piece) -> Piece>> = vec!(
[INFO] [stderr]     |                              ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Piece) -> Piece`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary braces around assigned value
[INFO] [stderr]    --> src/board_renderer.rs:110:22
[INFO] [stderr]     |
[INFO] [stderr] 110 |         let exists = { self.sprites.contains_key(&block.block()) };
[INFO] [stderr]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_braces)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary braces around assigned value
[INFO] [stderr]    --> src/board_renderer.rs:134:22
[INFO] [stderr]     |
[INFO] [stderr] 134 |         let sprite = { self.scene.child_mut(sprite_id).unwrap() };
[INFO] [stderr]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces
[INFO] [stderr] 
[INFO] [stderr] error[E0107]: wrong number of type arguments: expected at most 1, found 2
[INFO] [stderr]  --> src/wrapper_types.rs:6:23
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub type GameWindow = PistonWindow<(), Sdl2Window>;
[INFO] [stderr]   |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected at most 1 type argument
[INFO] [stderr] 
[INFO] [stderr] error: aborting due to 40 previous errors
[INFO] [stderr] 
[INFO] [stderr] Some errors have detailed explanations: E0107, E0214, E0412, E0422, E0425, E0433.
[INFO] [stderr] For more information about an error, try `rustc --explain E0107`.
[INFO] [stderr] error: could not compile `puzzlefighter`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] running `"docker" "inspect" "1fadab367db81f72aa683513ee4508b16c4a107a4c228e16bfe2d6464983c3a4"`
[INFO] running `"docker" "rm" "-f" "1fadab367db81f72aa683513ee4508b16c4a107a4c228e16bfe2d6464983c3a4"`
[INFO] [stdout] 1fadab367db81f72aa683513ee4508b16c4a107a4c228e16bfe2d6464983c3a4
