[INFO] fetching crate fallingblocks 0.1.4... [INFO] checking fallingblocks-0.1.4 against try#a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d for pr-145342-1 [INFO] extracting crate fallingblocks 0.1.4 into /workspace/builds/worker-5-tc2/source [INFO] started tweaking crates.io crate fallingblocks 0.1.4 [INFO] finished tweaking crates.io crate fallingblocks 0.1.4 [INFO] tweaked toml for crates.io crate fallingblocks 0.1.4 written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate fallingblocks 0.1.4 on toolchain a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate fallingblocks 0.1.4 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" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 040c8fd48876f0ca8e2c46e81182912ae4c5913acacd6dc8e57296adacdac617 [INFO] running `Command { std: "docker" "start" "-a" "040c8fd48876f0ca8e2c46e81182912ae4c5913acacd6dc8e57296adacdac617", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "040c8fd48876f0ca8e2c46e81182912ae4c5913acacd6dc8e57296adacdac617", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "040c8fd48876f0ca8e2c46e81182912ae4c5913acacd6dc8e57296adacdac617", kill_on_drop: false }` [INFO] [stdout] 040c8fd48876f0ca8e2c46e81182912ae4c5913acacd6dc8e57296adacdac617 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] be068dcd9192ee969843cfaf3514769319dbfd0938596f511b92ba172ac7b566 [INFO] running `Command { std: "docker" "start" "-a" "be068dcd9192ee969843cfaf3514769319dbfd0938596f511b92ba172ac7b566", kill_on_drop: false }` [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Compiling proc-macro2 v1.0.94 [INFO] [stderr] Compiling unicode-ident v1.0.18 [INFO] [stderr] Checking log v0.4.27 [INFO] [stderr] Compiling libc v0.2.171 [INFO] [stderr] Compiling autocfg v1.4.0 [INFO] [stderr] Checking lazy_static v1.5.0 [INFO] [stderr] Checking bytemuck v1.22.0 [INFO] [stderr] Checking arrayvec v0.7.6 [INFO] [stderr] Checking bitflags v1.3.2 [INFO] [stderr] Compiling crunchy v0.2.3 [INFO] [stderr] Checking once_cell v1.21.1 [INFO] [stderr] Compiling tiny-keccak v2.0.2 [INFO] [stderr] Checking allocator-api2 v0.2.21 [INFO] [stderr] Checking encoding_rs v0.8.35 [INFO] [stderr] Compiling libm v0.2.11 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling version_check v0.9.5 [INFO] [stderr] Checking zerocopy v0.7.35 [INFO] [stderr] Compiling rustversion v1.0.20 [INFO] [stderr] Compiling hashbrown v0.15.2 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Checking foldhash v0.1.5 [INFO] [stderr] Checking smallvec v1.14.0 [INFO] [stderr] Checking symphonia-core v0.5.4 [INFO] [stderr] Checking equivalent v1.0.2 [INFO] [stderr] Checking pin-project-lite v0.2.16 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Checking tracing-core v0.1.33 [INFO] [stderr] Compiling winnow v0.7.4 [INFO] [stderr] Compiling ahash v0.8.11 [INFO] [stderr] Compiling toml_datetime v0.6.8 [INFO] [stderr] Checking bitflags v2.9.0 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Compiling lock_api v0.4.12 [INFO] [stderr] Compiling signal-hook v0.3.17 [INFO] [stderr] Compiling typeid v1.0.3 [INFO] [stderr] Compiling fnv v1.0.7 [INFO] [stderr] Compiling ident_case v1.0.1 [INFO] [stderr] Compiling typenum v1.18.0 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Checking memchr v2.7.4 [INFO] [stderr] Compiling pkg-config v0.3.32 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Checking thread_local v1.1.8 [INFO] [stderr] Checking fastrand v2.3.0 [INFO] [stderr] Checking regex-syntax v0.8.5 [INFO] [stderr] Compiling unicode-xid v0.2.6 [INFO] [stderr] Checking futures-core v0.3.31 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Compiling rustix v0.38.44 [INFO] [stderr] Checking getrandom v0.2.15 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Checking signal-hook-registry v1.4.2 [INFO] [stderr] Compiling syn v2.0.100 [INFO] [stderr] Checking scopeguard v1.2.0 [INFO] [stderr] Checking parking v2.2.1 [INFO] [stderr] Checking futures-io v0.3.31 [INFO] [stderr] Checking static_assertions v1.1.0 [INFO] [stderr] Checking futures-lite v2.6.0 [INFO] [stderr] Checking concurrent-queue v2.5.0 [INFO] [stderr] Compiling indexmap v2.8.0 [INFO] [stderr] Compiling uuid v1.12.1 [INFO] [stderr] Checking mio v1.0.3 [INFO] [stderr] Compiling const-random-macro v0.1.16 [INFO] [stderr] Compiling alsa-sys v0.3.1 [INFO] [stderr] Checking utf8parse v0.2.2 [INFO] [stderr] Checking extended v0.1.0 [INFO] [stderr] Checking linux-raw-sys v0.4.15 [INFO] [stderr] Compiling paste v1.0.15 [INFO] [stderr] Checking async-task v4.7.1 [INFO] [stderr] Compiling heck v0.5.0 [INFO] [stderr] Checking either v1.15.0 [INFO] [stderr] Checking symphonia-metadata v0.5.4 [INFO] [stderr] Checking generic-array v1.2.0 [INFO] [stderr] Checking symphonia-codec-aac v0.5.4 [INFO] [stderr] Checking itertools v0.13.0 [INFO] [stderr] Checking const-random v0.1.18 [INFO] [stderr] Checking symphonia-codec-alac v0.5.4 [INFO] [stderr] Checking symphonia-codec-pcm v0.5.4 [INFO] [stderr] Checking symphonia-utils-xiph v0.5.4 [INFO] [stderr] Checking symphonia-bundle-mp3 v0.5.4 [INFO] [stderr] Checking symphonia-format-caf v0.5.4 [INFO] [stderr] Checking symphonia-bundle-flac v0.5.4 [INFO] [stderr] Checking symphonia-codec-vorbis v0.5.4 [INFO] [stderr] Checking symphonia-format-ogg v0.5.4 [INFO] [stderr] Checking symphonia-format-mkv v0.5.4 [INFO] [stderr] Checking symphonia-format-isomp4 v0.5.4 [INFO] [stderr] Checking symphonia-format-riff v0.5.4 [INFO] [stderr] Checking num-complex v0.4.6 [INFO] [stderr] Checking symphonia-codec-adpcm v0.5.4 [INFO] [stderr] Checking signal-hook-mio v0.2.4 [INFO] [stderr] Checking anstyle-parse v0.2.6 [INFO] [stderr] Checking parking_lot v0.12.3 [INFO] [stderr] Checking castaway v0.2.3 [INFO] [stderr] Checking glam v0.28.0 [INFO] [stderr] Checking async-executor v1.13.1 [INFO] [stderr] Checking safe_arch v0.7.4 [INFO] [stderr] Checking is_terminal_polyfill v1.70.1 [INFO] [stderr] Checking fixedbitset v0.4.2 [INFO] [stderr] Checking anstyle v1.0.10 [INFO] [stderr] Checking regex-automata v0.4.9 [INFO] [stderr] Checking unicode-segmentation v1.12.0 [INFO] [stderr] Compiling toml_edit v0.22.24 [INFO] [stderr] Compiling cpal v0.15.3 [INFO] [stderr] Checking dyn-clone v1.0.19 [INFO] [stderr] Checking overload v0.1.1 [INFO] [stderr] Checking unicode-width v0.1.14 [INFO] [stderr] Compiling indoc v2.0.6 [INFO] [stderr] Checking anstyle-query v1.1.2 [INFO] [stderr] Checking hashbrown v0.14.5 [INFO] [stderr] Checking erased-serde v0.4.6 [INFO] [stderr] Checking downcast-rs v1.2.1 [INFO] [stderr] Checking ryu v1.0.20 [INFO] [stderr] Checking tinyvec_macros v0.1.1 [INFO] [stderr] Checking bevy_ptr v0.15.3 [INFO] [stderr] Checking itoa v1.0.15 [INFO] [stderr] Checking colorchoice v1.0.3 [INFO] [stderr] Compiling anyhow v1.0.97 [INFO] [stderr] Checking disqualified v1.0.0 [INFO] [stderr] Checking anstream v0.6.18 [INFO] [stderr] Checking tinyvec v1.9.0 [INFO] [stderr] Checking nu-ansi-term v0.46.0 [INFO] [stderr] Checking symphonia v0.5.4 [INFO] [stderr] Checking compact_str v0.8.1 [INFO] [stderr] Checking microfft v0.6.0 [INFO] [stderr] Checking wide v0.7.32 [INFO] [stderr] Checking alsa v0.9.1 [INFO] [stderr] Checking unicode-truncate v1.1.0 [INFO] [stderr] Checking bevy_tasks v0.15.3 [INFO] [stderr] Checking numeric-array v0.6.1 [INFO] [stderr] Checking crossterm v0.28.1 [INFO] [stderr] Checking lru v0.12.5 [INFO] [stderr] Checking tracing-log v0.2.0 [INFO] [stderr] Checking sharded-slab v0.1.7 [INFO] [stderr] Checking unicode-width v0.2.0 [INFO] [stderr] Checking nonmax v0.5.5 [INFO] [stderr] Checking jiff v0.2.5 [INFO] [stderr] Checking petgraph v0.6.5 [INFO] [stderr] Checking dasp_sample v0.11.0 [INFO] [stderr] Checking fixedbitset v0.5.7 [INFO] [stderr] Checking cassowary v0.3.0 [INFO] [stderr] Checking crossbeam-channel v0.5.14 [INFO] [stderr] Checking tracing-subscriber v0.3.19 [INFO] [stderr] Checking regex v1.11.1 [INFO] [stderr] Checking env_filter v0.1.3 [INFO] [stderr] Compiling bevy_macro_utils v0.15.3 [INFO] [stderr] Compiling darling_core v0.20.10 [INFO] [stderr] Compiling tracing-attributes v0.1.28 [INFO] [stderr] Compiling pin-project-internal v1.1.10 [INFO] [stderr] Compiling bevy_utils_proc_macros v0.15.3 [INFO] [stderr] Compiling derive_more-impl v1.0.0 [INFO] [stderr] Compiling strum_macros v0.26.4 [INFO] [stderr] Compiling assert_type_match v0.1.1 [INFO] [stderr] Compiling bevy_reflect_derive v0.15.3 [INFO] [stderr] Compiling bevy_ecs_macros v0.15.3 [INFO] [stderr] Checking funutd v0.16.0 [INFO] [stderr] Checking tracing v0.1.41 [INFO] [stderr] Checking pin-project v1.1.10 [INFO] [stderr] Checking thingbuf v0.1.6 [INFO] [stderr] Checking bevy_utils v0.15.3 [INFO] [stderr] Compiling darling_macro v0.20.10 [INFO] [stderr] Checking fundsp v0.20.0 [INFO] [stderr] Compiling darling v0.20.10 [INFO] [stderr] Compiling instability v0.3.7 [INFO] [stderr] Checking strum v0.26.3 [INFO] [stderr] Checking ratatui v0.29.0 [INFO] [stderr] Checking env_logger v0.11.7 [INFO] [stderr] Checking derive_more v1.0.0 [INFO] [stderr] Checking bevy_reflect v0.15.3 [INFO] [stderr] Checking bevy_ecs v0.15.3 [INFO] [stderr] Checking fallingblocks v0.1.4 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `Duration` [INFO] [stdout] --> src/app.rs:11:17 [INFO] [stdout] | [INFO] [stdout] 11 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TetrominoType` [INFO] [stdout] --> src/app.rs:14:75 [INFO] [stdout] | [INFO] [stdout] 14 | use crate::components::{Board, CoyoteTime, GameState, Input, ScreenShake, TetrominoType}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::particles` [INFO] [stdout] --> src/menu.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::particles; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Borders` and `Margin` [INFO] [stdout] --> src/menu.rs:8:56 [INFO] [stdout] | [INFO] [stdout] 8 | layout::{Alignment, Constraint, Direction, Layout, Margin, Rect}, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 11 | widgets::{Block, Borders, Paragraph, Wrap}, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Instant` [INFO] [stdout] --> src/sound.rs:8:27 [INFO] [stdout] | [INFO] [stdout] 8 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Event`, `KeyCode`, `KeyEvent`, `KeyModifiers`, and `self` [INFO] [stdout] --> src/systems.rs:25:24 [INFO] [stdout] | [INFO] [stdout] 25 | use crossterm::event::{self, Event, KeyCode, KeyEvent, KeyModifiers}; [INFO] [stdout] | ^^^^ ^^^^^ ^^^^^^^ ^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Duration` and `Instant` [INFO] [stdout] --> src/systems.rs:26:17 [INFO] [stdout] | [INFO] [stdout] 26 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `OptionsOption` [INFO] [stdout] --> src/ui.rs:21:36 [INFO] [stdout] | [INFO] [stdout] 21 | use crate::menu_types::{MenuState, OptionsOption}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Duration` [INFO] [stdout] --> src/app.rs:11:17 [INFO] [stdout] | [INFO] [stdout] 11 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TetrominoType` [INFO] [stdout] --> src/app.rs:14:75 [INFO] [stdout] | [INFO] [stdout] 14 | use crate::components::{Board, CoyoteTime, GameState, Input, ScreenShake, TetrominoType}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::particles` [INFO] [stdout] --> src/menu.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::particles; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Borders` and `Margin` [INFO] [stdout] --> src/menu.rs:8:56 [INFO] [stdout] | [INFO] [stdout] 8 | layout::{Alignment, Constraint, Direction, Layout, Margin, Rect}, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 11 | widgets::{Block, Borders, Paragraph, Wrap}, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Instant` [INFO] [stdout] --> src/sound.rs:8:27 [INFO] [stdout] | [INFO] [stdout] 8 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Event`, `KeyCode`, `KeyEvent`, `KeyModifiers`, and `self` [INFO] [stdout] --> src/systems.rs:25:24 [INFO] [stdout] | [INFO] [stdout] 25 | use crossterm::event::{self, Event, KeyCode, KeyEvent, KeyModifiers}; [INFO] [stdout] | ^^^^ ^^^^^ ^^^^^^^ ^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Duration` and `Instant` [INFO] [stdout] --> src/systems.rs:26:17 [INFO] [stdout] | [INFO] [stdout] 26 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `OptionsOption` [INFO] [stdout] --> src/ui.rs:21:36 [INFO] [stdout] | [INFO] [stdout] 21 | use crate::menu_types::{MenuState, OptionsOption}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/menu.rs:126:33 [INFO] [stdout] | [INFO] [stdout] 126 | if let Some(mut audio_state) = app.world.get_resource_mut::() { [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/menu.rs:137:33 [INFO] [stdout] | [INFO] [stdout] 137 | if let Some(mut audio_state) = app.world.get_resource_mut::() { [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stream` [INFO] [stdout] --> src/sound.rs:256:17 [INFO] [stdout] | [INFO] [stdout] 256 | let mut stream = match stream { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/menu.rs:126:33 [INFO] [stdout] | [INFO] [stdout] 126 | if let Some(mut audio_state) = app.world.get_resource_mut::() { [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/menu.rs:137:33 [INFO] [stdout] | [INFO] [stdout] 137 | if let Some(mut audio_state) = app.world.get_resource_mut::() { [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/sound.rs:256:13 [INFO] [stdout] | [INFO] [stdout] 256 | let mut stream = match stream { [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stream` [INFO] [stdout] --> src/sound.rs:256:17 [INFO] [stdout] | [INFO] [stdout] 256 | let mut stream = match stream { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/sound.rs:256:13 [INFO] [stdout] | [INFO] [stdout] 256 | let mut stream = match stream { [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `world` [INFO] [stdout] --> src/systems.rs:716:27 [INFO] [stdout] | [INFO] [stdout] 716 | fn update_music_for_level(world: &mut World) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_world` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `centered_rect` is never used [INFO] [stdout] --> src/menu.rs:407:4 [INFO] [stdout] | [INFO] [stdout] 407 | fn centered_rect(width: u16, height: u16, r: Rect) -> Rect { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Quit` is never constructed [INFO] [stdout] --> src/sound.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 30 | enum AudioCommand { [INFO] [stdout] | ------------ variant in this enum [INFO] [stdout] ... [INFO] [stdout] 34 | Quit, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_move_click` is never used [INFO] [stdout] --> src/sound.rs:557:4 [INFO] [stdout] | [INFO] [stdout] 557 | fn create_move_click() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_rotate_click` is never used [INFO] [stdout] --> src/sound.rs:562:4 [INFO] [stdout] | [INFO] [stdout] 562 | fn create_rotate_click() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_soft_drop` is never used [INFO] [stdout] --> src/sound.rs:567:4 [INFO] [stdout] | [INFO] [stdout] 567 | fn create_soft_drop() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_hard_drop` is never used [INFO] [stdout] --> src/sound.rs:572:4 [INFO] [stdout] | [INFO] [stdout] 572 | fn create_hard_drop() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_line_clear` is never used [INFO] [stdout] --> src/sound.rs:577:4 [INFO] [stdout] | [INFO] [stdout] 577 | fn create_line_clear() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_tetris` is never used [INFO] [stdout] --> src/sound.rs:595:4 [INFO] [stdout] | [INFO] [stdout] 595 | fn create_tetris() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_tspin` is never used [INFO] [stdout] --> src/sound.rs:612:4 [INFO] [stdout] | [INFO] [stdout] 612 | fn create_tspin() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_game_over` is never used [INFO] [stdout] --> src/sound.rs:622:4 [INFO] [stdout] | [INFO] [stdout] 622 | fn create_game_over() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_level_up` is never used [INFO] [stdout] --> src/sound.rs:631:4 [INFO] [stdout] | [INFO] [stdout] 631 | fn create_level_up() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_perfect_clear` is never used [INFO] [stdout] --> src/sound.rs:647:4 [INFO] [stdout] | [INFO] [stdout] 647 | fn create_perfect_clear() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_sound_effect` is never used [INFO] [stdout] --> src/sound.rs:659:4 [INFO] [stdout] | [INFO] [stdout] 659 | fn create_sound_effect(effect: SoundEffect) -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_background_music` is never used [INFO] [stdout] --> src/sound.rs:678:4 [INFO] [stdout] | [INFO] [stdout] 678 | fn create_background_music() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_block_move_sound` is never used [INFO] [stdout] --> src/sound.rs:708:4 [INFO] [stdout] | [INFO] [stdout] 708 | fn create_block_move_sound() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_block_rotate_sound` is never used [INFO] [stdout] --> src/sound.rs:715:4 [INFO] [stdout] | [INFO] [stdout] 715 | fn create_block_rotate_sound() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_block_place_sound` is never used [INFO] [stdout] --> src/sound.rs:724:4 [INFO] [stdout] | [INFO] [stdout] 724 | fn create_block_place_sound() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_line_clear_sound` is never used [INFO] [stdout] --> src/sound.rs:735:4 [INFO] [stdout] | [INFO] [stdout] 735 | fn create_line_clear_sound() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&Ghost` instead of cloning the inner type [INFO] [stdout] --> src/systems.rs:355:37 [INFO] [stdout] | [INFO] [stdout] 355 | ghost_clone = Some(ghost.clone()); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(suspicious_double_ref_op)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `world` [INFO] [stdout] --> src/systems.rs:716:27 [INFO] [stdout] | [INFO] [stdout] 716 | fn update_music_for_level(world: &mut World) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_world` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `centered_rect` is never used [INFO] [stdout] --> src/menu.rs:407:4 [INFO] [stdout] | [INFO] [stdout] 407 | fn centered_rect(width: u16, height: u16, r: Rect) -> Rect { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Quit` is never constructed [INFO] [stdout] --> src/sound.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 30 | enum AudioCommand { [INFO] [stdout] | ------------ variant in this enum [INFO] [stdout] ... [INFO] [stdout] 34 | Quit, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_move_click` is never used [INFO] [stdout] --> src/sound.rs:557:4 [INFO] [stdout] | [INFO] [stdout] 557 | fn create_move_click() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_rotate_click` is never used [INFO] [stdout] --> src/sound.rs:562:4 [INFO] [stdout] | [INFO] [stdout] 562 | fn create_rotate_click() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_soft_drop` is never used [INFO] [stdout] --> src/sound.rs:567:4 [INFO] [stdout] | [INFO] [stdout] 567 | fn create_soft_drop() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_hard_drop` is never used [INFO] [stdout] --> src/sound.rs:572:4 [INFO] [stdout] | [INFO] [stdout] 572 | fn create_hard_drop() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_line_clear` is never used [INFO] [stdout] --> src/sound.rs:577:4 [INFO] [stdout] | [INFO] [stdout] 577 | fn create_line_clear() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_tetris` is never used [INFO] [stdout] --> src/sound.rs:595:4 [INFO] [stdout] | [INFO] [stdout] 595 | fn create_tetris() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_tspin` is never used [INFO] [stdout] --> src/sound.rs:612:4 [INFO] [stdout] | [INFO] [stdout] 612 | fn create_tspin() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_game_over` is never used [INFO] [stdout] --> src/sound.rs:622:4 [INFO] [stdout] | [INFO] [stdout] 622 | fn create_game_over() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_level_up` is never used [INFO] [stdout] --> src/sound.rs:631:4 [INFO] [stdout] | [INFO] [stdout] 631 | fn create_level_up() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_perfect_clear` is never used [INFO] [stdout] --> src/sound.rs:647:4 [INFO] [stdout] | [INFO] [stdout] 647 | fn create_perfect_clear() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_sound_effect` is never used [INFO] [stdout] --> src/sound.rs:659:4 [INFO] [stdout] | [INFO] [stdout] 659 | fn create_sound_effect(effect: SoundEffect) -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_background_music` is never used [INFO] [stdout] --> src/sound.rs:678:4 [INFO] [stdout] | [INFO] [stdout] 678 | fn create_background_music() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_block_move_sound` is never used [INFO] [stdout] --> src/sound.rs:708:4 [INFO] [stdout] | [INFO] [stdout] 708 | fn create_block_move_sound() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_block_rotate_sound` is never used [INFO] [stdout] --> src/sound.rs:715:4 [INFO] [stdout] | [INFO] [stdout] 715 | fn create_block_rotate_sound() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_block_place_sound` is never used [INFO] [stdout] --> src/sound.rs:724:4 [INFO] [stdout] | [INFO] [stdout] 724 | fn create_block_place_sound() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_line_clear_sound` is never used [INFO] [stdout] --> src/sound.rs:735:4 [INFO] [stdout] | [INFO] [stdout] 735 | fn create_line_clear_sound() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&components::Ghost` instead of cloning the inner type [INFO] [stdout] --> src/systems.rs:355:37 [INFO] [stdout] | [INFO] [stdout] 355 | ghost_clone = Some(ghost.clone()); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(suspicious_double_ref_op)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Duration` [INFO] [stdout] --> src/app.rs:11:17 [INFO] [stdout] | [INFO] [stdout] 11 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TetrominoType` [INFO] [stdout] --> src/app.rs:14:75 [INFO] [stdout] | [INFO] [stdout] 14 | use crate::components::{Board, CoyoteTime, GameState, Input, ScreenShake, TetrominoType}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::particles` [INFO] [stdout] --> src/menu.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::particles; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Borders` and `Margin` [INFO] [stdout] --> src/menu.rs:8:56 [INFO] [stdout] | [INFO] [stdout] 8 | layout::{Alignment, Constraint, Direction, Layout, Margin, Rect}, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 11 | widgets::{Block, Borders, Paragraph, Wrap}, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Instant` [INFO] [stdout] --> src/sound.rs:8:27 [INFO] [stdout] | [INFO] [stdout] 8 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Event`, `KeyCode`, `KeyEvent`, `KeyModifiers`, and `self` [INFO] [stdout] --> src/systems.rs:25:24 [INFO] [stdout] | [INFO] [stdout] 25 | use crossterm::event::{self, Event, KeyCode, KeyEvent, KeyModifiers}; [INFO] [stdout] | ^^^^ ^^^^^ ^^^^^^^ ^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Duration` and `Instant` [INFO] [stdout] --> src/systems.rs:26:17 [INFO] [stdout] | [INFO] [stdout] 26 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `OptionsOption` [INFO] [stdout] --> src/ui.rs:21:36 [INFO] [stdout] | [INFO] [stdout] 21 | use crate::menu_types::{MenuState, OptionsOption}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Duration` [INFO] [stdout] --> src/app.rs:11:17 [INFO] [stdout] | [INFO] [stdout] 11 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TetrominoType` [INFO] [stdout] --> src/app.rs:14:75 [INFO] [stdout] | [INFO] [stdout] 14 | use crate::components::{Board, CoyoteTime, GameState, Input, ScreenShake, TetrominoType}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::particles` [INFO] [stdout] --> src/menu.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::particles; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Borders` and `Margin` [INFO] [stdout] --> src/menu.rs:8:56 [INFO] [stdout] | [INFO] [stdout] 8 | layout::{Alignment, Constraint, Direction, Layout, Margin, Rect}, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 11 | widgets::{Block, Borders, Paragraph, Wrap}, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Instant` [INFO] [stdout] --> src/sound.rs:8:27 [INFO] [stdout] | [INFO] [stdout] 8 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Event`, `KeyCode`, `KeyEvent`, `KeyModifiers`, and `self` [INFO] [stdout] --> src/systems.rs:25:24 [INFO] [stdout] | [INFO] [stdout] 25 | use crossterm::event::{self, Event, KeyCode, KeyEvent, KeyModifiers}; [INFO] [stdout] | ^^^^ ^^^^^ ^^^^^^^ ^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Duration` and `Instant` [INFO] [stdout] --> src/systems.rs:26:17 [INFO] [stdout] | [INFO] [stdout] 26 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `OptionsOption` [INFO] [stdout] --> src/ui.rs:21:36 [INFO] [stdout] | [INFO] [stdout] 21 | use crate::menu_types::{MenuState, OptionsOption}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/menu.rs:126:33 [INFO] [stdout] | [INFO] [stdout] 126 | if let Some(mut audio_state) = app.world.get_resource_mut::() { [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/menu.rs:137:33 [INFO] [stdout] | [INFO] [stdout] 137 | if let Some(mut audio_state) = app.world.get_resource_mut::() { [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stream` [INFO] [stdout] --> src/sound.rs:256:17 [INFO] [stdout] | [INFO] [stdout] 256 | let mut stream = match stream { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/sound.rs:256:13 [INFO] [stdout] | [INFO] [stdout] 256 | let mut stream = match stream { [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `world` [INFO] [stdout] --> src/systems.rs:716:27 [INFO] [stdout] | [INFO] [stdout] 716 | fn update_music_for_level(world: &mut World) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_world` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/menu.rs:126:33 [INFO] [stdout] | [INFO] [stdout] 126 | if let Some(mut audio_state) = app.world.get_resource_mut::() { [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/menu.rs:137:33 [INFO] [stdout] | [INFO] [stdout] 137 | if let Some(mut audio_state) = app.world.get_resource_mut::() { [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:193:61 [INFO] [stdout] | [INFO] [stdout] 193 | ... if let Some(mut audio_state) = [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:207:61 [INFO] [stdout] | [INFO] [stdout] 207 | ... if let Some(mut audio_state) = [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `on_tick` is never used [INFO] [stdout] --> src/app.rs:111:12 [INFO] [stdout] | [INFO] [stdout] 32 | impl App { [INFO] [stdout] | -------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 111 | pub fn on_tick(&mut self) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `select` is never used [INFO] [stdout] --> src/menu.rs:120:12 [INFO] [stdout] | [INFO] [stdout] 71 | impl MenuRenderer { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 120 | pub fn select(&mut self, menu: &mut Menu, app: &mut App) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `centered_rect` is never used [INFO] [stdout] --> src/menu.rs:407:4 [INFO] [stdout] | [INFO] [stdout] 407 | fn centered_rect(width: u16, height: u16, r: Rect) -> Rect { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_random_menu_particle` is never used [INFO] [stdout] --> src/particles.rs:311:8 [INFO] [stdout] | [INFO] [stdout] 311 | pub fn create_random_menu_particle() -> Particle { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Quit` is never constructed [INFO] [stdout] --> src/sound.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 30 | enum AudioCommand { [INFO] [stdout] | ------------ variant in this enum [INFO] [stdout] ... [INFO] [stdout] 34 | Quit, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_move_click` is never used [INFO] [stdout] --> src/sound.rs:557:4 [INFO] [stdout] | [INFO] [stdout] 557 | fn create_move_click() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_rotate_click` is never used [INFO] [stdout] --> src/sound.rs:562:4 [INFO] [stdout] | [INFO] [stdout] 562 | fn create_rotate_click() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_soft_drop` is never used [INFO] [stdout] --> src/sound.rs:567:4 [INFO] [stdout] | [INFO] [stdout] 567 | fn create_soft_drop() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_hard_drop` is never used [INFO] [stdout] --> src/sound.rs:572:4 [INFO] [stdout] | [INFO] [stdout] 572 | fn create_hard_drop() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_line_clear` is never used [INFO] [stdout] --> src/sound.rs:577:4 [INFO] [stdout] | [INFO] [stdout] 577 | fn create_line_clear() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_tetris` is never used [INFO] [stdout] --> src/sound.rs:595:4 [INFO] [stdout] | [INFO] [stdout] 595 | fn create_tetris() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_tspin` is never used [INFO] [stdout] --> src/sound.rs:612:4 [INFO] [stdout] | [INFO] [stdout] 612 | fn create_tspin() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_game_over` is never used [INFO] [stdout] --> src/sound.rs:622:4 [INFO] [stdout] | [INFO] [stdout] 622 | fn create_game_over() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_level_up` is never used [INFO] [stdout] --> src/sound.rs:631:4 [INFO] [stdout] | [INFO] [stdout] 631 | fn create_level_up() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_perfect_clear` is never used [INFO] [stdout] --> src/sound.rs:647:4 [INFO] [stdout] | [INFO] [stdout] 647 | fn create_perfect_clear() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_sound_effect` is never used [INFO] [stdout] --> src/sound.rs:659:4 [INFO] [stdout] | [INFO] [stdout] 659 | fn create_sound_effect(effect: SoundEffect) -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_background_music` is never used [INFO] [stdout] --> src/sound.rs:678:4 [INFO] [stdout] | [INFO] [stdout] 678 | fn create_background_music() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_block_move_sound` is never used [INFO] [stdout] --> src/sound.rs:708:4 [INFO] [stdout] | [INFO] [stdout] 708 | fn create_block_move_sound() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_block_rotate_sound` is never used [INFO] [stdout] --> src/sound.rs:715:4 [INFO] [stdout] | [INFO] [stdout] 715 | fn create_block_rotate_sound() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_block_place_sound` is never used [INFO] [stdout] --> src/sound.rs:724:4 [INFO] [stdout] | [INFO] [stdout] 724 | fn create_block_place_sound() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_line_clear_sound` is never used [INFO] [stdout] --> src/sound.rs:735:4 [INFO] [stdout] | [INFO] [stdout] 735 | fn create_line_clear_sound() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stream` [INFO] [stdout] --> src/sound.rs:256:17 [INFO] [stdout] | [INFO] [stdout] 256 | let mut stream = match stream { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/sound.rs:256:13 [INFO] [stdout] | [INFO] [stdout] 256 | let mut stream = match stream { [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&components::Ghost` instead of cloning the inner type [INFO] [stdout] --> src/systems.rs:355:37 [INFO] [stdout] | [INFO] [stdout] 355 | ghost_clone = Some(ghost.clone()); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(suspicious_double_ref_op)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `world` [INFO] [stdout] --> src/systems.rs:716:27 [INFO] [stdout] | [INFO] [stdout] 716 | fn update_music_for_level(world: &mut World) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_world` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:193:61 [INFO] [stdout] | [INFO] [stdout] 193 | ... if let Some(mut audio_state) = [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:207:61 [INFO] [stdout] | [INFO] [stdout] 207 | ... if let Some(mut audio_state) = [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `on_tick` is never used [INFO] [stdout] --> src/app.rs:111:12 [INFO] [stdout] | [INFO] [stdout] 32 | impl App { [INFO] [stdout] | -------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 111 | pub fn on_tick(&mut self) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `select` is never used [INFO] [stdout] --> src/menu.rs:120:12 [INFO] [stdout] | [INFO] [stdout] 71 | impl MenuRenderer { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 120 | pub fn select(&mut self, menu: &mut Menu, app: &mut App) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `centered_rect` is never used [INFO] [stdout] --> src/menu.rs:407:4 [INFO] [stdout] | [INFO] [stdout] 407 | fn centered_rect(width: u16, height: u16, r: Rect) -> Rect { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_random_menu_particle` is never used [INFO] [stdout] --> src/particles.rs:311:8 [INFO] [stdout] | [INFO] [stdout] 311 | pub fn create_random_menu_particle() -> Particle { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Quit` is never constructed [INFO] [stdout] --> src/sound.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 30 | enum AudioCommand { [INFO] [stdout] | ------------ variant in this enum [INFO] [stdout] ... [INFO] [stdout] 34 | Quit, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_move_click` is never used [INFO] [stdout] --> src/sound.rs:557:4 [INFO] [stdout] | [INFO] [stdout] 557 | fn create_move_click() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_rotate_click` is never used [INFO] [stdout] --> src/sound.rs:562:4 [INFO] [stdout] | [INFO] [stdout] 562 | fn create_rotate_click() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_soft_drop` is never used [INFO] [stdout] --> src/sound.rs:567:4 [INFO] [stdout] | [INFO] [stdout] 567 | fn create_soft_drop() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_hard_drop` is never used [INFO] [stdout] --> src/sound.rs:572:4 [INFO] [stdout] | [INFO] [stdout] 572 | fn create_hard_drop() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_line_clear` is never used [INFO] [stdout] --> src/sound.rs:577:4 [INFO] [stdout] | [INFO] [stdout] 577 | fn create_line_clear() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_tetris` is never used [INFO] [stdout] --> src/sound.rs:595:4 [INFO] [stdout] | [INFO] [stdout] 595 | fn create_tetris() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_tspin` is never used [INFO] [stdout] --> src/sound.rs:612:4 [INFO] [stdout] | [INFO] [stdout] 612 | fn create_tspin() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_game_over` is never used [INFO] [stdout] --> src/sound.rs:622:4 [INFO] [stdout] | [INFO] [stdout] 622 | fn create_game_over() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_level_up` is never used [INFO] [stdout] --> src/sound.rs:631:4 [INFO] [stdout] | [INFO] [stdout] 631 | fn create_level_up() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_perfect_clear` is never used [INFO] [stdout] --> src/sound.rs:647:4 [INFO] [stdout] | [INFO] [stdout] 647 | fn create_perfect_clear() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_sound_effect` is never used [INFO] [stdout] --> src/sound.rs:659:4 [INFO] [stdout] | [INFO] [stdout] 659 | fn create_sound_effect(effect: SoundEffect) -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_background_music` is never used [INFO] [stdout] --> src/sound.rs:678:4 [INFO] [stdout] | [INFO] [stdout] 678 | fn create_background_music() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_block_move_sound` is never used [INFO] [stdout] --> src/sound.rs:708:4 [INFO] [stdout] | [INFO] [stdout] 708 | fn create_block_move_sound() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_block_rotate_sound` is never used [INFO] [stdout] --> src/sound.rs:715:4 [INFO] [stdout] | [INFO] [stdout] 715 | fn create_block_rotate_sound() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_block_place_sound` is never used [INFO] [stdout] --> src/sound.rs:724:4 [INFO] [stdout] | [INFO] [stdout] 724 | fn create_block_place_sound() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_line_clear_sound` is never used [INFO] [stdout] --> src/sound.rs:735:4 [INFO] [stdout] | [INFO] [stdout] 735 | fn create_line_clear_sound() -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&components::Ghost` instead of cloning the inner type [INFO] [stdout] --> src/systems.rs:355:37 [INFO] [stdout] | [INFO] [stdout] 355 | ghost_clone = Some(ghost.clone()); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(suspicious_double_ref_op)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 46.19s [INFO] running `Command { std: "docker" "inspect" "be068dcd9192ee969843cfaf3514769319dbfd0938596f511b92ba172ac7b566", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "be068dcd9192ee969843cfaf3514769319dbfd0938596f511b92ba172ac7b566", kill_on_drop: false }` [INFO] [stdout] be068dcd9192ee969843cfaf3514769319dbfd0938596f511b92ba172ac7b566