[INFO] cloning repository https://github.com/ysissoko/pacman-rust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ysissoko/pacman-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fysissoko%2Fpacman-rust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fysissoko%2Fpacman-rust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 3606c0a08add4322eccd38fa4c24d303dee648cc
[INFO] checking ysissoko/pacman-rust against eca445e5ae4a6679cc27d3a09106ce245e13a5a6 for pr-162478
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fysissoko%2Fpacman-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/ysissoko/pacman-rust
[INFO] finished tweaking git repo https://github.com/ysissoko/pacman-rust
[INFO] tweaked toml for git repo https://github.com/ysissoko/pacman-rust written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/ysissoko/pacman-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/ysissoko/pacman-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]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded piston-graphics_api_version v1.0.1
[INFO] [stderr]   Downloaded piston_window v0.130.0
[INFO] [stderr]   Downloaded shader_version v0.7.0
[INFO] [stderr]   Downloaded zerocopy-derive v0.8.25
[INFO] [stderr]   Downloaded libloading v0.8.7
[INFO] [stderr]   Downloaded objc2-encode v2.0.0-pre.2
[INFO] [stderr]   Downloaded tiny-skia-path v0.8.4
[INFO] [stderr]   Downloaded block-sys v0.1.0-beta.1
[INFO] [stderr]   Downloaded glutin_glx_sys v0.4.0
[INFO] [stderr]   Downloaded vecmath v1.0.0
[INFO] [stderr]   Downloaded piston-texture v0.9.0
[INFO] [stderr]   Downloaded piston-gfx_texture v0.44.0
[INFO] [stderr]   Downloaded wayland-sys v0.29.5
[INFO] [stderr]   Downloaded xcursor v0.3.8
[INFO] [stderr]   Downloaded draw_state v0.8.0
[INFO] [stderr]   Downloaded piston-viewport v1.0.2
[INFO] [stderr]   Downloaded wayland-sys v0.30.1
[INFO] [stderr]   Downloaded gl v0.13.0
[INFO] [stderr]   Downloaded block2 v0.2.0-alpha.6
[INFO] [stderr]   Downloaded spin_sleep v1.3.1
[INFO] [stderr]   Downloaded ab_glyph_rasterizer v0.1.8
[INFO] [stderr]   Downloaded piston v0.54.0
[INFO] [stderr]   Downloaded glutin_wgl_sys v0.4.0
[INFO] [stderr]   Downloaded pistoncore-event_loop v0.54.0
[INFO] [stderr]   Downloaded read_color v1.0.0
[INFO] [stderr]   Downloaded interpolation v0.3.0
[INFO] [stderr]   Downloaded gfx_gl v0.6.1
[INFO] [stderr]   Downloaded find_folder v0.3.0
[INFO] [stderr]   Downloaded glutin_egl_sys v0.5.1
[INFO] [stderr]   Downloaded num_enum_derive v0.5.11
[INFO] [stderr]   Downloaded piston-float v1.0.1
[INFO] [stderr]   Downloaded pistoncore-window v1.0.0
[INFO] [stderr]   Downloaded wayland-cursor v0.29.5
[INFO] [stderr]   Downloaded toml_datetime v0.6.9
[INFO] [stderr]   Downloaded piston-shaders_graphics2d v0.4.0
[INFO] [stderr]   Downloaded num_enum_derive v0.6.1
[INFO] [stderr]   Downloaded glutin-winit v0.3.0
[INFO] [stderr]   Downloaded gfx v0.18.3
[INFO] [stderr]   Downloaded wayland-scanner v0.29.5
[INFO] [stderr]   Downloaded wayland-commons v0.29.5
[INFO] [stderr]   Downloaded objc-sys v0.2.0-beta.2
[INFO] [stderr]   Downloaded piston2d-gfx_graphics v0.80.0
[INFO] [stderr]   Downloaded ab_glyph v0.2.29
[INFO] [stderr]   Downloaded redox_syscall v0.3.5
[INFO] [stderr]   Downloaded num_enum v0.5.11
[INFO] [stderr]   Downloaded num_enum v0.6.1
[INFO] [stderr]   Downloaded pistoncore-input v1.0.1
[INFO] [stderr]   Downloaded gl_generator v0.13.1
[INFO] [stderr]   Downloaded piston2d-graphics v0.44.0
[INFO] [stderr]   Downloaded gfx_core v0.9.2
[INFO] [stderr]   Downloaded raw-window-handle v0.5.2
[INFO] [stderr]   Downloaded redox_syscall v0.5.12
[INFO] [stderr]   Downloaded sctk-adwaita v0.5.4
[INFO] [stderr]   Downloaded gif v0.13.1
[INFO] [stderr]   Downloaded bytemuck v1.23.0
[INFO] [stderr]   Downloaded gfx_device_gl v0.16.2
[INFO] [stderr]   Downloaded pistoncore-glutin_window v0.72.0
[INFO] [stderr]   Downloaded calloop v0.10.6
[INFO] [stderr]   Downloaded glutin v0.30.10
[INFO] [stderr]   Downloaded wayland-client v0.29.5
[INFO] [stderr]   Downloaded cc v1.2.23
[INFO] [stderr]   Downloaded wayland-protocols v0.29.5
[INFO] [stderr]   Downloaded smithay-client-toolkit v0.16.1
[INFO] [stderr]   Downloaded portable-atomic v1.11.0
[INFO] [stderr]   Downloaded objc2 v0.3.0-beta.3.patch-leaks.3
[INFO] [stderr]   Downloaded zerocopy v0.8.25
[INFO] [stderr]   Downloaded hashbrown v0.15.3
[INFO] [stderr]   Downloaded tiny-skia v0.8.4
[INFO] [stderr]   Downloaded nix v0.24.3
[INFO] [stderr]   Downloaded android-activity v0.4.3
[INFO] [stderr]   Downloaded ndarray v0.16.1
[INFO] [stderr]   Downloaded winit v0.28.7
[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] 18486bec86da8864035347dc029aac9a30065670506e5258ebf0b236ed442f4c
[INFO] running `Command { std: "docker" "start" "18486bec86da8864035347dc029aac9a30065670506e5258ebf0b236ed442f4c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "18486bec86da8864035347dc029aac9a30065670506e5258ebf0b236ed442f4c", 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" "18486bec86da8864035347dc029aac9a30065670506e5258ebf0b236ed442f4c" "/opt/rustwide/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "18486bec86da8864035347dc029aac9a30065670506e5258ebf0b236ed442f4c", 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" "18486bec86da8864035347dc029aac9a30065670506e5258ebf0b236ed442f4c" "/opt/rustwide/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling xml-rs v0.8.26
[INFO] [stderr]     Checking bitflags v1.3.2
[INFO] [stderr]    Compiling libc v0.2.172
[INFO] [stderr]    Compiling khronos_api v3.1.0
[INFO] [stderr]    Compiling log v0.4.27
[INFO] [stderr]     Checking simd-adler32 v0.3.7
[INFO] [stderr]    Compiling memoffset v0.6.5
[INFO] [stderr]    Compiling syn v2.0.101
[INFO] [stderr]     Checking libloading v0.8.7
[INFO] [stderr]     Checking adler2 v2.0.0
[INFO] [stderr]     Checking smallvec v1.15.0
[INFO] [stderr]     Checking dlib v0.5.2
[INFO] [stderr]    Compiling wayland-sys v0.29.5
[INFO] [stderr]     Checking miniz_oxide v0.8.8
[INFO] [stderr]     Checking crc32fast v1.4.2
[INFO] [stderr]    Compiling cfg_aliases v0.1.1
[INFO] [stderr]     Checking bytemuck v1.23.0
[INFO] [stderr]     Checking fdeflate v0.3.7
[INFO] [stderr]     Checking piston-float v1.0.1
[INFO] [stderr]    Compiling rayon-core v1.12.1
[INFO] [stderr]    Compiling slotmap v1.0.7
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking downcast-rs v1.2.1
[INFO] [stderr]     Checking ab_glyph_rasterizer v0.1.8
[INFO] [stderr]     Checking scoped-tls v1.0.1
[INFO] [stderr]     Checking piston-viewport v1.0.2
[INFO] [stderr]    Compiling x11-dl v2.21.0
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]     Checking flate2 v1.1.1
[INFO] [stderr]    Compiling smithay-client-toolkit v0.16.1
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]    Compiling wayland-scanner v0.29.5
[INFO] [stderr]    Compiling gl_generator v0.14.0
[INFO] [stderr]     Checking xcursor v0.3.8
[INFO] [stderr]     Checking png v0.17.16
[INFO] [stderr]     Checking strict-num v0.1.1
[INFO] [stderr]     Checking piston-graphics_api_version v1.0.1
[INFO] [stderr]     Checking vec_map v0.8.2
[INFO] [stderr]     Checking ttf-parser v0.25.1
[INFO] [stderr]     Checking tiny-skia-path v0.8.4
[INFO] [stderr]     Checking rayon v1.10.0
[INFO] [stderr]    Compiling glutin_egl_sys v0.5.1
[INFO] [stderr]     Checking nix v0.24.3
[INFO] [stderr]     Checking nix v0.25.1
[INFO] [stderr]    Compiling wayland-client v0.29.5
[INFO] [stderr]    Compiling wayland-protocols v0.29.5
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]     Checking owned_ttf_parser v0.25.0
[INFO] [stderr]     Checking memmap2 v0.5.10
[INFO] [stderr]    Compiling glutin_glx_sys v0.4.0
[INFO] [stderr]     Checking wayland-commons v0.29.5
[INFO] [stderr]     Checking draw_state v0.8.0
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking calloop v0.10.6
[INFO] [stderr]    Compiling wayland-sys v0.30.1
[INFO] [stderr]     Checking weezl v0.1.8
[INFO] [stderr]     Checking gfx_core v0.9.2
[INFO] [stderr]     Checking tiny-skia v0.8.4
[INFO] [stderr]     Checking jpeg-decoder v0.3.1
[INFO] [stderr]     Checking ab_glyph v0.2.29
[INFO] [stderr]     Checking wayland-cursor v0.29.5
[INFO] [stderr]    Compiling winit v0.28.7
[INFO] [stderr]    Compiling gl_generator v0.13.1
[INFO] [stderr]    Compiling glutin v0.30.10
[INFO] [stderr]     Checking zune-inflate v0.2.54
[INFO] [stderr]     Checking half v2.6.0
[INFO] [stderr]     Checking bit_field v0.10.2
[INFO] [stderr]     Checking color_quant v1.1.0
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]     Checking raw-window-handle v0.5.2
[INFO] [stderr]    Compiling zerocopy v0.8.25
[INFO] [stderr]     Checking ttf-parser v0.15.2
[INFO] [stderr]     Checking lebe v0.5.2
[INFO] [stderr]     Checking gif v0.13.1
[INFO] [stderr]    Compiling gl v0.13.0
[INFO] [stderr]     Checking exr v1.73.0
[INFO] [stderr]     Checking tiff v0.9.1
[INFO] [stderr]     Checking mio v0.8.11
[INFO] [stderr]    Compiling gfx_gl v0.6.1
[INFO] [stderr]     Checking qoi v0.4.1
[INFO] [stderr]    Compiling glutin-winit v0.3.0
[INFO] [stderr]     Checking pistoncore-input v1.0.1
[INFO] [stderr]     Checking instant v0.1.13
[INFO] [stderr]     Checking libloading v0.7.4
[INFO] [stderr]     Checking piston-texture v0.9.0
[INFO] [stderr]     Checking owned_ttf_parser v0.15.2
[INFO] [stderr]     Checking gfx v0.18.3
[INFO] [stderr]     Checking pistoncore-window v1.0.0
[INFO] [stderr]     Checking rusttype v0.9.3
[INFO] [stderr]     Checking shader_version v0.7.0
[INFO] [stderr]     Checking vecmath v1.0.0
[INFO] [stderr]    Compiling matrixmultiply v0.3.10
[INFO] [stderr]     Checking interpolation v0.3.0
[INFO] [stderr]     Checking spin_sleep v1.3.1
[INFO] [stderr]     Checking read_color v1.0.0
[INFO] [stderr]     Checking pistoncore-event_loop v0.54.0
[INFO] [stderr]     Checking piston2d-graphics v0.44.0
[INFO] [stderr]     Checking rand_core v0.9.3
[INFO] [stderr]     Checking piston-shaders_graphics2d v0.4.0
[INFO] [stderr]     Checking rawpointer v0.2.1
[INFO] [stderr]     Checking piston v0.54.0
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking find_folder v0.3.0
[INFO] [stderr]     Checking ndarray v0.16.1
[INFO] [stderr]     Checking gfx_device_gl v0.16.2
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking image v0.24.9
[INFO] [stderr]     Checking rand v0.9.1
[INFO] [stderr]     Checking piston-gfx_texture v0.44.0
[INFO] [stderr]     Checking piston2d-gfx_graphics v0.80.0
[INFO] [stderr]     Checking sctk-adwaita v0.5.4
[INFO] [stderr]     Checking pistoncore-glutin_window v0.72.0
[INFO] [stderr]     Checking piston_window v0.130.0
[INFO] [stderr]     Checking pacman-rs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/game.rs:164:17
[INFO] [stdout]     |
[INFO] [stdout] 164 |                 _ => {
[INFO] [stdout]     |                 ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/game.rs:164:17
[INFO] [stdout]     |
[INFO] [stdout] 142 |                 GhostState::Chase => match ghost.name.as_str() {
[INFO] [stdout]     |                 ----------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 153 |                 GhostState::Scatter => ghost.scatter_pos,
[INFO] [stdout]     |                 ------------------- matches some of the same values
[INFO] [stdout] 154 |                 GhostState::Frightened => {
[INFO] [stdout]     |                 ---------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 161 |                 GhostState::Eaten => {
[INFO] [stdout]     |                 ----------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 164 |                 _ => {
[INFO] [stdout]     |                 ^ collectively making this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/game.rs:164:17
[INFO] [stdout]     |
[INFO] [stdout] 164 |                 _ => {
[INFO] [stdout]     |                 ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/game.rs:164:17
[INFO] [stdout]     |
[INFO] [stdout] 142 |                 GhostState::Chase => match ghost.name.as_str() {
[INFO] [stdout]     |                 ----------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 153 |                 GhostState::Scatter => ghost.scatter_pos,
[INFO] [stdout]     |                 ------------------- matches some of the same values
[INFO] [stdout] 154 |                 GhostState::Frightened => {
[INFO] [stdout]     |                 ---------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 161 |                 GhostState::Eaten => {
[INFO] [stdout]     |                 ----------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 164 |                 _ => {
[INFO] [stdout]     |                 ^ collectively making this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_LIVES` is never used
[INFO] [stdout]  --> src/constants.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub const MAX_LIVES: i32 = 3;
[INFO] [stdout]   |           ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Fruit` is never used
[INFO] [stdout]   --> src/enums.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub enum Fruit {
[INFO] [stdout]    |          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `color` is never read
[INFO] [stdout]   --> src/ghost.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub struct Ghost {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 62 |     pub color: [f32; 4], // RGBA color
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_pos` and `get_type` are never used
[INFO] [stdout]   --> src/grid.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl Tile {
[INFO] [stdout]    | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn get_pos(&self) -> (i32, i32) {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn get_type(&self) -> &TileType {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `num_cols` and `num_rows` are never read
[INFO] [stdout]   --> src/grid.rs:74:5
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub struct Grid {
[INFO] [stdout]    |            ---- fields in this struct
[INFO] [stdout] 73 |     tiles: Array2<Tile>,
[INFO] [stdout] 74 |     num_cols: i32,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 75 |     num_rows: i32,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_dim_width` and `get_dim_height` are never used
[INFO] [stdout]    --> src/grid.rs:109:12
[INFO] [stdout]     |
[INFO] [stdout]  94 | impl Grid {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub fn get_dim_width(&self) -> f64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub fn get_dim_height(&self) -> f64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]  --> src/player.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct Pacman {
[INFO] [stdout]   |            ------ field in this struct
[INFO] [stdout] 6 |     pub name: String,
[INFO] [stdout]   |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `lose_life`, `get_lives`, `get_score`, and `eat_fruit` are never used
[INFO] [stdout]    --> src/player.rs:95:12
[INFO] [stdout]     |
[INFO] [stdout]  15 | impl Pacman {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub fn lose_life(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  98 |     pub fn get_lives(&self) -> i32 {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     pub fn get_score(&self) -> i32 {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn eat_fruit(&mut self, fruit: Fruit) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_bounds` is never used
[INFO] [stdout]  --> src/utils.rs:7:4
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn check_bounds(pos: (i32, i32)) -> bool {
[INFO] [stdout]   |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_neighbors` is never used
[INFO] [stdout]   --> src/utils.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn find_neighbors(pos: (i32, i32)) -> Vec<(i32, i32)> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Node` is never constructed
[INFO] [stdout]  --> src/pathfinding.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | struct Node {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/pathfinding.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl Node {
[INFO] [stdout]    | --------- associated function in this implementation
[INFO] [stdout] 17 |     pub fn new(pos: (i32, i32)) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AStar` is never constructed
[INFO] [stdout]   --> src/pathfinding.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct AStar {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `set_goal`, `get_node_mut`, `get_node`, `find_path`, and `reset_path` are never used
[INFO] [stdout]    --> src/pathfinding.rs:36:12
[INFO] [stdout]     |
[INFO] [stdout]  35 | impl AStar {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout]  36 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  50 |     pub fn set_goal(&mut self, goal: (i32, i32)) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  68 |     fn get_node_mut(&mut self, pos: (i32, i32)) -> Option<&mut Node> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  76 |     fn get_node(&self, pos: (i32, i32)) -> Option<&Node> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  84 |     pub fn find_path(
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 |     fn reset_path(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reconstruct_path` is never used
[INFO] [stdout]    --> src/pathfinding.rs:204:4
[INFO] [stdout]     |
[INFO] [stdout] 204 | fn reconstruct_path(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_LIVES` is never used
[INFO] [stdout]  --> src/constants.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub const MAX_LIVES: i32 = 3;
[INFO] [stdout]   |           ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Fruit` is never used
[INFO] [stdout]   --> src/enums.rs:21:10
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub enum Fruit {
[INFO] [stdout]    |          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `color` is never read
[INFO] [stdout]   --> src/ghost.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub struct Ghost {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 62 |     pub color: [f32; 4], // RGBA color
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_pos` and `get_type` are never used
[INFO] [stdout]   --> src/grid.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl Tile {
[INFO] [stdout]    | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn get_pos(&self) -> (i32, i32) {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn get_type(&self) -> &TileType {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `num_cols` and `num_rows` are never read
[INFO] [stdout]   --> src/grid.rs:74:5
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub struct Grid {
[INFO] [stdout]    |            ---- fields in this struct
[INFO] [stdout] 73 |     tiles: Array2<Tile>,
[INFO] [stdout] 74 |     num_cols: i32,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 75 |     num_rows: i32,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_dim_width` and `get_dim_height` are never used
[INFO] [stdout]    --> src/grid.rs:109:12
[INFO] [stdout]     |
[INFO] [stdout]  94 | impl Grid {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub fn get_dim_width(&self) -> f64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub fn get_dim_height(&self) -> f64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]  --> src/player.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct Pacman {
[INFO] [stdout]   |            ------ field in this struct
[INFO] [stdout] 6 |     pub name: String,
[INFO] [stdout]   |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `lose_life`, `get_lives`, `get_score`, and `eat_fruit` are never used
[INFO] [stdout]    --> src/player.rs:95:12
[INFO] [stdout]     |
[INFO] [stdout]  15 | impl Pacman {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub fn lose_life(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  98 |     pub fn get_lives(&self) -> i32 {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     pub fn get_score(&self) -> i32 {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn eat_fruit(&mut self, fruit: Fruit) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_bounds` is never used
[INFO] [stdout]  --> src/utils.rs:7:4
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn check_bounds(pos: (i32, i32)) -> bool {
[INFO] [stdout]   |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_neighbors` is never used
[INFO] [stdout]   --> src/utils.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn find_neighbors(pos: (i32, i32)) -> Vec<(i32, i32)> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Node` is never constructed
[INFO] [stdout]  --> src/pathfinding.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | struct Node {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/pathfinding.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl Node {
[INFO] [stdout]    | --------- associated function in this implementation
[INFO] [stdout] 17 |     pub fn new(pos: (i32, i32)) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AStar` is never constructed
[INFO] [stdout]   --> src/pathfinding.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct AStar {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `set_goal`, `get_node_mut`, `get_node`, `find_path`, and `reset_path` are never used
[INFO] [stdout]    --> src/pathfinding.rs:36:12
[INFO] [stdout]     |
[INFO] [stdout]  35 | impl AStar {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout]  36 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  50 |     pub fn set_goal(&mut self, goal: (i32, i32)) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  68 |     fn get_node_mut(&mut self, pos: (i32, i32)) -> Option<&mut Node> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  76 |     fn get_node(&self, pos: (i32, i32)) -> Option<&Node> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  84 |     pub fn find_path(
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 |     fn reset_path(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reconstruct_path` is never used
[INFO] [stdout]    --> src/pathfinding.rs:204:4
[INFO] [stdout]     |
[INFO] [stdout] 204 | fn reconstruct_path(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 33s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: glutin v0.30.10, glutin-winit v0.3.0, winit v0.28.7
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "18486bec86da8864035347dc029aac9a30065670506e5258ebf0b236ed442f4c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "18486bec86da8864035347dc029aac9a30065670506e5258ebf0b236ed442f4c", kill_on_drop: false }`
[INFO] [stdout] 18486bec86da8864035347dc029aac9a30065670506e5258ebf0b236ed442f4c
