[INFO] cloning repository https://github.com/nfejzic/catacomb_snatch
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/nfejzic/catacomb_snatch" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnfejzic%2Fcatacomb_snatch", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnfejzic%2Fcatacomb_snatch'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 8fe5487c8c6485db9a3373097cdc343e087d1593
[INFO] checking nfejzic/catacomb_snatch against master#ab26b175979ee7b2cb3302dce204b99df96f7efb for pr-157696
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnfejzic%2Fcatacomb_snatch" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/nfejzic/catacomb_snatch
[INFO] finished tweaking git repo https://github.com/nfejzic/catacomb_snatch
[INFO] tweaked toml for git repo https://github.com/nfejzic/catacomb_snatch written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/nfejzic/catacomb_snatch on toolchain ab26b175979ee7b2cb3302dce204b99df96f7efb
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ab26b175979ee7b2cb3302dce204b99df96f7efb" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/nfejzic/catacomb_snatch 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" "+ab26b175979ee7b2cb3302dce204b99df96f7efb" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded rusttype v0.8.2
[INFO] [stderr]   Downloaded serde v1.0.104
[INFO] [stderr]   Downloaded lock_api v0.3.3
[INFO] [stderr]   Downloaded mint v0.5.4
[INFO] [stderr]   Downloaded wasm-bindgen-shared v0.2.59
[INFO] [stderr]   Downloaded wasm-bindgen-macro v0.2.59
[INFO] [stderr]   Downloaded backtrace v0.3.45
[INFO] [stderr]   Downloaded wasm-bindgen-macro-support v0.2.59
[INFO] [stderr]   Downloaded wasm-bindgen-backend v0.2.59
[INFO] [stderr]   Downloaded num-rational v0.2.3
[INFO] [stderr]   Downloaded gilrs-core v0.2.5
[INFO] [stderr]   Downloaded typenum v1.11.2
[INFO] [stderr]   Downloaded clang-sys v0.29.2
[INFO] [stderr]   Downloaded serde_derive v1.0.104
[INFO] [stderr]   Downloaded serde_json v1.0.48
[INFO] [stderr]   Downloaded bumpalo v3.2.0
[INFO] [stderr]   Downloaded wasm-bindgen v0.2.59
[INFO] [stderr]   Downloaded syn v1.0.16
[INFO] [stderr]   Downloaded regex v1.3.5
[INFO] [stderr]   Downloaded backtrace-sys v0.1.34
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] d6676ee80a04632852a077a437779497a7743f589576779cf9515b36303cb976
[INFO] running `Command { std: "docker" "start" "d6676ee80a04632852a077a437779497a7743f589576779cf9515b36303cb976", 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" "d6676ee80a04632852a077a437779497a7743f589576779cf9515b36303cb976" "/opt/rustwide/cargo-home/bin/cargo" "+ab26b175979ee7b2cb3302dce204b99df96f7efb" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d6676ee80a04632852a077a437779497a7743f589576779cf9515b36303cb976", 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" "d6676ee80a04632852a077a437779497a7743f589576779cf9515b36303cb976" "/opt/rustwide/cargo-home/bin/cargo" "+ab26b175979ee7b2cb3302dce204b99df96f7efb" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.68
[INFO] [stderr]    Compiling autocfg v1.0.0
[INFO] [stderr]     Checking cfg-if v0.1.10
[INFO] [stderr]    Compiling libm v0.2.1
[INFO] [stderr]    Compiling cc v1.0.50
[INFO] [stderr]    Compiling bitflags v1.2.1
[INFO] [stderr]    Compiling log v0.4.8
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]    Compiling serde v1.0.104
[INFO] [stderr]    Compiling byteorder v1.3.4
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling pkg-config v0.3.17
[INFO] [stderr]     Checking scopeguard v1.1.0
[INFO] [stderr]    Compiling quote v0.6.13
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stderr]     Checking void v1.0.2
[INFO] [stderr]     Checking rand_core v0.4.2
[INFO] [stderr]     Checking arrayvec v0.5.1
[INFO] [stderr]     Checking linked-hash-map v0.5.2
[INFO] [stderr]    Compiling proc-macro2 v1.0.9
[INFO] [stderr]    Compiling nix v0.14.1
[INFO] [stderr]    Compiling wayland-scanner v0.21.13
[INFO] [stderr]    Compiling getrandom v0.1.14
[INFO] [stderr]    Compiling num-traits v0.2.11
[INFO] [stderr]    Compiling memoffset v0.5.4
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling crossbeam-epoch v0.8.2
[INFO] [stderr]    Compiling gl_generator v0.13.1
[INFO] [stderr]    Compiling unicode-xid v0.2.0
[INFO] [stderr]    Compiling num-integer v0.1.42
[INFO] [stderr]     Checking stb_truetype v0.3.1
[INFO] [stderr]     Checking smallvec v0.6.13
[INFO] [stderr]     Checking rand_core v0.3.1
[INFO] [stderr]    Compiling version_check v0.9.1
[INFO] [stderr]    Compiling ryu v1.0.3
[INFO] [stderr]    Compiling arrayvec v0.4.12
[INFO] [stderr]    Compiling syn v1.0.16
[INFO] [stderr]    Compiling x11-dl v2.18.5
[INFO] [stderr]    Compiling rustc-demangle v0.1.16
[INFO] [stderr]     Checking downcast-rs v1.1.1
[INFO] [stderr]    Compiling error-chain v0.12.2
[INFO] [stderr]     Checking nodrop v0.1.14
[INFO] [stderr]     Checking same-file v1.0.6
[INFO] [stderr]    Compiling gl_generator v0.14.0
[INFO] [stderr]    Compiling num-rational v0.2.3
[INFO] [stderr]     Checking walkdir v2.3.1
[INFO] [stderr]    Compiling quote v1.0.3
[INFO] [stderr]    Compiling num-complex v0.2.4
[INFO] [stderr]     Checking crossbeam-deque v0.7.3
[INFO] [stderr]     Checking approx v0.3.2
[INFO] [stderr]     Checking ordered-float v1.0.2
[INFO] [stderr]     Checking line_drawing v0.7.0
[INFO] [stderr]    Compiling itoa v0.4.5
[INFO] [stderr]     Checking xdg v2.2.0
[INFO] [stderr]     Checking ppv-lite86 v0.2.6
[INFO] [stderr]    Compiling typenum v1.11.2
[INFO] [stderr]     Checking xml-rs v0.8.0
[INFO] [stderr]    Compiling crc32fast v1.2.0
[INFO] [stderr]     Checking num_cpus v1.12.0
[INFO] [stderr]    Compiling libloading v0.5.2
[INFO] [stderr]    Compiling backtrace-sys v0.1.34
[INFO] [stderr]    Compiling wayland-client v0.21.13
[INFO] [stderr]    Compiling wayland-protocols v0.21.13
[INFO] [stderr]    Compiling pulldown-cmark v0.2.0
[INFO] [stderr]    Compiling glutin_glx_sys v0.1.6
[INFO] [stderr]    Compiling gfx_gl v0.6.1
[INFO] [stderr]     Checking rusttype v0.8.2
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]    Compiling glutin_egl_sys v0.1.4
[INFO] [stderr]    Compiling minimp3-sys v0.3.2
[INFO] [stderr]    Compiling bzip2-sys v0.1.8+1.0.8
[INFO] [stderr]     Checking dlib v0.4.1
[INFO] [stderr]     Checking wayland-sys v0.21.13
[INFO] [stderr]     Checking memmap v0.7.0
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]     Checking rusttype v0.7.9
[INFO] [stderr]     Checking num-traits v0.1.43
[INFO] [stderr]    Compiling rand v0.4.6
[INFO] [stderr]     Checking andrew v0.2.1
[INFO] [stderr]    Compiling libudev-sys v0.1.4
[INFO] [stderr]    Compiling alsa-sys v0.1.2
[INFO] [stderr]     Checking draw_state v0.8.0
[INFO] [stderr]     Checking lock_api v0.3.3
[INFO] [stderr]    Compiling backtrace v0.3.45
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]    Compiling remove_dir_all v0.5.2
[INFO] [stderr]     Checking adler32 v1.0.4
[INFO] [stderr]    Compiling nix v0.15.0
[INFO] [stderr]     Checking gfx_core v0.9.2
[INFO] [stderr]     Checking sid v0.5.2
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]    Compiling tempdir v0.3.7
[INFO] [stderr]     Checking shared_library v0.1.9
[INFO] [stderr]     Checking rand_os v0.1.3
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]    Compiling serde_json v1.0.48
[INFO] [stderr]     Checking raw-window-handle v0.3.3
[INFO] [stderr]     Checking rand_hc v0.1.0
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]     Checking rand_xorshift v0.1.1
[INFO] [stderr]     Checking rand_isaac v0.1.1
[INFO] [stderr]    Compiling num-iter v0.1.40
[INFO] [stderr]     Checking rand_jitter v0.1.4
[INFO] [stderr]     Checking percent-encoding v2.1.0
[INFO] [stderr]     Checking rawpointer v0.2.1
[INFO] [stderr]    Compiling bytecount v0.4.0
[INFO] [stderr]     Checking lzw v0.10.0
[INFO] [stderr]    Compiling glob v0.2.11
[INFO] [stderr]     Checking xi-unicode v0.2.0
[INFO] [stderr]    Compiling parking_lot_core v0.6.2
[INFO] [stderr]    Compiling parking_lot v0.9.0
[INFO] [stderr]     Checking matrixmultiply v0.2.3
[INFO] [stderr]     Checking generic-array v0.12.3
[INFO] [stderr]     Checking glyph_brush_layout v0.1.9
[INFO] [stderr]     Checking twox-hash v1.5.0
[INFO] [stderr]     Checking osmesa-sys v0.1.2
[INFO] [stderr]     Checking alga v0.9.3
[INFO] [stderr]     Checking deflate v0.7.20
[INFO] [stderr]     Checking inflate v0.4.5
[INFO] [stderr]     Checking slice-deque v0.3.0
[INFO] [stderr]     Checking ogg v0.7.0
[INFO] [stderr]     Checking uuid v0.8.1
[INFO] [stderr]     Checking vec_map v0.8.1
[INFO] [stderr]     Checking color_quant v1.0.1
[INFO] [stderr]     Checking mint v0.5.4
[INFO] [stderr]     Checking lewton v0.9.4
[INFO] [stderr]     Checking png v0.15.3
[INFO] [stderr]     Checking gif v0.10.3
[INFO] [stderr]     Checking cpal v0.8.2
[INFO] [stderr]     Checking glyph_brush v0.6.3
[INFO] [stderr]     Checking wayland-commons v0.21.13
[INFO] [stderr]     Checking dirs-sys v0.3.4
[INFO] [stderr]     Checking nalgebra v0.18.1
[INFO] [stderr]     Checking jpeg-decoder v0.1.18
[INFO] [stderr]     Checking fnv v1.0.6
[INFO] [stderr]     Checking gfx_device_gl v0.16.2
[INFO] [stderr]     Checking hound v3.4.0
[INFO] [stderr]     Checking claxon v0.4.2
[INFO] [stderr]     Checking podio v0.1.6
[INFO] [stderr]     Checking glyph_brush v0.5.4
[INFO] [stderr]     Checking directories v2.0.2
[INFO] [stderr]     Checking gfx v0.18.2
[INFO] [stderr]    Compiling euclid_macros v0.1.0
[INFO] [stderr]    Compiling num-derive v0.2.5
[INFO] [stderr]    Compiling smart-default v0.5.2
[INFO] [stderr]    Compiling serde_derive v1.0.104
[INFO] [stderr]     Checking euclid v0.19.9
[INFO] [stderr]     Checking lyon_geom v0.12.7
[INFO] [stderr]     Checking minimp3 v0.3.5
[INFO] [stderr]     Checking tiff v0.3.1
[INFO] [stderr]     Checking image v0.22.5
[INFO] [stderr]     Checking lyon_path v0.13.2
[INFO] [stderr]     Checking lyon_tessellation v0.13.5
[INFO] [stderr]     Checking lyon_algorithms v0.13.4
[INFO] [stderr]     Checking gilrs-core v0.2.5
[INFO] [stderr]     Checking gilrs v0.7.4
[INFO] [stderr]     Checking lyon v0.13.5
[INFO] [stderr]     Checking toml v0.5.6
[INFO] [stderr]    Compiling cargo_metadata v0.6.4
[INFO] [stderr]    Compiling skeptic v0.13.4
[INFO] [stderr]    Compiling ggez v0.5.1
[INFO] [stderr]     Checking bzip2 v0.3.3
[INFO] [stderr]     Checking zip v0.5.5
[INFO] [stderr]     Checking rodio v0.9.0
[INFO] [stderr]     Checking smithay-client-toolkit v0.4.6
[INFO] [stderr]     Checking winit v0.19.5
[INFO] [stderr]     Checking glutin v0.20.1
[INFO] [stderr]     Checking gfx_window_glutin v0.30.0
[INFO] [stderr]     Checking catacomb_snatch v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Color`, `DrawParam`, `Image`, `gfx_objects`, and `window`
[INFO] [stdout]  --> src/main.rs:3:22
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ggez::graphics::{window, gfx_objects, Image, DrawParam, Color};
[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 import: `std::borrow::Borrow`
[INFO] [stdout]  --> src/main.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::borrow::Borrow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env`
[INFO] [stdout]  --> src/main.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::env;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path`
[INFO] [stdout]  --> src/main.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::path;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Read`
[INFO] [stdout]  --> src/main.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::io::Read;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ptr::null`
[INFO] [stdout]   --> src/main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::ptr::null;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `mint::Vector2`
[INFO] [stdout]   --> src/main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use mint::Vector2;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ggez::graphics::spritebatch::SpriteBatch`
[INFO] [stdout]   --> src/main.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use ggez::graphics::spritebatch::SpriteBatch;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::components::gfx::SpriteSheet`
[INFO] [stdout]   --> src/main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::components::gfx::SpriteSheet;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::components::cutter::SpritesheetCutter`
[INFO] [stdout]   --> src/main.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::components::cutter::SpritesheetCutter;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GameResult` and `filesystem`
[INFO] [stdout]  --> src/components/gfx.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ggez::{filesystem, graphics, Context, GameResult};
[INFO] [stdout]   |            ^^^^^^^^^^                     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GlBackendSpec`, `ImageGeneric`, and `WHITE`
[INFO] [stdout]  --> src/components/gfx.rs:2:29
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ggez::graphics::{Image, ImageGeneric, GlBackendSpec, WHITE, FilterMode};
[INFO] [stdout]   |                             ^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path`
[INFO] [stdout]  --> src/components/gfx.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::path;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Read`
[INFO] [stdout]  --> src/components/gfx.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::io::Read;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ptr::null`
[INFO] [stdout]  --> src/components/gfx.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ptr::null;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Color`
[INFO] [stdout]  --> src/components/level/level.rs:6:33
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ggez::graphics::{DrawParam, Color, Image};
[INFO] [stdout]   |                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Color`, `DrawParam`, `Image`, `gfx_objects`, and `window`
[INFO] [stdout]  --> src/main.rs:3:22
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ggez::graphics::{window, gfx_objects, Image, DrawParam, Color};
[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 import: `std::borrow::Borrow`
[INFO] [stdout]  --> src/main.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::borrow::Borrow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env`
[INFO] [stdout]  --> src/main.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::env;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path`
[INFO] [stdout]  --> src/main.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::path;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Read`
[INFO] [stdout]  --> src/main.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::io::Read;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ptr::null`
[INFO] [stdout]   --> src/main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::ptr::null;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `mint::Vector2`
[INFO] [stdout]   --> src/main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use mint::Vector2;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ggez::graphics::spritebatch::SpriteBatch`
[INFO] [stdout]   --> src/main.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use ggez::graphics::spritebatch::SpriteBatch;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::components::gfx::SpriteSheet`
[INFO] [stdout]   --> src/main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::components::gfx::SpriteSheet;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::components::cutter::SpritesheetCutter`
[INFO] [stdout]   --> src/main.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::components::cutter::SpritesheetCutter;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GameResult` and `filesystem`
[INFO] [stdout]  --> src/components/gfx.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ggez::{filesystem, graphics, Context, GameResult};
[INFO] [stdout]   |            ^^^^^^^^^^                     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GlBackendSpec`, `ImageGeneric`, and `WHITE`
[INFO] [stdout]  --> src/components/gfx.rs:2:29
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ggez::graphics::{Image, ImageGeneric, GlBackendSpec, WHITE, FilterMode};
[INFO] [stdout]   |                             ^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path`
[INFO] [stdout]  --> src/components/gfx.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::path;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Read`
[INFO] [stdout]  --> src/components/gfx.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::io::Read;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ptr::null`
[INFO] [stdout]  --> src/components/gfx.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ptr::null;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Color`
[INFO] [stdout]  --> src/components/level/level.rs:6:33
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ggez::graphics::{DrawParam, Color, Image};
[INFO] [stdout]   |                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ggez::event::EventHandler`
[INFO] [stdout]  --> src/main.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ggez::event::EventHandler;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/components/level/level.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |         let mut walls_top = sh.cut(ctx, 0, 256, 0, 32, 32, 32);
[INFO] [stdout]    |             ----^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/components/level/level.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |         let mut walls_front = sh.cut(ctx, 0, 256, 32, 56, 32, 24);
[INFO] [stdout]    |             ----^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/components/level/level.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |         let mut wall_tiles = vec![walls_top[0].to_vec(), walls_front[0].to_vec()];
[INFO] [stdout]    |             ----^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `length`
[INFO] [stdout]   --> src/components/level/level.rs:53:13
[INFO] [stdout]    |
[INFO] [stdout] 53 |         let length = level_image.width() * level_image.height();
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_length`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t_type`
[INFO] [stdout]   --> src/components/level/level.rs:69:21
[INFO] [stdout]    |
[INFO] [stdout] 69 |                 let t_type: TileTypes;
[INFO] [stdout]    |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_t_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/components/level/level.rs:177:29
[INFO] [stdout]     |
[INFO] [stdout] 177 |                         let mut tile = &mut tiles[(y - 1) as usize][x as usize];
[INFO] [stdout]     |                             ----^^^^
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/components/level/level.rs:235:21
[INFO] [stdout]     |
[INFO] [stdout] 235 |                 let mut tile = Tile {
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scale`
[INFO] [stdout]   --> src/main.rs:33:13
[INFO] [stdout]    |
[INFO] [stdout] 33 |         let scale = 2.0;
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_scale`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ggez::event::EventHandler`
[INFO] [stdout]  --> src/main.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ggez::event::EventHandler;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:81:9
[INFO] [stdout]    |
[INFO] [stdout] 81 |     let mut level = Level::from_image(ctx, "/level/level1.bmp");
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 82 |     let mut state = &mut Game { is_running: true, dt: 0, level };
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `is_running` and `dt` are never read
[INFO] [stdout]   --> src/main.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct Game {
[INFO] [stdout]    |        ---- fields in this struct
[INFO] [stdout] 20 |     is_running: bool,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 21 |     dt: i32,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Animation` is never constructed
[INFO] [stdout]   --> src/components/gfx.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct Animation {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `sprite_w` and `sprite_h` are never read
[INFO] [stdout]   --> src/components/gfx.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct SpriteSheet {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 23 |     pub sprite_w: i32,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 24 |     pub sprite_h: i32,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Position` is never constructed
[INFO] [stdout]  --> src/components/positional.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | struct Position {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Velocity` is never constructed
[INFO] [stdout]  --> src/components/positional.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | struct Velocity {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Acceleration` is never constructed
[INFO] [stdout]   --> src/components/positional.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | struct Acceleration {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `cut_default` and `cut_sized` are never used
[INFO] [stdout]  --> src/components/cutter.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub trait SpritesheetCutter {
[INFO] [stdout]   |           ----------------- methods in this trait
[INFO] [stdout] 5 |     fn load_spritesheet_default(ctx: &mut Context, path: &str) -> SpriteSheet;
[INFO] [stdout] 6 |     fn cut_default(&self, ctx: &mut Context) -> Vec<Vec<Sprite>>;
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 7 |     fn cut_sized(&self, ctx: &mut Context, w: i32, h: i32) -> Vec<Vec<Sprite>>;
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `width` and `height` are never read
[INFO] [stdout]   --> src/components/level/level.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct Level {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 15 |     pub tiles: Vec<Vec<Tile>>,
[INFO] [stdout] 16 |     pub width: i32,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 17 |     pub height: i32,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `random_tile`, `width`, `height`, `tiles`, and `tiles_mut` are never used
[INFO] [stdout]    --> src/components/level/level.rs:23:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl Level {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout]  23 |     pub fn new(ctx: &mut Context, w: i32, h: i32) -> Level {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn random_tile(sprites: &Vec<Vec<Sprite>>, pos: (i32, i32)) -> Tile {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 250 |     pub fn width(&self) -> i32 {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 254 |     pub fn height(&self) -> i32 {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 258 |     pub fn tiles(&self) -> &Vec<Vec<Tile>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 262 |     pub fn tiles_mut(&mut self) -> &mut Vec<Vec<Tile>> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `w`, `h`, and `grid_pos` are never read
[INFO] [stdout]  --> src/components/level/tile.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct Tile {
[INFO] [stdout]   |            ---- fields in this struct
[INFO] [stdout] 6 |     pub w: i32,
[INFO] [stdout]   |         ^
[INFO] [stdout] 7 |     pub h: i32,
[INFO] [stdout]   |         ^
[INFO] [stdout] 8 |     pub grid_pos: (i32, i32),
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TileSet` is never constructed
[INFO] [stdout]   --> src/components/level/tile.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct TileSet {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `width`, `height`, and `sprite` are never used
[INFO] [stdout]   --> src/components/level/tile.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl Tile {
[INFO] [stdout]    | --------- methods in this implementation
[INFO] [stdout] 24 |     pub fn width(&self) -> i32 {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn height(&self) -> i32 {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn sprite(&self) -> &Sprite {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `next_random` is never used
[INFO] [stdout]   --> src/components/level/types.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl TileTypes {
[INFO] [stdout]    | -------------- associated function in this implementation
[INFO] [stdout] 12 |     pub fn next_random() -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/components/level/level.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |         let mut walls_top = sh.cut(ctx, 0, 256, 0, 32, 32, 32);
[INFO] [stdout]    |             ----^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/components/level/level.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |         let mut walls_front = sh.cut(ctx, 0, 256, 32, 56, 32, 24);
[INFO] [stdout]    |             ----^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/components/level/level.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |         let mut wall_tiles = vec![walls_top[0].to_vec(), walls_front[0].to_vec()];
[INFO] [stdout]    |             ----^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `length`
[INFO] [stdout]   --> src/components/level/level.rs:53:13
[INFO] [stdout]    |
[INFO] [stdout] 53 |         let length = level_image.width() * level_image.height();
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_length`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t_type`
[INFO] [stdout]   --> src/components/level/level.rs:69:21
[INFO] [stdout]    |
[INFO] [stdout] 69 |                 let t_type: TileTypes;
[INFO] [stdout]    |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_t_type`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/components/level/level.rs:177:29
[INFO] [stdout]     |
[INFO] [stdout] 177 |                         let mut tile = &mut tiles[(y - 1) as usize][x as usize];
[INFO] [stdout]     |                             ----^^^^
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/components/level/level.rs:235:21
[INFO] [stdout]     |
[INFO] [stdout] 235 |                 let mut tile = Tile {
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scale`
[INFO] [stdout]   --> src/main.rs:33:13
[INFO] [stdout]    |
[INFO] [stdout] 33 |         let scale = 2.0;
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_scale`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:81:9
[INFO] [stdout]    |
[INFO] [stdout] 81 |     let mut level = Level::from_image(ctx, "/level/level1.bmp");
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/main.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |         graphics::present(ctx);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 38 |         let _ = graphics::present(ctx);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 82 |     let mut state = &mut Game { is_running: true, dt: 0, level };
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `is_running` and `dt` are never read
[INFO] [stdout]   --> src/main.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct Game {
[INFO] [stdout]    |        ---- fields in this struct
[INFO] [stdout] 20 |     is_running: bool,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 21 |     dt: i32,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Animation` is never constructed
[INFO] [stdout]   --> src/components/gfx.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct Animation {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `sprite_w` and `sprite_h` are never read
[INFO] [stdout]   --> src/components/gfx.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct SpriteSheet {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 23 |     pub sprite_w: i32,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 24 |     pub sprite_h: i32,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Position` is never constructed
[INFO] [stdout]  --> src/components/positional.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | struct Position {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Velocity` is never constructed
[INFO] [stdout]  --> src/components/positional.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | struct Velocity {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Acceleration` is never constructed
[INFO] [stdout]   --> src/components/positional.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | struct Acceleration {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `cut_default` and `cut_sized` are never used
[INFO] [stdout]  --> src/components/cutter.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub trait SpritesheetCutter {
[INFO] [stdout]   |           ----------------- methods in this trait
[INFO] [stdout] 5 |     fn load_spritesheet_default(ctx: &mut Context, path: &str) -> SpriteSheet;
[INFO] [stdout] 6 |     fn cut_default(&self, ctx: &mut Context) -> Vec<Vec<Sprite>>;
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 7 |     fn cut_sized(&self, ctx: &mut Context, w: i32, h: i32) -> Vec<Vec<Sprite>>;
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/components/level/level.rs:318:25
[INFO] [stdout]     |
[INFO] [stdout] 318 |                         graphics::draw(ctx, &spritebatch, params);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 318 |                         let _ = graphics::draw(ctx, &spritebatch, params);
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `width` and `height` are never read
[INFO] [stdout]   --> src/components/level/level.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct Level {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 15 |     pub tiles: Vec<Vec<Tile>>,
[INFO] [stdout] 16 |     pub width: i32,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 17 |     pub height: i32,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/components/level/level.rs:327:25
[INFO] [stdout]     |
[INFO] [stdout] 327 |                         graphics::draw(ctx, &spritebatch, front_params);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 327 |                         let _ = graphics::draw(ctx, &spritebatch, front_params);
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `random_tile`, `width`, `height`, `tiles`, and `tiles_mut` are never used
[INFO] [stdout]    --> src/components/level/level.rs:23:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl Level {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout]  23 |     pub fn new(ctx: &mut Context, w: i32, h: i32) -> Level {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn random_tile(sprites: &Vec<Vec<Sprite>>, pos: (i32, i32)) -> Tile {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 250 |     pub fn width(&self) -> i32 {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 254 |     pub fn height(&self) -> i32 {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 258 |     pub fn tiles(&self) -> &Vec<Vec<Tile>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 262 |     pub fn tiles_mut(&mut self) -> &mut Vec<Vec<Tile>> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/components/level/level.rs:346:25
[INFO] [stdout]     |
[INFO] [stdout] 346 |                         graphics::draw(ctx, &spritebatch, params);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 346 |                         let _ = graphics::draw(ctx, &spritebatch, params);
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `w`, `h`, and `grid_pos` are never read
[INFO] [stdout]  --> src/components/level/tile.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct Tile {
[INFO] [stdout]   |            ---- fields in this struct
[INFO] [stdout] 6 |     pub w: i32,
[INFO] [stdout]   |         ^
[INFO] [stdout] 7 |     pub h: i32,
[INFO] [stdout]   |         ^
[INFO] [stdout] 8 |     pub grid_pos: (i32, i32),
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TileSet` is never constructed
[INFO] [stdout]   --> src/components/level/tile.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct TileSet {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `width`, `height`, and `sprite` are never used
[INFO] [stdout]   --> src/components/level/tile.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl Tile {
[INFO] [stdout]    | --------- methods in this implementation
[INFO] [stdout] 24 |     pub fn width(&self) -> i32 {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn height(&self) -> i32 {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn sprite(&self) -> &Sprite {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `next_random` is never used
[INFO] [stdout]   --> src/components/level/types.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl TileTypes {
[INFO] [stdout]    | -------------- associated function in this implementation
[INFO] [stdout] 12 |     pub fn next_random() -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/main.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |         graphics::present(ctx);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 38 |         let _ = graphics::present(ctx);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/components/level/level.rs:318:25
[INFO] [stdout]     |
[INFO] [stdout] 318 |                         graphics::draw(ctx, &spritebatch, params);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 318 |                         let _ = graphics::draw(ctx, &spritebatch, params);
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/components/level/level.rs:327:25
[INFO] [stdout]     |
[INFO] [stdout] 327 |                         graphics::draw(ctx, &spritebatch, front_params);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 327 |                         let _ = graphics::draw(ctx, &spritebatch, front_params);
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/components/level/level.rs:346:25
[INFO] [stdout]     |
[INFO] [stdout] 346 |                         graphics::draw(ctx, &spritebatch, params);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 346 |                         let _ = graphics::draw(ctx, &spritebatch, params);
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [optimized + debuginfo] target(s) in 1m 18s
[INFO] running `Command { std: "docker" "inspect" "d6676ee80a04632852a077a437779497a7743f589576779cf9515b36303cb976", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d6676ee80a04632852a077a437779497a7743f589576779cf9515b36303cb976", kill_on_drop: false }`
[INFO] [stdout] d6676ee80a04632852a077a437779497a7743f589576779cf9515b36303cb976
