[INFO] cloning repository https://github.com/vanisyd/gameengine [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/vanisyd/gameengine" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvanisyd%2Fgameengine", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvanisyd%2Fgameengine'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 79f29a7ff00f250e8664871634b9fd4b3a374cb6 [INFO] checking vanisyd/gameengine against c999cef531ea9059e189e82fe0e82c5daf249bc9 for pr-152972 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvanisyd%2Fgameengine" "/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/vanisyd/gameengine [INFO] finished tweaking git repo https://github.com/vanisyd/gameengine [INFO] tweaked toml for git repo https://github.com/vanisyd/gameengine written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/vanisyd/gameengine on toolchain c999cef531ea9059e189e82fe0e82c5daf249bc9 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c999cef531ea9059e189e82fe0e82c5daf249bc9" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/vanisyd/gameengine 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" "+c999cef531ea9059e189e82fe0e82c5daf249bc9" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded gethostname v1.0.2 [INFO] [stderr] Downloaded cc v1.2.41 [INFO] [stderr] Downloaded num_enum_derive v0.7.4 [INFO] [stderr] Downloaded num_enum v0.7.4 [INFO] [stderr] Downloaded env_filter v0.1.3 [INFO] [stderr] Downloaded regex v1.12.1 [INFO] [stderr] Downloaded jiff-static v0.2.15 [INFO] [stderr] Downloaded regex-syntax v0.8.7 [INFO] [stderr] Downloaded jiff v0.2.15 [INFO] [stderr] Downloaded regex-automata v0.4.12 [INFO] [stderr] Downloaded glam v0.30.8 [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:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }` [INFO] [stdout] c676ce84c616e967bf4fa103d06972de23b266af23d8781e4b9304d3f5bf6c6b [INFO] running `Command { std: "docker" "start" "c676ce84c616e967bf4fa103d06972de23b266af23d8781e4b9304d3f5bf6c6b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "c676ce84c616e967bf4fa103d06972de23b266af23d8781e4b9304d3f5bf6c6b", 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" "c676ce84c616e967bf4fa103d06972de23b266af23d8781e4b9304d3f5bf6c6b" "/opt/rustwide/cargo-home/bin/cargo" "+c999cef531ea9059e189e82fe0e82c5daf249bc9" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "c676ce84c616e967bf4fa103d06972de23b266af23d8781e4b9304d3f5bf6c6b", 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" "c676ce84c616e967bf4fa103d06972de23b266af23d8781e4b9304d3f5bf6c6b" "/opt/rustwide/cargo-home/bin/cargo" "+c999cef531ea9059e189e82fe0e82c5daf249bc9" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] Compiling unicode-ident v1.0.19 [INFO] [stderr] Compiling quote v1.0.41 [INFO] [stderr] Checking bitflags v2.9.4 [INFO] [stderr] Compiling rustix v1.1.2 [INFO] [stderr] Checking linux-raw-sys v0.11.0 [INFO] [stderr] Compiling find-msvc-tools v0.1.4 [INFO] [stderr] Compiling memchr v2.7.6 [INFO] [stderr] Checking libloading v0.8.9 [INFO] [stderr] Compiling wayland-sys v0.31.7 [INFO] [stderr] Checking smallvec v1.15.1 [INFO] [stderr] Compiling wayland-client v0.31.11 [INFO] [stderr] Compiling rustix v0.38.44 [INFO] [stderr] Compiling proc-macro2 v1.0.101 [INFO] [stderr] Compiling getrandom v0.3.3 [INFO] [stderr] Compiling zerocopy v0.8.27 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Checking dlib v0.5.2 [INFO] [stderr] Compiling siphasher v1.0.1 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Checking memmap2 v0.9.8 [INFO] [stderr] Compiling cc v1.2.41 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling phf_shared v0.11.3 [INFO] [stderr] Checking tracing-core v0.1.34 [INFO] [stderr] Checking regex-syntax v0.8.7 [INFO] [stderr] Checking xcursor v0.3.10 [INFO] [stderr] Checking ttf-parser v0.25.1 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling drm-fourcc v2.2.0 [INFO] [stderr] Checking drm-sys v0.7.0 [INFO] [stderr] Checking crc32fast v1.5.0 [INFO] [stderr] Checking tracing v0.1.41 [INFO] [stderr] Compiling tiny-xlib v0.2.4 [INFO] [stderr] Compiling x11-dl v2.21.0 [INFO] [stderr] Checking ab_glyph_rasterizer v0.1.10 [INFO] [stderr] Checking arrayvec v0.7.6 [INFO] [stderr] Checking flate2 v1.1.9 [INFO] [stderr] Checking rand_core v0.9.3 [INFO] [stderr] Compiling softbuffer v0.4.6 [INFO] [stderr] Compiling winit v0.30.12 [INFO] [stderr] Compiling quick-xml v0.37.5 [INFO] [stderr] Compiling phf_generator v0.11.3 [INFO] [stderr] Checking pxfm v0.1.30 [INFO] [stderr] Checking ctor-lite v0.1.0 [INFO] [stderr] Compiling by_address v1.2.1 [INFO] [stderr] Compiling palette v0.7.6 [INFO] [stderr] Checking anstream v0.6.21 [INFO] [stderr] Compiling syn v2.0.106 [INFO] [stderr] Checking png v0.18.1 [INFO] [stderr] Checking approx v0.5.1 [INFO] [stderr] Checking xkbcommon-dl v0.4.2 [INFO] [stderr] Checking fast-srgb8 v1.0.0 [INFO] [stderr] Checking dpi v0.1.2 [INFO] [stderr] Checking byteorder-lite v0.1.0 [INFO] [stderr] Checking jiff v0.2.15 [INFO] [stderr] Checking regex-automata v0.4.12 [INFO] [stderr] Checking matches v0.1.10 [INFO] [stderr] Checking glam v0.30.8 [INFO] [stderr] Compiling wayland-backend v0.3.11 [INFO] [stderr] Compiling wayland-scanner v0.31.7 [INFO] [stderr] Checking regex v1.12.1 [INFO] [stderr] Checking ppv-lite86 v0.2.21 [INFO] [stderr] Checking moxcms v0.8.1 [INFO] [stderr] Checking env_filter v0.1.3 [INFO] [stderr] Checking rand_chacha v0.9.0 [INFO] [stderr] Checking owned_ttf_parser v0.25.1 [INFO] [stderr] Checking rand v0.9.2 [INFO] [stderr] Checking ab_glyph v0.2.32 [INFO] [stderr] Checking drm-ffi v0.8.0 [INFO] [stderr] Compiling bytemuck_derive v1.10.2 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling phf_macros v0.11.3 [INFO] [stderr] Compiling palette_derive v0.7.6 [INFO] [stderr] Compiling thiserror-impl v2.0.17 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Checking phf v0.11.3 [INFO] [stderr] Checking bytemuck v1.24.0 [INFO] [stderr] Checking env_logger v0.11.8 [INFO] [stderr] Checking thiserror v2.0.17 [INFO] [stderr] Checking thiserror v1.0.69 [INFO] [stderr] Checking tiny-skia-path v0.11.4 [INFO] [stderr] Checking drm v0.12.0 [INFO] [stderr] Checking tiny-skia v0.11.4 [INFO] [stderr] Checking image v0.25.10 [INFO] [stderr] Checking polling v3.11.0 [INFO] [stderr] Checking gethostname v1.0.2 [INFO] [stderr] Checking x11rb v0.13.2 [INFO] [stderr] Checking calloop v0.13.0 [INFO] [stderr] Checking serde v1.0.228 [INFO] [stderr] Checking wayland-csd-frame v0.3.0 [INFO] [stderr] Checking wayland-protocols v0.32.9 [INFO] [stderr] Checking calloop-wayland-source v0.3.0 [INFO] [stderr] Checking wayland-cursor v0.31.11 [INFO] [stderr] Checking wayland-protocols-wlr v0.3.9 [INFO] [stderr] Checking wayland-protocols-plasma v0.3.9 [INFO] [stderr] Checking smithay-client-toolkit v0.19.2 [INFO] [stderr] Checking sctk-adwaita v0.10.1 [INFO] [stderr] Checking gameengine v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/engine/render/mod.rs:13:21 [INFO] [stdout] | [INFO] [stdout] 13 | pub type Rotation = (usize); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 13 - pub type Rotation = (usize); [INFO] [stdout] 13 + pub type Rotation = usize; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BoardSignal` [INFO] [stdout] --> src/games/chess/game.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use super::board::{Board, BoardSignal}; [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: `ComponentStorage` and `EntityId` [INFO] [stdout] --> src/games/chess/game.rs:2:33 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::engine::ecs::world::{ComponentStorage, EntityId, World}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Sprite` [INFO] [stdout] --> src/games/chess/game.rs:7:38 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::engine::render::texture::{Sprite, Texture}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ChessPosition` [INFO] [stdout] --> src/games/chess/game.rs:8:34 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::games::chess::chess::{ChessPosition, PieceColor, PieceType}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashSet` [INFO] [stdout] --> src/games/chess/game.rs:10:33 [INFO] [stdout] | [INFO] [stdout] 10 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::info` [INFO] [stdout] --> src/games/tetris/game.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use log::info; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::games::tetris::game::TetrisGame` [INFO] [stdout] --> src/main.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::games::tetris::game::TetrisGame; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/engine/render/mod.rs:13:21 [INFO] [stdout] | [INFO] [stdout] 13 | pub type Rotation = (usize); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 13 - pub type Rotation = (usize); [INFO] [stdout] 13 + pub type Rotation = usize; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BoardSignal` [INFO] [stdout] --> src/games/chess/game.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use super::board::{Board, BoardSignal}; [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: `ComponentStorage` and `EntityId` [INFO] [stdout] --> src/games/chess/game.rs:2:33 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::engine::ecs::world::{ComponentStorage, EntityId, World}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Sprite` [INFO] [stdout] --> src/games/chess/game.rs:7:38 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::engine::render::texture::{Sprite, Texture}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ChessPosition` [INFO] [stdout] --> src/games/chess/game.rs:8:34 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::games::chess::chess::{ChessPosition, PieceColor, PieceType}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashSet` [INFO] [stdout] --> src/games/chess/game.rs:10:33 [INFO] [stdout] | [INFO] [stdout] 10 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::info` [INFO] [stdout] --> src/games/tetris/game.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use log::info; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::games::tetris::game::TetrisGame` [INFO] [stdout] --> src/main.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::games::tetris::game::TetrisGame; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/games/chess/board.rs:68:9 [INFO] [stdout] | [INFO] [stdout] 67 | return true; [INFO] [stdout] | ----------- any code following this expression is unreachable [INFO] [stdout] 68 | / if let Some((_, piece_color)) = self.state.get(&position) { [INFO] [stdout] 69 | | player == piece_color [INFO] [stdout] 70 | | } else { [INFO] [stdout] 71 | | false [INFO] [stdout] 72 | | } [INFO] [stdout] | |_________^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/games/chess/board.rs:82:9 [INFO] [stdout] | [INFO] [stdout] 81 | return true; [INFO] [stdout] | ----------- any code following this expression is unreachable [INFO] [stdout] 82 | / if let Some((piece_type, _)) = self.state.get(&from_pos) { [INFO] [stdout] 83 | | let allowed_squares = piece_type.allowed_squares(to_pos); [INFO] [stdout] 84 | | if !allowed_squares.contains(&to_pos) { [INFO] [stdout] 85 | | return false; [INFO] [stdout] ... | [INFO] [stdout] 96 | | }; [INFO] [stdout] 97 | | } [INFO] [stdout] | |_________^ unreachable statement [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/games/chess/board.rs:68:9 [INFO] [stdout] | [INFO] [stdout] 67 | return true; [INFO] [stdout] | ----------- any code following this expression is unreachable [INFO] [stdout] 68 | / if let Some((_, piece_color)) = self.state.get(&position) { [INFO] [stdout] 69 | | player == piece_color [INFO] [stdout] 70 | | } else { [INFO] [stdout] 71 | | false [INFO] [stdout] 72 | | } [INFO] [stdout] | |_________^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/games/chess/board.rs:82:9 [INFO] [stdout] | [INFO] [stdout] 81 | return true; [INFO] [stdout] | ----------- any code following this expression is unreachable [INFO] [stdout] 82 | / if let Some((piece_type, _)) = self.state.get(&from_pos) { [INFO] [stdout] 83 | | let allowed_squares = piece_type.allowed_squares(to_pos); [INFO] [stdout] 84 | | if !allowed_squares.contains(&to_pos) { [INFO] [stdout] 85 | | return false; [INFO] [stdout] ... | [INFO] [stdout] 96 | | }; [INFO] [stdout] 97 | | } [INFO] [stdout] | |_________^ unreachable statement [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mouse_btn` [INFO] [stdout] --> src/app.rs:120:25 [INFO] [stdout] | [INFO] [stdout] 120 | button: mouse_btn, [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mouse_btn` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mouse_btn` [INFO] [stdout] --> src/app.rs:120:25 [INFO] [stdout] | [INFO] [stdout] 120 | button: mouse_btn, [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mouse_btn` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `position` [INFO] [stdout] --> src/games/chess/board.rs:66:28 [INFO] [stdout] | [INFO] [stdout] 66 | pub fn can_pick(&self, position: ChessPosition, player: super::game::Player) -> bool { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `player` [INFO] [stdout] --> src/games/chess/board.rs:66:53 [INFO] [stdout] | [INFO] [stdout] 66 | pub fn can_pick(&self, position: ChessPosition, player: super::game::Player) -> bool { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_player` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `from_pos` [INFO] [stdout] --> src/games/chess/board.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 77 | from_pos: ChessPosition, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_pos` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `to_pos` [INFO] [stdout] --> src/games/chess/board.rs:78:9 [INFO] [stdout] | [INFO] [stdout] 78 | to_pos: ChessPosition, [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_to_pos` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `player` [INFO] [stdout] --> src/games/chess/board.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | player: super::game::Player, [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_player` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `position` [INFO] [stdout] --> src/games/chess/board.rs:66:28 [INFO] [stdout] | [INFO] [stdout] 66 | pub fn can_pick(&self, position: ChessPosition, player: super::game::Player) -> bool { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `player` [INFO] [stdout] --> src/games/chess/board.rs:66:53 [INFO] [stdout] | [INFO] [stdout] 66 | pub fn can_pick(&self, position: ChessPosition, player: super::game::Player) -> bool { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_player` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `world` [INFO] [stdout] --> src/games/chess/board.rs:102:51 [INFO] [stdout] | [INFO] [stdout] 102 | pub fn render(&self, renderer: &mut Renderer, world: &mut World, resources: &Resources) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_world` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `from_pos` [INFO] [stdout] --> src/games/chess/board.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 77 | from_pos: ChessPosition, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_pos` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `to_pos` [INFO] [stdout] --> src/games/chess/board.rs:78:9 [INFO] [stdout] | [INFO] [stdout] 78 | to_pos: ChessPosition, [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_to_pos` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `player` [INFO] [stdout] --> src/games/chess/board.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | player: super::game::Player, [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_player` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `renderer` [INFO] [stdout] --> src/games/chess/board.rs:150:28 [INFO] [stdout] | [INFO] [stdout] 150 | pub fn init(&mut self, renderer: &mut Renderer, world: &mut World) { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_renderer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `world` [INFO] [stdout] --> src/games/chess/board.rs:102:51 [INFO] [stdout] | [INFO] [stdout] 102 | pub fn render(&self, renderer: &mut Renderer, world: &mut World, resources: &Resources) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_world` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `renderer` [INFO] [stdout] --> src/games/chess/board.rs:150:28 [INFO] [stdout] | [INFO] [stdout] 150 | pub fn init(&mut self, renderer: &mut Renderer, world: &mut World) { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_renderer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/games/chess/cursor.rs:150:17 [INFO] [stdout] | [INFO] [stdout] 150 | _ => unreachable!(), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/games/chess/cursor.rs:150:17 [INFO] [stdout] | [INFO] [stdout] 85 | CursorSignal::Move(direction) => { [INFO] [stdout] | ----------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 116 | CursorSignal::Pick => { [INFO] [stdout] | ------------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 135 | CursorSignal::Put => { [INFO] [stdout] | ----------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 150 | _ => unreachable!(), [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/games/chess/cursor.rs:150:17 [INFO] [stdout] | [INFO] [stdout] 150 | _ => unreachable!(), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/games/chess/cursor.rs:150:17 [INFO] [stdout] | [INFO] [stdout] 85 | CursorSignal::Move(direction) => { [INFO] [stdout] | ----------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 116 | CursorSignal::Pick => { [INFO] [stdout] | ------------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 135 | CursorSignal::Put => { [INFO] [stdout] | ----------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 150 | _ => unreachable!(), [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: unused variable: `highlighter_pos` [INFO] [stdout] --> src/games/chess/cursor.rs:136:33 [INFO] [stdout] | [INFO] [stdout] 136 | if let Some(highlighter_pos) = self.highlighted.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_highlighter_pos` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cursor_x` [INFO] [stdout] --> src/games/chess/cursor.rs:137:30 [INFO] [stdout] | [INFO] [stdout] 137 | let (cursor_x, cursor_y) = { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cursor_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cursor_y` [INFO] [stdout] --> src/games/chess/cursor.rs:137:40 [INFO] [stdout] | [INFO] [stdout] 137 | let (cursor_x, cursor_y) = { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cursor_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `highlighter_pos` [INFO] [stdout] --> src/games/chess/cursor.rs:136:33 [INFO] [stdout] | [INFO] [stdout] 136 | if let Some(highlighter_pos) = self.highlighted.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_highlighter_pos` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `renderer` [INFO] [stdout] --> src/games/chess/cursor.rs:158:47 [INFO] [stdout] | [INFO] [stdout] 158 | pub fn init(&mut self, world: &mut World, renderer: &mut Renderer, board_entity: EntityId) { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_renderer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cursor_x` [INFO] [stdout] --> src/games/chess/cursor.rs:137:30 [INFO] [stdout] | [INFO] [stdout] 137 | let (cursor_x, cursor_y) = { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cursor_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cursor_y` [INFO] [stdout] --> src/games/chess/cursor.rs:137:40 [INFO] [stdout] | [INFO] [stdout] 137 | let (cursor_x, cursor_y) = { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cursor_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `renderer` [INFO] [stdout] --> src/games/chess/cursor.rs:158:47 [INFO] [stdout] | [INFO] [stdout] 158 | pub fn init(&mut self, world: &mut World, renderer: &mut Renderer, board_entity: EntityId) { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_renderer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `world` [INFO] [stdout] --> src/games/tetris/game.rs:155:24 [INFO] [stdout] | [INFO] [stdout] 155 | fn init(&mut self, world: &mut World, renderer: &mut Renderer) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_world` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `renderer` [INFO] [stdout] --> src/games/tetris/game.rs:155:43 [INFO] [stdout] | [INFO] [stdout] 155 | fn init(&mut self, world: &mut World, renderer: &mut Renderer) { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_renderer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `world` [INFO] [stdout] --> src/games/tetris/game.rs:155:24 [INFO] [stdout] | [INFO] [stdout] 155 | fn init(&mut self, world: &mut World, renderer: &mut Renderer) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_world` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `renderer` [INFO] [stdout] --> src/games/tetris/game.rs:155:43 [INFO] [stdout] | [INFO] [stdout] 155 | fn init(&mut self, world: &mut World, renderer: &mut Renderer) { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_renderer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `depth` [INFO] [stdout] --> src/games/tetris/game.rs:219:45 [INFO] [stdout] | [INFO] [stdout] 219 | CollisionSide::Left(depth) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_depth` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `depth` [INFO] [stdout] --> src/games/tetris/game.rs:225:46 [INFO] [stdout] | [INFO] [stdout] 225 | CollisionSide::Right(depth) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_depth` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `depth` [INFO] [stdout] --> src/games/tetris/game.rs:219:45 [INFO] [stdout] | [INFO] [stdout] 219 | CollisionSide::Left(depth) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_depth` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `depth` [INFO] [stdout] --> src/games/tetris/game.rs:225:46 [INFO] [stdout] | [INFO] [stdout] 225 | CollisionSide::Right(depth) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_depth` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `depth` [INFO] [stdout] --> src/games/tetris/game.rs:231:47 [INFO] [stdout] | [INFO] [stdout] 231 | CollisionSide::Bottom(depth) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_depth` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/games/tetris/game.rs:240:52 [INFO] [stdout] | [INFO] [stdout] 240 | CollisionSide::Contained { x, y } => { [INFO] [stdout] | ^ help: try ignoring the field: `x: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/games/tetris/game.rs:240:55 [INFO] [stdout] | [INFO] [stdout] 240 | CollisionSide::Contained { x, y } => { [INFO] [stdout] | ^ help: try ignoring the field: `y: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `depth` [INFO] [stdout] --> src/games/tetris/game.rs:231:47 [INFO] [stdout] | [INFO] [stdout] 231 | CollisionSide::Bottom(depth) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_depth` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/games/tetris/game.rs:240:52 [INFO] [stdout] | [INFO] [stdout] 240 | CollisionSide::Contained { x, y } => { [INFO] [stdout] | ^ help: try ignoring the field: `x: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> src/games/tetris/game.rs:240:55 [INFO] [stdout] | [INFO] [stdout] 240 | CollisionSide::Contained { x, y } => { [INFO] [stdout] | ^ help: try ignoring the field: `y: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ColliderShape` is never used [INFO] [stdout] --> src/engine/ecs/component/mod.rs:78:6 [INFO] [stdout] | [INFO] [stdout] 78 | enum ColliderShape { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_points` is never used [INFO] [stdout] --> src/engine/ecs/component/mod.rs:83:12 [INFO] [stdout] | [INFO] [stdout] 82 | impl Collider { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] 83 | pub fn get_points(&self, entity_pos: RenderPosition) -> (RenderPosition, RenderPosition) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CollisionInfo` is never constructed [INFO] [stdout] --> src/engine/ecs/component/mod.rs:100:12 [INFO] [stdout] | [INFO] [stdout] 100 | pub struct CollisionInfo { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `add_collision` is never used [INFO] [stdout] --> src/engine/ecs/component/mod.rs:105:12 [INFO] [stdout] | [INFO] [stdout] 104 | impl CollisionInfo { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] 105 | pub fn add_collision(&mut self, entity_id: EntityId, collision_sides: HashSet) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Collision` is never constructed [INFO] [stdout] --> src/engine/ecs/component/mod.rs:112:12 [INFO] [stdout] | [INFO] [stdout] 112 | pub struct Collision { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/engine/ecs/component/mod.rs:118:12 [INFO] [stdout] | [INFO] [stdout] 117 | impl Collision { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 118 | pub fn new(entity_id: EntityId, sides: HashSet) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `CollisionSide` is never used [INFO] [stdout] --> src/engine/ecs/component/mod.rs:124:10 [INFO] [stdout] | [INFO] [stdout] 124 | pub enum CollisionSide { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `x` and `y` are never read [INFO] [stdout] --> src/engine/ecs/component/mod.rs:183:9 [INFO] [stdout] | [INFO] [stdout] 182 | pub struct Size { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 183 | pub x: usize, [INFO] [stdout] | ^ [INFO] [stdout] 184 | pub y: usize, [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_collision` is never used [INFO] [stdout] --> src/engine/ecs/world.rs:88:12 [INFO] [stdout] | [INFO] [stdout] 29 | impl World { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 88 | pub fn get_collision(&self, entity_id: EntityId) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ColliderShape` is never used [INFO] [stdout] --> src/engine/ecs/component/mod.rs:78:6 [INFO] [stdout] | [INFO] [stdout] 78 | enum ColliderShape { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_points` is never used [INFO] [stdout] --> src/engine/ecs/component/mod.rs:83:12 [INFO] [stdout] | [INFO] [stdout] 82 | impl Collider { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] 83 | pub fn get_points(&self, entity_pos: RenderPosition) -> (RenderPosition, RenderPosition) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `key_down` and `mouse_pressed` are never used [INFO] [stdout] --> src/engine/input.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl InputState { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 14 | pub fn key_down(&mut self, key: KeyCode) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | pub fn mouse_pressed(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CollisionInfo` is never constructed [INFO] [stdout] --> src/engine/ecs/component/mod.rs:100:12 [INFO] [stdout] | [INFO] [stdout] 100 | pub struct CollisionInfo { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Vec2` is never constructed [INFO] [stdout] --> src/engine/math/mod.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct Vec2 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Point` is never constructed [INFO] [stdout] --> src/engine/math/mod.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Point { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `add_collision` is never used [INFO] [stdout] --> src/engine/ecs/component/mod.rs:105:12 [INFO] [stdout] | [INFO] [stdout] 104 | impl CollisionInfo { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] 105 | pub fn add_collision(&mut self, entity_id: EntityId, collision_sides: HashSet) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Rect` is never constructed [INFO] [stdout] --> src/engine/math/mod.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct Rect { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Collision` is never constructed [INFO] [stdout] --> src/engine/ecs/component/mod.rs:112:12 [INFO] [stdout] | [INFO] [stdout] 112 | pub struct Collision { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Renderable` is never used [INFO] [stdout] --> src/engine/render/mod.rs:15:11 [INFO] [stdout] | [INFO] [stdout] 15 | pub trait Renderable { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/engine/ecs/component/mod.rs:118:12 [INFO] [stdout] | [INFO] [stdout] 117 | impl Collision { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 118 | pub fn new(entity_id: EntityId, sides: HashSet) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `CollisionSide` is never used [INFO] [stdout] --> src/engine/ecs/component/mod.rs:124:10 [INFO] [stdout] | [INFO] [stdout] 124 | pub enum CollisionSide { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `triangle` and `rect` are never used [INFO] [stdout] --> src/engine/render/renderer.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl Renderer { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 25 | pub fn triangle(&mut self, p0: Point, p1: Point, p2: Point, color: Color) -> Triangle { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | pub fn rect(&mut self, position: Position, size: Size, color: Color) -> Rectangle { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `x` and `y` are never read [INFO] [stdout] --> src/engine/ecs/component/mod.rs:183:9 [INFO] [stdout] | [INFO] [stdout] 182 | pub struct Size { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 183 | pub x: usize, [INFO] [stdout] | ^ [INFO] [stdout] 184 | pub y: usize, [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `width` and `height` are never used [INFO] [stdout] --> src/engine/render/texture.rs:47:12 [INFO] [stdout] | [INFO] [stdout] 15 | impl Texture { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn width(&self) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn height(&self) -> usize { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_collision` is never used [INFO] [stdout] --> src/engine/ecs/world.rs:88:12 [INFO] [stdout] | [INFO] [stdout] 29 | impl World { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 88 | pub fn get_collision(&self, entity_id: EntityId) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `with_position` and `size` are never used [INFO] [stdout] --> src/engine/render/texture.rs:110:12 [INFO] [stdout] | [INFO] [stdout] 85 | impl<'a> Sprite<'a> { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 110 | pub fn with_position(mut self, position: SpritePosition) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 115 | pub fn size(&self) -> (usize, usize) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `key_down` and `mouse_pressed` are never used [INFO] [stdout] --> src/engine/input.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl InputState { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 14 | pub fn key_down(&mut self, key: KeyCode) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | pub fn mouse_pressed(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Vec2` is never constructed [INFO] [stdout] --> src/engine/math/mod.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct Vec2 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Point` is never constructed [INFO] [stdout] --> src/engine/math/mod.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Point { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Rect` is never constructed [INFO] [stdout] --> src/engine/math/mod.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct Rect { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Renderable` is never used [INFO] [stdout] --> src/engine/render/mod.rs:15:11 [INFO] [stdout] | [INFO] [stdout] 15 | pub trait Renderable { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `triangle` and `rect` are never used [INFO] [stdout] --> src/engine/render/renderer.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl Renderer { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 25 | pub fn triangle(&mut self, p0: Point, p1: Point, p2: Point, color: Color) -> Triangle { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | pub fn rect(&mut self, position: Position, size: Size, color: Color) -> Rectangle { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `width`, `height`, and `sprite` are never used [INFO] [stdout] --> src/engine/render/texture.rs:47:12 [INFO] [stdout] | [INFO] [stdout] 15 | impl Texture { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn width(&self) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn height(&self) -> usize { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | pub fn sprite(&self, source: SpriteSource, position: SpritePosition) -> Option> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `with_position`, and `size` are never used [INFO] [stdout] --> src/engine/render/texture.rs:86:12 [INFO] [stdout] | [INFO] [stdout] 85 | impl<'a> Sprite<'a> { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 86 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 110 | pub fn with_position(mut self, position: SpritePosition) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 115 | pub fn size(&self) -> (usize, usize) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `outline` is never used [INFO] [stdout] --> src/engine/render/triangle.rs:69:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl Triangle { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 69 | pub fn outline(&self, renderer: &mut Renderer) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `update`, `can_pick`, and `can_put` are never used [INFO] [stdout] --> src/games/chess/board.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl Board { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn update( [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | pub fn can_pick(&self, position: ChessPosition, player: super::game::Player) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | pub fn can_put( [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `outline` is never used [INFO] [stdout] --> src/engine/render/triangle.rs:69:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl Triangle { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 69 | pub fn outline(&self, renderer: &mut Renderer) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `BoardEvent` is never used [INFO] [stdout] --> src/games/chess/board.rs:168:17 [INFO] [stdout] | [INFO] [stdout] 168 | pub(super) enum BoardEvent { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get` and `remove` are never used [INFO] [stdout] --> src/games/chess/board.rs:187:12 [INFO] [stdout] | [INFO] [stdout] 186 | impl BoardState { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 187 | pub fn get(&self, position: &ChessPosition) -> Option<(PieceType, PieceColor)> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 195 | pub fn remove(&mut self, position: &ChessPosition) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `update`, `can_pick`, and `can_put` are never used [INFO] [stdout] --> src/games/chess/board.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl Board { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn update( [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | pub fn can_pick(&self, position: ChessPosition, player: super::game::Player) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | pub fn can_put( [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `BoardSignal` is never used [INFO] [stdout] --> src/games/chess/board.rs:243:17 [INFO] [stdout] | [INFO] [stdout] 243 | pub(super) enum BoardSignal { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `BoardEvent` is never used [INFO] [stdout] --> src/games/chess/board.rs:168:17 [INFO] [stdout] | [INFO] [stdout] 168 | pub(super) enum BoardEvent { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `allowed_squares` is never used [INFO] [stdout] --> src/games/chess/chess.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl PieceType { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] 13 | pub fn allowed_squares(self, position: ChessPosition) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `into_parts` is never used [INFO] [stdout] --> src/games/chess/chess.rs:102:12 [INFO] [stdout] | [INFO] [stdout] 101 | impl ChessPosition { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] 102 | pub fn into_parts(self) -> (u8, u8) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `remove` is never used [INFO] [stdout] --> src/games/chess/board.rs:195:12 [INFO] [stdout] | [INFO] [stdout] 186 | impl BoardState { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 195 | pub fn remove(&mut self, position: &ChessPosition) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_position`, `get_highlighted`, `pick`, and `put` are never used [INFO] [stdout] --> src/games/chess/cursor.rs:40:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl Cursor { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 40 | pub fn get_position(&self) -> ChessPosition { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn get_highlighted(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 48 | fn pick(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | fn put(&mut self) -> Option<(ChessPosition, ChessPosition)> { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `player` is never read [INFO] [stdout] --> src/games/chess/game.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct ChessGame { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 24 | player: Player, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_current_player` is never used [INFO] [stdout] --> src/games/chess/game.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 29 | impl ChessGame { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 40 | fn get_current_player(&self) -> Player { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BOARD_CELLS` is never used [INFO] [stdout] --> src/games/tetris/game.rs:15:7 [INFO] [stdout] | [INFO] [stdout] 15 | const BOARD_CELLS: usize = 10; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BOARD_ROWS` is never used [INFO] [stdout] --> src/games/tetris/game.rs:16:7 [INFO] [stdout] | [INFO] [stdout] 16 | const BOARD_ROWS: usize = 20; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `BoardSignal` is never used [INFO] [stdout] --> src/games/chess/board.rs:243:17 [INFO] [stdout] | [INFO] [stdout] 243 | pub(super) enum BoardSignal { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Board` is never constructed [INFO] [stdout] --> src/games/tetris/game.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct Board { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `allowed_squares` is never used [INFO] [stdout] --> src/games/chess/chess.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl PieceType { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] 13 | pub fn allowed_squares(self, position: ChessPosition) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `into_parts` is never used [INFO] [stdout] --> src/games/chess/chess.rs:102:12 [INFO] [stdout] | [INFO] [stdout] 101 | impl ChessPosition { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] 102 | pub fn into_parts(self) -> (u8, u8) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `render` are never used [INFO] [stdout] --> src/games/tetris/game.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 24 | impl Board { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 25 | pub fn new(world: &mut World) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 64 | pub fn render(&self, renderer: &mut Renderer) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_position`, `get_highlighted`, `pick`, and `put` are never used [INFO] [stdout] --> src/games/chess/cursor.rs:40:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl Cursor { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 40 | pub fn get_position(&self) -> ChessPosition { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn get_highlighted(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 48 | fn pick(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | fn put(&mut self) -> Option<(ChessPosition, ChessPosition)> { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `player` is never read [INFO] [stdout] --> src/games/chess/game.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct ChessGame { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 24 | player: Player, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_current_player` is never used [INFO] [stdout] --> src/games/chess/game.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 29 | impl ChessGame { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 40 | fn get_current_player(&self) -> Player { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TetrisGame` is never constructed [INFO] [stdout] --> src/games/tetris/game.rs:74:12 [INFO] [stdout] | [INFO] [stdout] 74 | pub struct TetrisGame { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BOARD_CELLS` is never used [INFO] [stdout] --> src/games/tetris/game.rs:15:7 [INFO] [stdout] | [INFO] [stdout] 15 | const BOARD_CELLS: usize = 10; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BOARD_ROWS` is never used [INFO] [stdout] --> src/games/tetris/game.rs:16:7 [INFO] [stdout] | [INFO] [stdout] 16 | const BOARD_ROWS: usize = 20; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Board` is never constructed [INFO] [stdout] --> src/games/tetris/game.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct Board { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `push_landed_tetrominos`, `move_tetromino`, `refresh_cells`, and `handle_lines` are never used [INFO] [stdout] --> src/games/tetris/game.rs:161:12 [INFO] [stdout] | [INFO] [stdout] 160 | impl TetrisGame { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 161 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 171 | fn push_landed_tetrominos(&mut self, world: &mut World) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 202 | fn move_tetromino(&mut self, world: &mut World, move_direction: MoveDirection, speed: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 252 | fn refresh_cells(&mut self, world: &mut World) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 297 | fn handle_lines(&mut self, world: &mut World) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `render` are never used [INFO] [stdout] --> src/games/tetris/game.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 24 | impl Board { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 25 | pub fn new(world: &mut World) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 64 | pub fn render(&self, renderer: &mut Renderer) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TetrisGame` is never constructed [INFO] [stdout] --> src/games/tetris/game.rs:74:12 [INFO] [stdout] | [INFO] [stdout] 74 | pub struct TetrisGame { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `push_landed_tetrominos`, `move_tetromino`, `refresh_cells`, and `handle_lines` are never used [INFO] [stdout] --> src/games/tetris/game.rs:161:12 [INFO] [stdout] | [INFO] [stdout] 160 | impl TetrisGame { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 161 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 171 | fn push_landed_tetrominos(&mut self, world: &mut World) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 202 | fn move_tetromino(&mut self, world: &mut World, move_direction: MoveDirection, speed: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 252 | fn refresh_cells(&mut self, world: &mut World) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 297 | fn handle_lines(&mut self, world: &mut World) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/games/chess/game.rs:52:17 [INFO] [stdout] | [INFO] [stdout] 52 | self.cursor.update(CursorSignal::Put, world); [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] 52 | let _ = self.cursor.update(CursorSignal::Put, world); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/games/chess/game.rs:54:17 [INFO] [stdout] | [INFO] [stdout] 54 | self.cursor.update(CursorSignal::Pick, world); [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] 54 | let _ = self.cursor.update(CursorSignal::Pick, world); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/games/chess/game.rs:59:13 [INFO] [stdout] | [INFO] [stdout] 59 | self.cursor.update(CursorSignal::Move(Direction::Up), world); [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] 59 | let _ = self.cursor.update(CursorSignal::Move(Direction::Up), world); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/games/chess/game.rs:52:17 [INFO] [stdout] | [INFO] [stdout] 52 | self.cursor.update(CursorSignal::Put, world); [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] 52 | let _ = self.cursor.update(CursorSignal::Put, world); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/games/chess/game.rs:54:17 [INFO] [stdout] | [INFO] [stdout] 54 | self.cursor.update(CursorSignal::Pick, world); [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] 54 | let _ = self.cursor.update(CursorSignal::Pick, world); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/games/chess/game.rs:61:13 [INFO] [stdout] | [INFO] [stdout] 61 | / self.cursor [INFO] [stdout] 62 | | .update(CursorSignal::Move(Direction::Down), world); [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] 61 | let _ = self.cursor [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/games/chess/game.rs:59:13 [INFO] [stdout] | [INFO] [stdout] 59 | self.cursor.update(CursorSignal::Move(Direction::Up), world); [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] 59 | let _ = self.cursor.update(CursorSignal::Move(Direction::Up), world); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/games/chess/game.rs:64:13 [INFO] [stdout] | [INFO] [stdout] 64 | / self.cursor [INFO] [stdout] 65 | | .update(CursorSignal::Move(Direction::Left), world); [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] 64 | let _ = self.cursor [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/games/chess/game.rs:67:13 [INFO] [stdout] | [INFO] [stdout] 67 | / self.cursor [INFO] [stdout] 68 | | .update(CursorSignal::Move(Direction::Right), world); [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] 67 | let _ = self.cursor [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/games/chess/game.rs:61:13 [INFO] [stdout] | [INFO] [stdout] 61 | / self.cursor [INFO] [stdout] 62 | | .update(CursorSignal::Move(Direction::Down), world); [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] 61 | let _ = self.cursor [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/games/chess/game.rs:64:13 [INFO] [stdout] | [INFO] [stdout] 64 | / self.cursor [INFO] [stdout] 65 | | .update(CursorSignal::Move(Direction::Left), world); [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] 64 | let _ = self.cursor [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/games/chess/game.rs:67:13 [INFO] [stdout] | [INFO] [stdout] 67 | / self.cursor [INFO] [stdout] 68 | | .update(CursorSignal::Move(Direction::Right), world); [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] 67 | let _ = self.cursor [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: unused dependency `glam` [INFO] [stderr] --> Cargo.toml:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | glam = "0.30.8" [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `cargo::unused_dependencies` is set to `warn` by default [INFO] [stderr] help: consider removing the dependency on `glam` [INFO] [stderr] warning: unused dependency `matches` [INFO] [stderr] --> Cargo.toml:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | matches = "0.1.10" [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: consider removing the dependency on `matches` [INFO] [stderr] warning: unused dependency `palette` [INFO] [stderr] --> Cargo.toml:16:15 [INFO] [stderr] | [INFO] [stderr] 16 | [dependencies.palette] [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: consider removing the dependency on `palette` [INFO] [stderr] warning: unused dependency `serde` [INFO] [stderr] --> Cargo.toml:20:15 [INFO] [stderr] | [INFO] [stderr] 20 | [dependencies.serde] [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: consider removing the dependency on `serde` [INFO] [stderr] warning: `gameengine` (manifest) generated 4 warnings [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 51.19s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: softbuffer v0.4.6, winit v0.30.12 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 4` [INFO] running `Command { std: "docker" "inspect" "c676ce84c616e967bf4fa103d06972de23b266af23d8781e4b9304d3f5bf6c6b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c676ce84c616e967bf4fa103d06972de23b266af23d8781e4b9304d3f5bf6c6b", kill_on_drop: false }` [INFO] [stdout] c676ce84c616e967bf4fa103d06972de23b266af23d8781e4b9304d3f5bf6c6b