[INFO] cloning repository https://github.com/chrisk24/gamez
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/chrisk24/gamez" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fchrisk24%2Fgamez", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fchrisk24%2Fgamez'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 74a42ad05a49b5014c9375a85b2226a56e432159
[INFO] testing chrisk24/gamez against 1.47.0 for beta-1.48-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fchrisk24%2Fgamez" "/workspace/builds/worker-11/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-11/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/chrisk24/gamez on toolchain 1.47.0
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.47.0" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/chrisk24/gamez
[INFO] finished tweaking git repo https://github.com/chrisk24/gamez
[INFO] tweaked toml for git repo https://github.com/chrisk24/gamez written to /workspace/builds/worker-11/source/Cargo.toml
[INFO] crate git repo https://github.com/chrisk24/gamez already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.47.0" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] error: the lock file /workspace/builds/worker-11/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 `Command { std: "/workspace/cargo-home/bin/cargo" "+1.47.0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.47.0" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 52ca4ee394056b8d1986342c9aabdb12a9912b48bcd972da69242bc7da8f24a0
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "52ca4ee394056b8d1986342c9aabdb12a9912b48bcd972da69242bc7da8f24a0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "52ca4ee394056b8d1986342c9aabdb12a9912b48bcd972da69242bc7da8f24a0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "52ca4ee394056b8d1986342c9aabdb12a9912b48bcd972da69242bc7da8f24a0", kill_on_drop: false }`
[INFO] [stdout] 52ca4ee394056b8d1986342c9aabdb12a9912b48bcd972da69242bc7da8f24a0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/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=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2adb0e686316c43e5c41f3ad13342f4892875660f08485eff1d625835854692e
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "2adb0e686316c43e5c41f3ad13342f4892875660f08485eff1d625835854692e", kill_on_drop: false }`
[INFO] [stderr]    Compiling x11-dl v2.18.5
[INFO] [stderr]    Compiling gif v0.10.3
[INFO] [stderr]    Compiling dlib v0.4.2
[INFO] [stderr]    Compiling stb_truetype v0.3.1
[INFO] [stderr]    Compiling memmap v0.6.2
[INFO] [stderr]    Compiling shared_library v0.1.9
[INFO] [stderr]    Compiling num-integer v0.1.43
[INFO] [stderr]    Compiling rand v0.5.6
[INFO] [stderr]    Compiling wayland-scanner v0.12.5
[INFO] [stderr]    Compiling gl_generator v0.9.0
[INFO] [stderr]    Compiling ordered-float v0.5.2
[INFO] [stderr]    Compiling pistoncore-input v0.21.0
[INFO] [stderr]    Compiling tempfile v3.1.0
[INFO] [stderr]    Compiling wayland-sys v0.12.5
[INFO] [stderr]    Compiling osmesa-sys v0.1.2
[INFO] [stderr]    Compiling num-iter v0.1.41
[INFO] [stderr]    Compiling num-rational v0.1.42
[INFO] [stderr]    Compiling png v0.12.0
[INFO] [stderr]    Compiling stb_truetype v0.2.8
[INFO] [stderr]    Compiling rusttype v0.4.3
[INFO] [stderr]    Compiling wayland-client v0.12.5
[INFO] [stderr]    Compiling wayland-protocols v0.12.5
[INFO] [stderr]    Compiling piston2d-graphics v0.26.0
[INFO] [stderr]    Compiling image v0.19.0
[INFO] [stderr]    Compiling gl v0.10.0
[INFO] [stderr]    Compiling glutin v0.14.0
[INFO] [stderr]    Compiling pistoncore-window v0.32.0
[INFO] [stderr]    Compiling pistoncore-event_loop v0.37.0
[INFO] [stderr]    Compiling wayland-kbd v0.13.1
[INFO] [stderr]    Compiling piston v0.37.0
[INFO] [stderr]    Compiling wayland-window v0.13.3
[INFO] [stderr]    Compiling winit v0.12.0
[INFO] [stderr]    Compiling piston2d-opengl_graphics v0.53.0
[INFO] [stderr]    Compiling pistoncore-glutin_window v0.47.0
[INFO] [stderr]    Compiling game-engine v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]   --> src/art.rs:90:35
[INFO] [stdout]    |
[INFO] [stdout] 90 | ...                   (image_width/width),
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]   --> src/art.rs:91:35
[INFO] [stdout]    |
[INFO] [stdout] 91 | ...                   (image_height/height))
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> src/button.rs:161:9
[INFO] [stdout]     |
[INFO] [stdout] 161 | /         (_pos.mouse_x >= xbound &&
[INFO] [stdout] 162 | |          _pos.mouse_x <= xbound + self.w &&
[INFO] [stdout] 163 | |          _pos.mouse_y >= ybound &&
[INFO] [stdout] 164 | |          _pos.mouse_y <= ybound + self.h)
[INFO] [stdout]     | |_________________________________________^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 161 |         _pos.mouse_x >= xbound &&
[INFO] [stdout] 162 |          _pos.mouse_x <= xbound + self.w &&
[INFO] [stdout] 163 |          _pos.mouse_y >= ybound &&
[INFO] [stdout] 164 |          _pos.mouse_y <= ybound + self.h
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/game_board.rs:111:16
[INFO] [stdout]     |
[INFO] [stdout] 111 |             if (px == *x && py == *y) {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> src/game_board.rs:121:9
[INFO] [stdout]     |
[INFO] [stdout] 121 |         (*x == px && *y == py)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: denote infinite loops with `loop { ... }`
[INFO] [stdout]    --> src/game_board.rs:135:9
[INFO] [stdout]     |
[INFO] [stdout] 135 |         while true {
[INFO] [stdout]     |         ^^^^^^^^^^ help: use `loop`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(while_true)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `graphics::*`
[INFO] [stdout]   --> src/main.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use graphics::*;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `art::*`
[INFO] [stdout]   --> src/main.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | use art::*;
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]   --> src/app_base.rs:63:28
[INFO] [stdout]    |
[INFO] [stdout] 63 |     fn key_press(&mut self,key: Key) {
[INFO] [stdout]    |                            ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]   --> src/app_base.rs:66:31
[INFO] [stdout]    |
[INFO] [stdout] 66 |     fn key_release(&mut self, key: Key) {
[INFO] [stdout]    |                               ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/art.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 |         Ok(x) => {},
[INFO] [stdout]    |            ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/art.rs:30:13
[INFO] [stdout]    |
[INFO] [stdout] 30 |         Err(e) => {}
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/title_screen.rs:118:29
[INFO] [stdout]     |
[INFO] [stdout] 118 |     fn key_press(&mut self, key: Key) -> TitleEvent {
[INFO] [stdout]     |                             ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/title_screen.rs:121:31
[INFO] [stdout]     |
[INFO] [stdout] 121 |     fn key_release(&mut self, key: Key) -> TitleEvent {
[INFO] [stdout]     |                               ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/game_board.rs:280:31
[INFO] [stdout]     |
[INFO] [stdout] 280 |     fn key_release(&mut self, key: Key) -> GameBoardEvent {
[INFO] [stdout]     |                               ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `width`
[INFO] [stdout]   --> src/art.rs:36:4
[INFO] [stdout]    |
[INFO] [stdout] 36 |    width: u32,
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `height`
[INFO] [stdout]   --> src/art.rs:37:3
[INFO] [stdout]    |
[INFO] [stdout] 37 |   height: u32,
[INFO] [stdout]    |   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `sheet`
[INFO] [stdout]   --> src/art.rs:38:4
[INFO] [stdout]    |
[INFO] [stdout] 38 |    sheet: Vec<Texture> 
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `get_index`
[INFO] [stdout]   --> src/art.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 42 |     fn get_index(x: u32, y: u32, w: u32) -> u32{
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `render_tile`
[INFO] [stdout]   --> src/art.rs:46:12
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn render_tile(&self, 
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new`
[INFO] [stdout]   --> src/art.rs:73:12
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub fn new(path: String, width: u32, height: u32) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Fixed`
[INFO] [stdout]   --> src/button.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     Fixed((u32, u32)),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `CenteredOffset`
[INFO] [stdout]   --> src/button.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     CenteredOffset((i32, u32))
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Finish`
[INFO] [stdout]   --> src/game_board.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     Finish,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 24 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 1m 10s
[INFO] running `Command { std: "docker" "inspect" "2adb0e686316c43e5c41f3ad13342f4892875660f08485eff1d625835854692e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2adb0e686316c43e5c41f3ad13342f4892875660f08485eff1d625835854692e", kill_on_drop: false }`
[INFO] [stdout] 2adb0e686316c43e5c41f3ad13342f4892875660f08485eff1d625835854692e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/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=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3e0e6dddb242b56bfc3373110ab6f53afc4ad88a667989a9bfe2642c20aa5c4a
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "3e0e6dddb242b56bfc3373110ab6f53afc4ad88a667989a9bfe2642c20aa5c4a", kill_on_drop: false }`
[INFO] [stderr]    Compiling game-engine v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]   --> src/art.rs:90:35
[INFO] [stdout]    |
[INFO] [stdout] 90 | ...                   (image_width/width),
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]   --> src/art.rs:91:35
[INFO] [stdout]    |
[INFO] [stdout] 91 | ...                   (image_height/height))
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> src/button.rs:161:9
[INFO] [stdout]     |
[INFO] [stdout] 161 | /         (_pos.mouse_x >= xbound &&
[INFO] [stdout] 162 | |          _pos.mouse_x <= xbound + self.w &&
[INFO] [stdout] 163 | |          _pos.mouse_y >= ybound &&
[INFO] [stdout] 164 | |          _pos.mouse_y <= ybound + self.h)
[INFO] [stdout]     | |_________________________________________^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 161 |         _pos.mouse_x >= xbound &&
[INFO] [stdout] 162 |          _pos.mouse_x <= xbound + self.w &&
[INFO] [stdout] 163 |          _pos.mouse_y >= ybound &&
[INFO] [stdout] 164 |          _pos.mouse_y <= ybound + self.h
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/game_board.rs:111:16
[INFO] [stdout]     |
[INFO] [stdout] 111 |             if (px == *x && py == *y) {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> src/game_board.rs:121:9
[INFO] [stdout]     |
[INFO] [stdout] 121 |         (*x == px && *y == py)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: denote infinite loops with `loop { ... }`
[INFO] [stdout]    --> src/game_board.rs:135:9
[INFO] [stdout]     |
[INFO] [stdout] 135 |         while true {
[INFO] [stdout]     |         ^^^^^^^^^^ help: use `loop`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(while_true)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `graphics::*`
[INFO] [stdout]   --> src/main.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use graphics::*;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `art::*`
[INFO] [stdout]   --> src/main.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | use art::*;
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]   --> src/app_base.rs:63:28
[INFO] [stdout]    |
[INFO] [stdout] 63 |     fn key_press(&mut self,key: Key) {
[INFO] [stdout]    |                            ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]   --> src/app_base.rs:66:31
[INFO] [stdout]    |
[INFO] [stdout] 66 |     fn key_release(&mut self, key: Key) {
[INFO] [stdout]    |                               ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/art.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 |         Ok(x) => {},
[INFO] [stdout]    |            ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/art.rs:30:13
[INFO] [stdout]    |
[INFO] [stdout] 30 |         Err(e) => {}
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/title_screen.rs:118:29
[INFO] [stdout]     |
[INFO] [stdout] 118 |     fn key_press(&mut self, key: Key) -> TitleEvent {
[INFO] [stdout]     |                             ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/title_screen.rs:121:31
[INFO] [stdout]     |
[INFO] [stdout] 121 |     fn key_release(&mut self, key: Key) -> TitleEvent {
[INFO] [stdout]     |                               ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/game_board.rs:280:31
[INFO] [stdout]     |
[INFO] [stdout] 280 |     fn key_release(&mut self, key: Key) -> GameBoardEvent {
[INFO] [stdout]     |                               ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `width`
[INFO] [stdout]   --> src/art.rs:36:4
[INFO] [stdout]    |
[INFO] [stdout] 36 |    width: u32,
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `height`
[INFO] [stdout]   --> src/art.rs:37:3
[INFO] [stdout]    |
[INFO] [stdout] 37 |   height: u32,
[INFO] [stdout]    |   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `sheet`
[INFO] [stdout]   --> src/art.rs:38:4
[INFO] [stdout]    |
[INFO] [stdout] 38 |    sheet: Vec<Texture> 
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `get_index`
[INFO] [stdout]   --> src/art.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 42 |     fn get_index(x: u32, y: u32, w: u32) -> u32{
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `render_tile`
[INFO] [stdout]   --> src/art.rs:46:12
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn render_tile(&self, 
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `new`
[INFO] [stdout]   --> src/art.rs:73:12
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub fn new(path: String, width: u32, height: u32) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Fixed`
[INFO] [stdout]   --> src/button.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     Fixed((u32, u32)),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `CenteredOffset`
[INFO] [stdout]   --> src/button.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 |     CenteredOffset((i32, u32))
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant is never constructed: `Finish`
[INFO] [stdout]   --> src/game_board.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     Finish,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 2.34s
[INFO] [stdout] warning: 24 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "3e0e6dddb242b56bfc3373110ab6f53afc4ad88a667989a9bfe2642c20aa5c4a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3e0e6dddb242b56bfc3373110ab6f53afc4ad88a667989a9bfe2642c20aa5c4a", kill_on_drop: false }`
[INFO] [stdout] 3e0e6dddb242b56bfc3373110ab6f53afc4ad88a667989a9bfe2642c20aa5c4a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/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=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 08f5e4e868e26a77e505250f5f2f44e08147353edfd768f5165878d552a39722
[INFO] running `Command { std: "docker" "start" "-a" "08f5e4e868e26a77e505250f5f2f44e08147353edfd768f5165878d552a39722", kill_on_drop: false }`
[INFO] [stderr] warning: unnecessary parentheses around method argument
[INFO] [stderr]   --> src/art.rs:90:35
[INFO] [stderr]    |
[INFO] [stderr] 90 | ...                   (image_width/width),
[INFO] [stderr]    |                       ^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around method argument
[INFO] [stderr]   --> src/art.rs:91:35
[INFO] [stderr]    |
[INFO] [stderr] 91 | ...                   (image_height/height))
[INFO] [stderr]    |                       ^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around block return value
[INFO] [stderr]    --> src/button.rs:161:9
[INFO] [stderr]     |
[INFO] [stderr] 161 | /         (_pos.mouse_x >= xbound &&
[INFO] [stderr] 162 | |          _pos.mouse_x <= xbound + self.w &&
[INFO] [stderr] 163 | |          _pos.mouse_y >= ybound &&
[INFO] [stderr] 164 | |          _pos.mouse_y <= ybound + self.h)
[INFO] [stderr]     | |_________________________________________^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 161 |         _pos.mouse_x >= xbound &&
[INFO] [stderr] 162 |          _pos.mouse_x <= xbound + self.w &&
[INFO] [stderr] 163 |          _pos.mouse_y >= ybound &&
[INFO] [stderr] 164 |          _pos.mouse_y <= ybound + self.h
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/game_board.rs:111:16
[INFO] [stderr]     |
[INFO] [stderr] 111 |             if (px == *x && py == *y) {
[INFO] [stderr]     |                ^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around block return value
[INFO] [stderr]    --> src/game_board.rs:121:9
[INFO] [stderr]     |
[INFO] [stderr] 121 |         (*x == px && *y == py)
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: denote infinite loops with `loop { ... }`
[INFO] [stderr]    --> src/game_board.rs:135:9
[INFO] [stderr]     |
[INFO] [stderr] 135 |         while true {
[INFO] [stderr]     |         ^^^^^^^^^^ help: use `loop`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(while_true)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `graphics::*`
[INFO] [stderr]   --> src/main.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr] 21 | use graphics::*;
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `art::*`
[INFO] [stderr]   --> src/main.rs:23:5
[INFO] [stderr]    |
[INFO] [stderr] 23 | use art::*;
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `key`
[INFO] [stderr]   --> src/app_base.rs:63:28
[INFO] [stderr]    |
[INFO] [stderr] 63 |     fn key_press(&mut self,key: Key) {
[INFO] [stderr]    |                            ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `key`
[INFO] [stderr]   --> src/app_base.rs:66:31
[INFO] [stderr]    |
[INFO] [stderr] 66 |     fn key_release(&mut self, key: Key) {
[INFO] [stderr]    |                               ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `x`
[INFO] [stderr]   --> src/art.rs:29:12
[INFO] [stderr]    |
[INFO] [stderr] 29 |         Ok(x) => {},
[INFO] [stderr]    |            ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]   --> src/art.rs:30:13
[INFO] [stderr]    |
[INFO] [stderr] 30 |         Err(e) => {}
[INFO] [stderr]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `key`
[INFO] [stderr]    --> src/title_screen.rs:118:29
[INFO] [stderr]     |
[INFO] [stderr] 118 |     fn key_press(&mut self, key: Key) -> TitleEvent {
[INFO] [stderr]     |                             ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `key`
[INFO] [stderr]    --> src/title_screen.rs:121:31
[INFO] [stderr]     |
[INFO] [stderr] 121 |     fn key_release(&mut self, key: Key) -> TitleEvent {
[INFO] [stderr]     |                               ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `key`
[INFO] [stderr]    --> src/game_board.rs:280:31
[INFO] [stderr]     |
[INFO] [stderr] 280 |     fn key_release(&mut self, key: Key) -> GameBoardEvent {
[INFO] [stderr]     |                               ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stderr] 
[INFO] [stderr] warning: field is never read: `width`
[INFO] [stderr]   --> src/art.rs:36:4
[INFO] [stderr]    |
[INFO] [stderr] 36 |    width: u32,
[INFO] [stderr]    |    ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field is never read: `height`
[INFO] [stderr]   --> src/art.rs:37:3
[INFO] [stderr]    |
[INFO] [stderr] 37 |   height: u32,
[INFO] [stderr]    |   ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field is never read: `sheet`
[INFO] [stderr]   --> src/art.rs:38:4
[INFO] [stderr]    |
[INFO] [stderr] 38 |    sheet: Vec<Texture> 
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `get_index`
[INFO] [stderr]   --> src/art.rs:42:8
[INFO] [stderr]    |
[INFO] [stderr] 42 |     fn get_index(x: u32, y: u32, w: u32) -> u32{
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `render_tile`
[INFO] [stderr]   --> src/art.rs:46:12
[INFO] [stderr]    |
[INFO] [stderr] 46 |     pub fn render_tile(&self, 
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function is never used: `new`
[INFO] [stderr]   --> src/art.rs:73:12
[INFO] [stderr]    |
[INFO] [stderr] 73 |     pub fn new(path: String, width: u32, height: u32) -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variant is never constructed: `Fixed`
[INFO] [stderr]   --> src/button.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr] 21 |     Fixed((u32, u32)),
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variant is never constructed: `CenteredOffset`
[INFO] [stderr]   --> src/button.rs:23:5
[INFO] [stderr]    |
[INFO] [stderr] 23 |     CenteredOffset((i32, u32))
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variant is never constructed: `Finish`
[INFO] [stderr]   --> src/game_board.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 |     Finish,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: 24 warnings emitted
[INFO] [stderr] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.76s
[INFO] [stderr]      Running /opt/rustwide/target/debug/deps/game_engine-f61bcb0707f924fc
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "08f5e4e868e26a77e505250f5f2f44e08147353edfd768f5165878d552a39722", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "08f5e4e868e26a77e505250f5f2f44e08147353edfd768f5165878d552a39722", kill_on_drop: false }`
[INFO] [stdout] 08f5e4e868e26a77e505250f5f2f44e08147353edfd768f5165878d552a39722
