[INFO] cloning repository https://github.com/AnzilottiChristopher/Snake_Game_rust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/AnzilottiChristopher/Snake_Game_rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAnzilottiChristopher%2FSnake_Game_rust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAnzilottiChristopher%2FSnake_Game_rust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a6b340dc1c222647bae9ac71230c4303a41473c5
[INFO] checking AnzilottiChristopher/Snake_Game_rust against eca445e5ae4a6679cc27d3a09106ce245e13a5a6 for pr-162478
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAnzilottiChristopher%2FSnake_Game_rust" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/AnzilottiChristopher/Snake_Game_rust
[INFO] finished tweaking git repo https://github.com/AnzilottiChristopher/Snake_Game_rust
[INFO] tweaked toml for git repo https://github.com/AnzilottiChristopher/Snake_Game_rust written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/AnzilottiChristopher/Snake_Game_rust on toolchain eca445e5ae4a6679cc27d3a09106ce245e13a5a6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/AnzilottiChristopher/Snake_Game_rust already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: binary `Snake_Game` should have a kebab-case name
[INFO] [stderr]    |
[INFO] [stderr]  1 | /workspace/builds/worker-3-tc1/source/target/.../Snake_Game
[INFO] [stderr]    |                                                  ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::non_kebab_case_bins` is set to `warn` by default
[INFO] [stderr] help: to change the binary name to `snake-game`, convert `package.name`
[INFO] [stderr]   --> Cargo.toml:7:8
[INFO] [stderr]    |
[INFO] [stderr]  7 - name = "Snake_Game"
[INFO] [stderr]  7 + name = "snake-game"
[INFO] [stderr]    |
[INFO] [stderr] help: to change the binary name to `snake-game`, specify `bin.name`
[INFO] [stderr]   --> Cargo.toml:8:19
[INFO] [stderr]    |
[INFO] [stderr]  8 ~ version = "0.1.0"
[INFO] [stderr]  9 + [[bin]]
[INFO] [stderr] 10 + name = "snake-game"
[INFO] [stderr] 11 + path = "src/main.rs"
[INFO] [stderr]    |
[INFO] [stderr] warning: `Snake_Game` (manifest) generated 1 warning
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded piston_window v0.120.0
[INFO] [stderr]   Downloaded piston-graphics_api_version v1.0.1
[INFO] [stderr]   Downloaded shader_version v0.7.0
[INFO] [stderr]   Downloaded pistoncore-glutin_window v0.69.0
[INFO] [stderr]   Downloaded pistoncore-window v0.47.1
[INFO] [stderr]   Downloaded gl v0.13.0
[INFO] [stderr]   Downloaded num_enum v0.4.3
[INFO] [stderr]   Downloaded glutin_glx_sys v0.1.8
[INFO] [stderr]   Downloaded pistoncore-input v1.0.1
[INFO] [stderr]   Downloaded gfx v0.18.3
[INFO] [stderr]   Downloaded ndk-macro v0.2.0
[INFO] [stderr]   Downloaded andrew v0.3.1
[INFO] [stderr]   Downloaded wayland-egl v0.28.6
[INFO] [stderr]   Downloaded piston-gfx_texture v0.41.0
[INFO] [stderr]   Downloaded gfx_gl v0.6.1
[INFO] [stderr]   Downloaded ndk-glue v0.2.1
[INFO] [stderr]   Downloaded glutin_egl_sys v0.1.6
[INFO] [stderr]   Downloaded dlib v0.4.2
[INFO] [stderr]   Downloaded pistoncore-event_loop v0.53.1
[INFO] [stderr]   Downloaded vecmath v1.0.0
[INFO] [stderr]   Downloaded wayland-cursor v0.28.6
[INFO] [stderr]   Downloaded num_enum_derive v0.4.3
[INFO] [stderr]   Downloaded spin_sleep v1.3.3
[INFO] [stderr]   Downloaded piston-viewport v1.0.2
[INFO] [stderr]   Downloaded calloop v0.6.5
[INFO] [stderr]   Downloaded draw_state v0.8.0
[INFO] [stderr]   Downloaded piston v0.53.2
[INFO] [stderr]   Downloaded piston-shaders_graphics2d v0.4.0
[INFO] [stderr]   Downloaded wayland-sys v0.28.6
[INFO] [stderr]   Downloaded piston-float v1.0.1
[INFO] [stderr]   Downloaded piston-texture v0.8.0
[INFO] [stderr]   Downloaded piston2d-gfx_graphics v0.73.0
[INFO] [stderr]   Downloaded wayland-scanner v0.28.6
[INFO] [stderr]   Downloaded wayland-commons v0.28.6
[INFO] [stderr]   Downloaded piston2d-graphics v0.40.0
[INFO] [stderr]   Downloaded ndk v0.2.1
[INFO] [stderr]   Downloaded gfx_core v0.9.2
[INFO] [stderr]   Downloaded gfx_device_gl v0.16.2
[INFO] [stderr]   Downloaded cocoa v0.23.0
[INFO] [stderr]   Downloaded wayland-client v0.28.6
[INFO] [stderr]   Downloaded glutin v0.26.0
[INFO] [stderr]   Downloaded wayland-protocols v0.28.6
[INFO] [stderr]   Downloaded smithay-client-toolkit v0.12.3
[INFO] [stderr]   Downloaded nix v0.20.0
[INFO] [stderr]   Downloaded nix v0.18.0
[INFO] [stderr]   Downloaded winit v0.24.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 9580b6b94d363ee4c269b7a209e4e7d65cdc6389dbebba20f91193bda5e37b23
[INFO] running `Command { std: "docker" "start" "9580b6b94d363ee4c269b7a209e4e7d65cdc6389dbebba20f91193bda5e37b23", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9580b6b94d363ee4c269b7a209e4e7d65cdc6389dbebba20f91193bda5e37b23", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "9580b6b94d363ee4c269b7a209e4e7d65cdc6389dbebba20f91193bda5e37b23" "/opt/rustwide/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9580b6b94d363ee4c269b7a209e4e7d65cdc6389dbebba20f91193bda5e37b23", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "9580b6b94d363ee4c269b7a209e4e7d65cdc6389dbebba20f91193bda5e37b23" "/opt/rustwide/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: binary `Snake_Game` should have a kebab-case name
[INFO] [stderr]    |
[INFO] [stderr]  1 | /opt/rustwide/target/.../Snake_Game
[INFO] [stderr]    |                          ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::non_kebab_case_bins` is set to `warn` by default
[INFO] [stderr] help: to change the binary name to `snake-game`, convert `package.name`
[INFO] [stderr]   --> Cargo.toml:7:8
[INFO] [stderr]    |
[INFO] [stderr]  7 - name = "Snake_Game"
[INFO] [stderr]  7 + name = "snake-game"
[INFO] [stderr]    |
[INFO] [stderr] help: to change the binary name to `snake-game`, specify `bin.name`
[INFO] [stderr]   --> Cargo.toml:8:19
[INFO] [stderr]    |
[INFO] [stderr]  8 ~ version = "0.1.0"
[INFO] [stderr]  9 + [[bin]]
[INFO] [stderr] 10 + name = "snake-game"
[INFO] [stderr] 11 + path = "src/main.rs"
[INFO] [stderr]    |
[INFO] [stderr] warning: `Snake_Game` (manifest) generated 1 warning
[INFO] [stderr]    Compiling libc v0.2.185
[INFO] [stderr]    Compiling wayland-sys v0.28.6
[INFO] [stderr]     Checking piston-float v1.0.1
[INFO] [stderr]     Checking ttf-parser v0.15.2
[INFO] [stderr]    Compiling nix v0.18.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling miniz_oxide v0.4.4
[INFO] [stderr]     Checking adler32 v1.2.0
[INFO] [stderr]    Compiling parking_lot_core v0.8.6
[INFO] [stderr]     Checking piston-graphics_api_version v1.0.1
[INFO] [stderr]    Compiling wayland-scanner v0.28.6
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]     Checking piston-viewport v1.0.2
[INFO] [stderr]     Checking rayon v1.12.0
[INFO] [stderr]     Checking draw_state v0.8.0
[INFO] [stderr]    Compiling num-rational v0.3.2
[INFO] [stderr]     Checking libloading v0.6.7
[INFO] [stderr]     Checking weezl v0.1.12
[INFO] [stderr]     Checking cty v0.2.2
[INFO] [stderr]     Checking xdg v2.5.2
[INFO] [stderr]     Checking xml-rs v0.8.28
[INFO] [stderr]     Checking miniz_oxide v0.3.7
[INFO] [stderr]     Checking dlib v0.4.2
[INFO] [stderr]     Checking deflate v0.8.6
[INFO] [stderr]     Checking raw-window-handle v0.4.3
[INFO] [stderr]    Compiling glutin_egl_sys v0.1.6
[INFO] [stderr]    Compiling glutin_glx_sys v0.1.8
[INFO] [stderr]    Compiling gl_generator v0.13.1
[INFO] [stderr]     Checking lazycell v1.3.0
[INFO] [stderr]     Checking gfx_core v0.9.2
[INFO] [stderr]     Checking color_quant v1.1.0
[INFO] [stderr]     Checking num-iter v0.1.45
[INFO] [stderr]    Compiling gfx_gl v0.6.1
[INFO] [stderr]     Checking gif v0.11.4
[INFO] [stderr]     Checking scoped_threadpool v0.1.9
[INFO] [stderr]     Checking piston-texture v0.8.0
[INFO] [stderr]     Checking bytemuck v1.25.0
[INFO] [stderr]     Checking shader_version v0.7.0
[INFO] [stderr]     Checking vecmath v1.0.0
[INFO] [stderr]     Checking spin_sleep v1.3.3
[INFO] [stderr]     Checking png v0.16.8
[INFO] [stderr]     Checking interpolation v0.2.0
[INFO] [stderr]     Checking read_color v1.0.0
[INFO] [stderr]     Checking piston-shaders_graphics2d v0.4.0
[INFO] [stderr]    Compiling gl v0.13.0
[INFO] [stderr]    Compiling wayland-client v0.28.6
[INFO] [stderr]    Compiling wayland-protocols v0.28.6
[INFO] [stderr]     Checking gfx v0.18.3
[INFO] [stderr]     Checking gfx_device_gl v0.16.2
[INFO] [stderr]     Checking owned_ttf_parser v0.15.2
[INFO] [stderr]     Checking rusttype v0.9.3
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]     Checking nix v0.20.0
[INFO] [stderr]     Checking net2 v0.2.39
[INFO] [stderr]     Checking iovec v0.1.4
[INFO] [stderr]     Checking memmap2 v0.1.0
[INFO] [stderr]     Checking x11-dl v2.21.0
[INFO] [stderr]     Checking shared_library v0.1.9
[INFO] [stderr]     Checking raw-window-handle v0.3.4
[INFO] [stderr]     Checking rand v0.4.6
[INFO] [stderr]     Checking andrew v0.3.1
[INFO] [stderr]     Checking parking_lot v0.11.2
[INFO] [stderr]     Checking piston2d-graphics v0.40.0
[INFO] [stderr]     Checking osmesa-sys v0.1.2
[INFO] [stderr]     Checking mio v0.6.23
[INFO] [stderr]     Checking rand v0.3.23
[INFO] [stderr]     Checking mio-extras v2.0.6
[INFO] [stderr]     Checking jpeg-decoder v0.1.22
[INFO] [stderr]     Checking tiff v0.6.1
[INFO] [stderr]     Checking image v0.23.14
[INFO] [stderr]     Checking pistoncore-input v1.0.1
[INFO] [stderr]     Checking calloop v0.6.5
[INFO] [stderr]     Checking pistoncore-window v0.47.1
[INFO] [stderr]     Checking pistoncore-event_loop v0.53.1
[INFO] [stderr]     Checking piston v0.53.2
[INFO] [stderr]     Checking wayland-commons v0.28.6
[INFO] [stderr]     Checking piston-gfx_texture v0.41.0
[INFO] [stderr]     Checking piston2d-gfx_graphics v0.73.0
[INFO] [stderr]     Checking wayland-cursor v0.28.6
[INFO] [stderr]     Checking wayland-egl v0.28.6
[INFO] [stderr]     Checking smithay-client-toolkit v0.12.3
[INFO] [stderr]     Checking winit v0.24.0
[INFO] [stderr]     Checking glutin v0.26.0
[INFO] [stderr]     Checking pistoncore-glutin_window v0.69.0
[INFO] [stderr]     Checking piston_window v0.120.0
[INFO] [stderr]     Checking Snake_Game v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Rng` and `thread_rng`
[INFO] [stdout]  --> src/game.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | use rand::{Rng, thread_rng};
[INFO] [stdout]   |            ^^^  ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `draw_block` and `draw_rectangle`
[INFO] [stdout]  --> src/game.rs:6:19
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::draw::{draw_block, draw_rectangle};
[INFO] [stdout]   |                   ^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Rng` and `thread_rng`
[INFO] [stdout]  --> src/game.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | use rand::{Rng, thread_rng};
[INFO] [stdout]   |            ^^^  ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `draw_block` and `draw_rectangle`
[INFO] [stdout]  --> src/game.rs:6:19
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::draw::{draw_block, draw_rectangle};
[INFO] [stdout]   |                   ^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BLOCK_SIZE` is never used
[INFO] [stdout]  --> src/draw.rs:4:7
[INFO] [stdout]   |
[INFO] [stdout] 4 | const BLOCK_SIZE: f64 = 25.0;
[INFO] [stdout]   |       ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_coord` is never used
[INFO] [stdout]  --> src/draw.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn to_coord(game_coord: i32) -> f64 {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `draw_block` is never used
[INFO] [stdout]   --> src/draw.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn draw_block(color: Color, x: i32, y: i32, con: &Context, g: &mut G2d) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `draw_rectangle` is never used
[INFO] [stdout]   --> src/draw.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn draw_rectangle(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FOOD_COLOR` is never used
[INFO] [stdout]  --> src/game.rs:9:7
[INFO] [stdout]   |
[INFO] [stdout] 9 | const FOOD_COLOR: Color = [0.80, 0.00, 0.00, 1.0];
[INFO] [stdout]   |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BORDER_COLOR` is never used
[INFO] [stdout]   --> src/game.rs:10:7
[INFO] [stdout]    |
[INFO] [stdout] 10 | const BORDER_COLOR: Color = [0.00, 0.00, 0.00, 1.0];
[INFO] [stdout]    |       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GAMEOVER_COLOR` is never used
[INFO] [stdout]   --> src/game.rs:11:7
[INFO] [stdout]    |
[INFO] [stdout] 11 | const GAMEOVER_COLOR: Color = [0.90, 0.00, 0.00, 0.5];
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MOVING_PERIOD` is never used
[INFO] [stdout]   --> src/game.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const MOVING_PERIOD: f64 = 0.1;
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RESTART_TIME` is never used
[INFO] [stdout]   --> src/game.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | const RESTART_TIME: f64 = 1.0;
[INFO] [stdout]    |       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Game` is never constructed
[INFO] [stdout]   --> src/game.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct Game {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `key_pressed` are never used
[INFO] [stdout]   --> src/game.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl Game {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 30 |     pub fn new(width: i32, height: i32) -> Game {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub fn key_pressed(&mut self, key: Key) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SNAKE_COLOR` is never used
[INFO] [stdout]  --> src/snake.rs:7:7
[INFO] [stdout]   |
[INFO] [stdout] 7 | const SNAKE_COLOR: Color = [0.00, 0.80, 0.00, 1.0];
[INFO] [stdout]   |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Direction` is never used
[INFO] [stdout]   --> src/snake.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub enum Direction {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `opposite` is never used
[INFO] [stdout]   --> src/snake.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl Direction {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] 17 |     pub fn opposite(&self) -> Direction {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Block` is never constructed
[INFO] [stdout]   --> src/snake.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 28 | struct Block {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Snake` is never constructed
[INFO] [stdout]   --> src/snake.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct Snake {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/snake.rs:39:12
[INFO] [stdout]     |
[INFO] [stdout]  38 | impl Snake {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout]  39 |     pub fn new(x: i32, y: i32) -> Snake {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  51 |     pub fn draw(&self, con: &Context, g: &mut G2d) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  56 |     pub fn head_position(&self) -> (i32, i32) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  60 |     pub fn move_forward(&mut self, dir: Option<Direction>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |     pub fn head_direction(&self) -> Direction {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub fn next_head(&self, dir: Option<Direction>) -> (i32, i32) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 112 |     pub fn restore_tail(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn overlap_tail(&self, x: i32, y: i32) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BLOCK_SIZE` is never used
[INFO] [stdout]  --> src/draw.rs:4:7
[INFO] [stdout]   |
[INFO] [stdout] 4 | const BLOCK_SIZE: f64 = 25.0;
[INFO] [stdout]   |       ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_coord` is never used
[INFO] [stdout]  --> src/draw.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn to_coord(game_coord: i32) -> f64 {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `draw_block` is never used
[INFO] [stdout]   --> src/draw.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn draw_block(color: Color, x: i32, y: i32, con: &Context, g: &mut G2d) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `draw_rectangle` is never used
[INFO] [stdout]   --> src/draw.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn draw_rectangle(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FOOD_COLOR` is never used
[INFO] [stdout]  --> src/game.rs:9:7
[INFO] [stdout]   |
[INFO] [stdout] 9 | const FOOD_COLOR: Color = [0.80, 0.00, 0.00, 1.0];
[INFO] [stdout]   |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BORDER_COLOR` is never used
[INFO] [stdout]   --> src/game.rs:10:7
[INFO] [stdout]    |
[INFO] [stdout] 10 | const BORDER_COLOR: Color = [0.00, 0.00, 0.00, 1.0];
[INFO] [stdout]    |       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GAMEOVER_COLOR` is never used
[INFO] [stdout]   --> src/game.rs:11:7
[INFO] [stdout]    |
[INFO] [stdout] 11 | const GAMEOVER_COLOR: Color = [0.90, 0.00, 0.00, 0.5];
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MOVING_PERIOD` is never used
[INFO] [stdout]   --> src/game.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const MOVING_PERIOD: f64 = 0.1;
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RESTART_TIME` is never used
[INFO] [stdout]   --> src/game.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | const RESTART_TIME: f64 = 1.0;
[INFO] [stdout]    |       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Game` is never constructed
[INFO] [stdout]   --> src/game.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct Game {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `key_pressed` are never used
[INFO] [stdout]   --> src/game.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | impl Game {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 30 |     pub fn new(width: i32, height: i32) -> Game {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub fn key_pressed(&mut self, key: Key) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SNAKE_COLOR` is never used
[INFO] [stdout]  --> src/snake.rs:7:7
[INFO] [stdout]   |
[INFO] [stdout] 7 | const SNAKE_COLOR: Color = [0.00, 0.80, 0.00, 1.0];
[INFO] [stdout]   |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Direction` is never used
[INFO] [stdout]   --> src/snake.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub enum Direction {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `opposite` is never used
[INFO] [stdout]   --> src/snake.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl Direction {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] 17 |     pub fn opposite(&self) -> Direction {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Block` is never constructed
[INFO] [stdout]   --> src/snake.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 28 | struct Block {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Snake` is never constructed
[INFO] [stdout]   --> src/snake.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct Snake {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/snake.rs:39:12
[INFO] [stdout]     |
[INFO] [stdout]  38 | impl Snake {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout]  39 |     pub fn new(x: i32, y: i32) -> Snake {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  51 |     pub fn draw(&self, con: &Context, g: &mut G2d) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  56 |     pub fn head_position(&self) -> (i32, i32) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  60 |     pub fn move_forward(&mut self, dir: Option<Direction>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |     pub fn head_direction(&self) -> Direction {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub fn next_head(&self, dir: Option<Direction>) -> (i32, i32) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 112 |     pub fn restore_tail(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn overlap_tail(&self, x: i32, y: i32) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 39.50s
[INFO] running `Command { std: "docker" "inspect" "9580b6b94d363ee4c269b7a209e4e7d65cdc6389dbebba20f91193bda5e37b23", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9580b6b94d363ee4c269b7a209e4e7d65cdc6389dbebba20f91193bda5e37b23", kill_on_drop: false }`
[INFO] [stdout] 9580b6b94d363ee4c269b7a209e4e7d65cdc6389dbebba20f91193bda5e37b23
