[INFO] cloning repository https://github.com/nick-leslie/nal-music-app [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/nick-leslie/nal-music-app" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnick-leslie%2Fnal-music-app", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnick-leslie%2Fnal-music-app'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] bdf31a66798a5345dfe555a0302e6f391f1c856b [INFO] checking nick-leslie/nal-music-app against master#84e729a59f216cc64755788a470f165429a731f4 for pr-123737-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnick-leslie%2Fnal-music-app" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/nick-leslie/nal-music-app on toolchain 84e729a59f216cc64755788a470f165429a731f4 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+84e729a59f216cc64755788a470f165429a731f4" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/nick-leslie/nal-music-app [INFO] finished tweaking git repo https://github.com/nick-leslie/nal-music-app [INFO] tweaked toml for git repo https://github.com/nick-leslie/nal-music-app written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/nick-leslie/nal-music-app 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" "+84e729a59f216cc64755788a470f165429a731f4" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded unicode-ident v1.0.4 [INFO] [stderr] Downloaded thiserror-impl v1.0.35 [INFO] [stderr] Downloaded rodio v0.16.0 [INFO] [stderr] Downloaded proc-macro2 v1.0.43 [INFO] [stderr] Downloaded quote v1.0.21 [INFO] [stderr] Downloaded thiserror v1.0.35 [INFO] [stderr] Downloaded iced_futures v0.4.1 [INFO] [stderr] Downloaded euclid v0.22.7 [INFO] [stderr] Downloaded iced v0.4.2 [INFO] [stderr] Downloaded x11rb v0.9.0 [INFO] [stderr] Downloaded web-sys v0.3.60 [INFO] [stderr] Downloaded windows_i686_gnu v0.37.0 [INFO] [stderr] Downloaded windows_x86_64_gnu v0.37.0 [INFO] [stderr] Downloaded windows_aarch64_msvc v0.37.0 [INFO] [stderr] Downloaded windows_i686_msvc v0.37.0 [INFO] [stderr] Downloaded windows_x86_64_msvc v0.37.0 [INFO] [stderr] Downloaded tokio v1.21.1 [INFO] [stderr] Downloaded bindgen v0.59.2 [INFO] [stderr] Downloaded ndk-sys v0.4.0 [INFO] [stderr] Downloaded libc v0.2.133 [INFO] [stderr] Downloaded glow_glyph v0.5.1 [INFO] [stderr] Downloaded either v1.8.0 [INFO] [stderr] Downloaded ab_glyph_rasterizer v0.1.7 [INFO] [stderr] Downloaded ab_glyph v0.2.17 [INFO] [stderr] Downloaded ordered-float v3.1.0 [INFO] [stderr] Downloaded glyph_brush v0.7.5 [INFO] [stderr] Downloaded iced_glow v0.3.0 [INFO] [stderr] Downloaded glutin v0.28.0 [INFO] [stderr] Downloaded iced_glutin v0.3.0 [INFO] [stderr] Downloaded bytemuck_derive v1.2.1 [INFO] [stderr] Downloaded bytemuck v1.12.1 [INFO] [stderr] Downloaded glam v0.10.2 [INFO] [stderr] Downloaded iced_pure v0.2.2 [INFO] [stderr] Downloaded iced_graphics v0.3.1 [INFO] [stderr] Downloaded clipboard-win v4.4.2 [INFO] [stderr] Downloaded memmap2 v0.5.7 [INFO] [stderr] Downloaded clipboard_wayland v0.2.0 [INFO] [stderr] Downloaded clipboard_x11 v0.4.0 [INFO] [stderr] Downloaded window_clipboard v0.2.3 [INFO] [stderr] Downloaded mio v0.8.4 [INFO] [stderr] Downloaded percent-encoding v2.2.0 [INFO] [stderr] Downloaded nix v0.24.2 [INFO] [stderr] Downloaded x11-dl v2.20.0 [INFO] [stderr] Downloaded iced_winit v0.4.0 [INFO] [stderr] Downloaded aliasable v0.1.3 [INFO] [stderr] Downloaded Inflector v0.11.4 [INFO] [stderr] Downloaded ouroboros_macro v0.13.0 [INFO] [stderr] Downloaded stable_deref_trait v1.2.0 [INFO] [stderr] Downloaded ouroboros v0.13.0 [INFO] [stderr] Downloaded iced_lazy v0.1.1 [INFO] [stderr] Downloaded futures-sink v0.3.24 [INFO] [stderr] Downloaded futures-task v0.3.24 [INFO] [stderr] Downloaded futures-util v0.3.24 [INFO] [stderr] Downloaded futures v0.3.24 [INFO] [stderr] Downloaded iced_style v0.4.0 [INFO] [stderr] Downloaded unicode-segmentation v1.10.0 [INFO] [stderr] Downloaded iced_native v0.5.1 [INFO] [stderr] Downloaded mp3-duration v0.1.10 [INFO] [stderr] Downloaded clang-sys v1.3.3 [INFO] [stderr] Downloaded coreaudio-sys v0.2.10 [INFO] [stderr] Downloaded raw-window-handle v0.5.0 [INFO] [stderr] Downloaded bytes v1.2.1 [INFO] [stderr] Downloaded oboe v0.4.6 [INFO] [stderr] Downloaded parking_lot_core v0.9.3 [INFO] [stderr] Downloaded js-sys v0.3.60 [INFO] [stderr] Downloaded bumpalo v3.11.0 [INFO] [stderr] Downloaded once_cell v1.15.0 [INFO] [stderr] Downloaded wasm-bindgen-backend v0.2.83 [INFO] [stderr] Downloaded wasm-bindgen-shared v0.2.83 [INFO] [stderr] Downloaded wasm-bindgen-macro-support v0.2.83 [INFO] [stderr] Downloaded wasm-bindgen v0.2.83 [INFO] [stderr] Downloaded cpal v0.14.0 [INFO] [stderr] Downloaded syn v1.0.100 [INFO] [stderr] Downloaded futures-executor v0.3.24 [INFO] [stderr] Downloaded futures-channel v0.3.24 [INFO] [stderr] Downloaded futures-core v0.3.24 [INFO] [stderr] Downloaded futures-io v0.3.24 [INFO] [stderr] Downloaded futures-macro v0.3.24 [INFO] [stderr] Downloaded wasm-bindgen-futures v0.4.33 [INFO] [stderr] Downloaded iced_core v0.5.0 [INFO] [stderr] Downloaded proc-macro-crate v1.2.1 [INFO] [stderr] Downloaded wasm-bindgen-macro v0.2.83 [INFO] [stderr] Downloaded windows v0.37.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+84e729a59f216cc64755788a470f165429a731f4" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 6d0d4cc24c374c5f68d3bde63ad6b82e2d9f943704b10e5120bf828c351d68a2 [INFO] running `Command { std: "docker" "start" "-a" "6d0d4cc24c374c5f68d3bde63ad6b82e2d9f943704b10e5120bf828c351d68a2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "6d0d4cc24c374c5f68d3bde63ad6b82e2d9f943704b10e5120bf828c351d68a2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6d0d4cc24c374c5f68d3bde63ad6b82e2d9f943704b10e5120bf828c351d68a2", kill_on_drop: false }` [INFO] [stdout] 6d0d4cc24c374c5f68d3bde63ad6b82e2d9f943704b10e5120bf828c351d68a2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+84e729a59f216cc64755788a470f165429a731f4" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e187931726c3d66397ab7afb1d48ee132689f12a08fc7e8870c2b97c5e88851e [INFO] running `Command { std: "docker" "start" "-a" "e187931726c3d66397ab7afb1d48ee132689f12a08fc7e8870c2b97c5e88851e", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.133 [INFO] [stderr] Compiling proc-macro2 v1.0.43 [INFO] [stderr] Compiling unicode-ident v1.0.4 [INFO] [stderr] Compiling quote v1.0.21 [INFO] [stderr] Compiling memoffset v0.6.5 [INFO] [stderr] Compiling pkg-config v0.3.25 [INFO] [stderr] Checking once_cell v1.15.0 [INFO] [stderr] Compiling log v0.4.17 [INFO] [stderr] Compiling syn v1.0.100 [INFO] [stderr] Compiling memchr v2.5.0 [INFO] [stderr] Checking smallvec v1.9.0 [INFO] [stderr] Checking libloading v0.7.3 [INFO] [stderr] Compiling num-traits v0.2.15 [INFO] [stderr] Compiling futures-core v0.3.24 [INFO] [stderr] Compiling slab v0.4.7 [INFO] [stderr] Compiling futures-channel v0.3.24 [INFO] [stderr] Compiling futures-task v0.3.24 [INFO] [stderr] Checking dlib v0.5.0 [INFO] [stderr] Checking minimal-lexical v0.2.1 [INFO] [stderr] Checking ppv-lite86 v0.2.16 [INFO] [stderr] Checking pin-project-lite v0.2.9 [INFO] [stderr] Checking futures-sink v0.3.24 [INFO] [stderr] Compiling futures-util v0.3.24 [INFO] [stderr] Compiling thiserror v1.0.35 [INFO] [stderr] Checking futures-io v0.3.24 [INFO] [stderr] Compiling crossbeam-utils v0.8.11 [INFO] [stderr] Compiling lock_api v0.4.9 [INFO] [stderr] Compiling tokio v1.21.1 [INFO] [stderr] Checking static_assertions v1.1.0 [INFO] [stderr] Compiling crossbeam-epoch v0.9.10 [INFO] [stderr] Compiling wayland-sys v0.29.5 [INFO] [stderr] Checking cty v0.2.2 [INFO] [stderr] Checking iced_core v0.5.0 [INFO] [stderr] Compiling rayon-core v1.9.3 [INFO] [stderr] Checking raw-window-handle v0.4.3 [INFO] [stderr] Compiling gl_generator v0.14.0 [INFO] [stderr] Compiling smithay-client-toolkit v0.16.0 [INFO] [stderr] Compiling x11-dl v2.20.0 [INFO] [stderr] Checking unicode-segmentation v1.10.0 [INFO] [stderr] Checking ttf-parser v0.15.2 [INFO] [stderr] Compiling smithay-client-toolkit v0.15.4 [INFO] [stderr] Compiling glam v0.10.2 [INFO] [stderr] Checking iced_style v0.4.0 [INFO] [stderr] Checking instant v0.1.12 [INFO] [stderr] Compiling rayon v1.5.3 [INFO] [stderr] Checking ab_glyph_rasterizer v0.1.7 [INFO] [stderr] Checking nom v7.1.1 [INFO] [stderr] Compiling winit v0.26.1 [INFO] [stderr] Checking either v1.8.0 [INFO] [stderr] Compiling alsa-sys v0.3.1 [INFO] [stderr] Checking crossbeam-channel v0.5.6 [INFO] [stderr] Compiling parking_lot_core v0.9.3 [INFO] [stderr] Checking linked-hash-map v0.5.6 [INFO] [stderr] Checking xi-unicode v0.3.0 [INFO] [stderr] Compiling cc v1.0.73 [INFO] [stderr] Checking crossbeam-deque v0.8.2 [INFO] [stderr] Compiling wayland-scanner v0.29.5 [INFO] [stderr] Checking percent-encoding v2.2.0 [INFO] [stderr] Checking glow v0.11.2 [INFO] [stderr] Compiling cpal v0.14.0 [INFO] [stderr] Compiling glutin_egl_sys v0.1.6 [INFO] [stderr] Checking approx v0.5.1 [INFO] [stderr] Compiling glutin_glx_sys v0.1.8 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Checking ordered-float v3.1.0 [INFO] [stderr] Compiling Inflector v0.11.4 [INFO] [stderr] Checking tinyvec v1.6.0 [INFO] [stderr] Checking euclid v0.22.7 [INFO] [stderr] Checking stable_deref_trait v1.2.0 [INFO] [stderr] Checking aliasable v0.1.3 [INFO] [stderr] Checking hound v3.5.0 [INFO] [stderr] Checking num_cpus v1.13.1 [INFO] [stderr] Checking nix v0.24.2 [INFO] [stderr] Checking getrandom v0.2.7 [INFO] [stderr] Checking nix v0.22.3 [INFO] [stderr] Checking memmap2 v0.5.7 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking memmap2 v0.3.1 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking gethostname v0.2.3 [INFO] [stderr] Checking parking_lot_core v0.8.5 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking mio v0.8.4 [INFO] [stderr] Compiling minimp3-sys v0.3.2 [INFO] [stderr] Checking parking_lot v0.11.2 [INFO] [stderr] Checking raw-window-handle v0.3.4 [INFO] [stderr] Checking shared_library v0.1.9 [INFO] [stderr] Checking osmesa-sys v0.1.2 [INFO] [stderr] Checking nix v0.23.1 [INFO] [stderr] Checking slice-deque v0.3.0 [INFO] [stderr] Checking xcursor v0.3.4 [INFO] [stderr] Checking parking_lot v0.12.1 [INFO] [stderr] Compiling wayland-client v0.29.5 [INFO] [stderr] Compiling wayland-protocols v0.29.5 [INFO] [stderr] Checking lewton v0.10.2 [INFO] [stderr] Checking owned_ttf_parser v0.15.2 [INFO] [stderr] Checking ab_glyph v0.2.17 [INFO] [stderr] Checking twox-hash v1.6.3 [INFO] [stderr] Checking glyph_brush_layout v0.2.3 [INFO] [stderr] Checking wayland-commons v0.29.5 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Checking glyph_brush_draw_cache v0.1.5 [INFO] [stderr] Checking glyph_brush v0.7.5 [INFO] [stderr] Compiling futures-macro v0.3.24 [INFO] [stderr] Compiling thiserror-impl v1.0.35 [INFO] [stderr] Compiling bytemuck_derive v1.2.1 [INFO] [stderr] Compiling ouroboros_macro v0.13.0 [INFO] [stderr] Checking alsa v0.6.0 [INFO] [stderr] Checking calloop v0.9.3 [INFO] [stderr] Checking x11rb v0.9.0 [INFO] [stderr] Checking wayland-cursor v0.29.5 [INFO] [stderr] Checking wayland-egl v0.29.5 [INFO] [stderr] Checking bytemuck v1.12.1 [INFO] [stderr] Checking glow_glyph v0.5.1 [INFO] [stderr] Checking ouroboros v0.13.0 [INFO] [stderr] Checking minimp3 v0.5.1 [INFO] [stderr] Checking mp3-duration v0.1.10 [INFO] [stderr] Checking rodio v0.16.0 [INFO] [stderr] Checking futures-executor v0.3.24 [INFO] [stderr] Checking futures v0.3.24 [INFO] [stderr] Checking iced_futures v0.4.1 [INFO] [stderr] Checking iced_native v0.5.1 [INFO] [stderr] Checking iced_pure v0.2.2 [INFO] [stderr] Checking iced_lazy v0.1.1 [INFO] [stderr] Checking clipboard_x11 v0.4.0 [INFO] [stderr] Checking iced_graphics v0.3.1 [INFO] [stderr] Checking iced_glow v0.3.0 [INFO] [stderr] Checking smithay-clipboard v0.6.6 [INFO] [stderr] Checking clipboard_wayland v0.2.0 [INFO] [stderr] Checking window_clipboard v0.2.3 [INFO] [stderr] Checking iced_winit v0.4.0 [INFO] [stderr] Checking glutin v0.28.0 [INFO] [stderr] Checking iced_glutin v0.3.0 [INFO] [stderr] Checking iced v0.4.2 [INFO] [stderr] Checking nal-music-app v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> src/file_io.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `FileType` [INFO] [stdout] --> src/file_io.rs:2:21 [INFO] [stdout] | [INFO] [stdout] 2 | use std::fs::{File, FileType, metadata}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Cell` [INFO] [stdout] --> src/audio/audio_player.rs:2:17 [INFO] [stdout] | [INFO] [stdout] 2 | use std::cell::{Cell, Ref, RefCell, RefMut}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> src/audio/audio_player.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sink` [INFO] [stdout] --> src/audio/audio_player.rs:5:26 [INFO] [stdout] | [INFO] [stdout] 5 | use std::io::{BufReader, sink}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter::successors` [INFO] [stdout] --> src/audio/audio_player.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::iter::successors; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Add` [INFO] [stdout] --> src/audio/audio_player.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::ops::Add; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> src/audio/audio_player.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `mp3_duration` [INFO] [stdout] --> src/audio/audio_player.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use mp3_duration; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `mpsc` [INFO] [stdout] --> src/audio/audio_player.rs:14:22 [INFO] [stdout] | [INFO] [stdout] 14 | use std::sync::{Arc, mpsc}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Receiver`, `Sender` [INFO] [stdout] --> src/audio/audio_player.rs:16:23 [INFO] [stdout] | [INFO] [stdout] 16 | use std::sync::mpsc::{Receiver, Sender, SyncSender}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `iced::window::icon::Error::DimensionsMismatch` [INFO] [stdout] --> src/audio/audio_player.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | use iced::window::icon::Error::DimensionsMismatch; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rodio::source::ChannelVolume` [INFO] [stdout] --> src/audio/audio_player.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | use rodio::source::ChannelVolume; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::audio::playlist` [INFO] [stdout] --> src/audio/audio_player.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | use crate::audio::playlist; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ffi::OsStr` [INFO] [stdout] --> src/audio/song.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::ffi::OsStr; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> src/audio/song.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::BufReader` [INFO] [stdout] --> src/audio/song.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::io::BufReader; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Add` [INFO] [stdout] --> src/audio/song.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::ops::Add; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PathBuf` [INFO] [stdout] --> src/audio/song.rs:5:23 [INFO] [stdout] | [INFO] [stdout] 5 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/audio/song.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::atomic::AtomicUsize` [INFO] [stdout] --> src/audio/song.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::sync::atomic::AtomicUsize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Decoder`, `Sample`, `source` [INFO] [stdout] --> src/audio/song.rs:9:13 [INFO] [stdout] | [INFO] [stdout] 9 | use rodio::{Decoder, Sample, Source, source}; [INFO] [stdout] | ^^^^^^^ ^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::file_io` [INFO] [stdout] --> src/audio/song.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::file_io; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::file_io::load_file` [INFO] [stdout] --> src/audio/song.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::file_io::load_file; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Iter` [INFO] [stdout] --> src/audio/playlist.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::path::Iter; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Sample`, `Source` [INFO] [stdout] --> src/audio/playlist.rs:2:13 [INFO] [stdout] | [INFO] [stdout] 2 | use rodio::{Sample, Source}; [INFO] [stdout] | ^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter::Take` [INFO] [stdout] --> src/audio/song_source.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::iter::Take; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Deref` [INFO] [stdout] --> src/audio/song_source.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::ops::Deref; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::borrow::BorrowMut` [INFO] [stdout] --> src/UI/application.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::borrow::BorrowMut; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Button`, `PaneGrid`, `ProgressBar`, `Renderer`, `Row`, `Text`, `button`, `time` [INFO] [stdout] --> src/UI/application.rs:5:37 [INFO] [stdout] | [INFO] [stdout] 5 | ...d, Button, button, Color, Column, Command, container, Container, Element, executor, Length, pane_grid, PaneGrid, ProgressBar, Renderer, Row, Subscription, Text, tim... [INFO] [stdout] | ^^^^^^ ^^^^^^ ^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^ ^^^ ^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `iced::pane_grid::Content` [INFO] [stdout] --> src/UI/application.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use iced::pane_grid::Content; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `column`, `row`, `scrollable`, `widget` [INFO] [stdout] --> src/UI/application.rs:7:18 [INFO] [stdout] | [INFO] [stdout] 7 | use iced::pure::{column, row, scrollable, widget}; [INFO] [stdout] | ^^^^^^ ^^^ ^^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `event_codes` [INFO] [stdout] --> src/UI/application.rs:8:26 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::{AudioPlayer, event_codes, file_io}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::audio::song::SongInfo` [INFO] [stdout] --> src/UI/application.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::audio::song::SongInfo; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `get_dir_parent` [INFO] [stdout] --> src/UI/application.rs:11:22 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::file_io::{get_dir_parent, is_song}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `File_Graphic` [INFO] [stdout] --> src/UI/application.rs:12:49 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::UI::file_widget::{directory_graphic, File_Graphic}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `iced_lazy::responsive` [INFO] [stdout] --> src/UI/application.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use iced_lazy::responsive; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Sink` [INFO] [stdout] --> src/UI/file_widget.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::io::Sink; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> src/UI/file_widget.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Color`, `Container`, `Length` [INFO] [stdout] --> src/UI/file_widget.rs:6:28 [INFO] [stdout] | [INFO] [stdout] 6 | use iced::{Button, button, Color, Column, Container, Element, Length, Scrollable}; [INFO] [stdout] | ^^^^^ ^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `iced::pure::row` [INFO] [stdout] --> src/UI/file_widget.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use iced::pure::row; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `iced_native::Renderer` [INFO] [stdout] --> src/UI/file_widget.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use iced_native::Renderer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Image` [INFO] [stdout] --> src/UI/file_widget.rs:9:27 [INFO] [stdout] | [INFO] [stdout] 9 | use iced_native::widget::{Image, Row, Text,scrollable}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::AudioPlayer` [INFO] [stdout] --> src/UI/file_widget.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::AudioPlayer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `directory_graphic` should have an upper camel case name [INFO] [stdout] --> src/UI/file_widget.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct directory_graphic { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DirectoryGraphic` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `file_type` should have an upper camel case name [INFO] [stdout] --> src/UI/file_widget.rs:88:6 [INFO] [stdout] | [INFO] [stdout] 88 | enum file_type { [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to upper camel case: `FileType` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `File_Graphic` should have an upper camel case name [INFO] [stdout] --> src/UI/file_widget.rs:93:12 [INFO] [stdout] | [INFO] [stdout] 93 | pub struct File_Graphic { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `FileGraphic` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BorrowMut`, `Borrow` [INFO] [stdout] --> src/UI/pane.rs:1:19 [INFO] [stdout] | [INFO] [stdout] 1 | use std::borrow::{Borrow, BorrowMut}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::ErrorKind` [INFO] [stdout] --> src/UI/pane.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::io::ErrorKind; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Deref` [INFO] [stdout] --> src/UI/pane.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::ops::Deref; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Arc`, `Mutex` [INFO] [stdout] --> src/UI/pane.rs:6:17 [INFO] [stdout] | [INFO] [stdout] 6 | use std::sync::{Arc, Mutex}; [INFO] [stdout] | ^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread::park_timeout` [INFO] [stdout] --> src/UI/pane.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::thread::park_timeout; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Background`, `Color`, `container` [INFO] [stdout] --> src/UI/pane.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | use iced::{Background, Color, Column, Container, container, Element, PaneGrid, Text}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `iced::futures::try_join` [INFO] [stdout] --> src/UI/pane.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use iced::futures::try_join; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Command`, `Renderer` [INFO] [stdout] --> src/UI/pane.rs:11:19 [INFO] [stdout] | [INFO] [stdout] 11 | use iced_native::{Command, Renderer}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `iced_native::user_interface::State` [INFO] [stdout] --> src/UI/pane.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use iced_native::user_interface::State; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `state` [INFO] [stdout] --> src/UI/pane.rs:14:44 [INFO] [stdout] | [INFO] [stdout] 14 | use iced_native::widget::pane_grid::{Axis, state}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::audio::song::SongInfo` [INFO] [stdout] --> src/UI/pane.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use crate::audio::song::SongInfo; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::UI::controls_widget::ControlPanel` [INFO] [stdout] --> src/UI/pane.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | use crate::UI::controls_widget::ControlPanel; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `File_Graphic` [INFO] [stdout] --> src/UI/pane.rs:19:49 [INFO] [stdout] | [INFO] [stdout] 19 | use crate::UI::file_widget::{directory_graphic, File_Graphic}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::UI::pane::PaneState::controlsPane` [INFO] [stdout] --> src/UI/pane.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | use crate::UI::pane::PaneState::controlsPane; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `controlsPane` should have an upper camel case name [INFO] [stdout] --> src/UI/pane.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 25 | controlsPane, [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `ControlsPane` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `filesPane` should have an upper camel case name [INFO] [stdout] --> src/UI/pane.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | filesPane, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `FilesPane` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `potential_content` should have an upper camel case name [INFO] [stdout] --> src/UI/pane.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct potential_content { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PotentialContent` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Arc`, `Mutex` [INFO] [stdout] --> src/UI/playlist_widget.rs:5:17 [INFO] [stdout] | [INFO] [stdout] 5 | use std::sync::{Arc, Mutex}; [INFO] [stdout] | ^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `iced::keyboard::KeyCode::V` [INFO] [stdout] --> src/UI/playlist_widget.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use iced::keyboard::KeyCode::V; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `iced_native::widget::button::update` [INFO] [stdout] --> src/UI/playlist_widget.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use iced_native::widget::button::update; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/UI/playlist_widget.rs:39:46 [INFO] [stdout] | [INFO] [stdout] 39 | pub fn add_song(&mut self,s: SongInfo) { ; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> src/event_codes.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/event_codes.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SECOND_ELAPSED` should have an upper camel case name [INFO] [stdout] --> src/event_codes.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | SECOND_ELAPSED, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SecondElapsed` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `FILE_INTERACTION` should have an upper camel case name [INFO] [stdout] --> src/event_codes.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | FILE_INTERACTION(String), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `FileInteraction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> src/file_io.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `FileType` [INFO] [stdout] --> src/file_io.rs:2:21 [INFO] [stdout] | [INFO] [stdout] 2 | use std::fs::{File, FileType, metadata}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Cell` [INFO] [stdout] --> src/audio/audio_player.rs:2:17 [INFO] [stdout] | [INFO] [stdout] 2 | use std::cell::{Cell, Ref, RefCell, RefMut}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> src/audio/audio_player.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sink` [INFO] [stdout] --> src/audio/audio_player.rs:5:26 [INFO] [stdout] | [INFO] [stdout] 5 | use std::io::{BufReader, sink}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter::successors` [INFO] [stdout] --> src/audio/audio_player.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::iter::successors; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Add` [INFO] [stdout] --> src/audio/audio_player.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::ops::Add; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> src/audio/audio_player.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `mp3_duration` [INFO] [stdout] --> src/audio/audio_player.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use mp3_duration; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `mpsc` [INFO] [stdout] --> src/audio/audio_player.rs:14:22 [INFO] [stdout] | [INFO] [stdout] 14 | use std::sync::{Arc, mpsc}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Receiver`, `Sender` [INFO] [stdout] --> src/audio/audio_player.rs:16:23 [INFO] [stdout] | [INFO] [stdout] 16 | use std::sync::mpsc::{Receiver, Sender, SyncSender}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `iced::window::icon::Error::DimensionsMismatch` [INFO] [stdout] --> src/audio/audio_player.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | use iced::window::icon::Error::DimensionsMismatch; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rodio::source::ChannelVolume` [INFO] [stdout] --> src/audio/audio_player.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | use rodio::source::ChannelVolume; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::audio::playlist` [INFO] [stdout] --> src/audio/audio_player.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | use crate::audio::playlist; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ffi::OsStr` [INFO] [stdout] --> src/audio/song.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::ffi::OsStr; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> src/audio/song.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::BufReader` [INFO] [stdout] --> src/audio/song.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::io::BufReader; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Add` [INFO] [stdout] --> src/audio/song.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::ops::Add; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PathBuf` [INFO] [stdout] --> src/audio/song.rs:5:23 [INFO] [stdout] | [INFO] [stdout] 5 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/audio/song.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::atomic::AtomicUsize` [INFO] [stdout] --> src/audio/song.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::sync::atomic::AtomicUsize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Decoder`, `Sample`, `source` [INFO] [stdout] --> src/audio/song.rs:9:13 [INFO] [stdout] | [INFO] [stdout] 9 | use rodio::{Decoder, Sample, Source, source}; [INFO] [stdout] | ^^^^^^^ ^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::file_io` [INFO] [stdout] --> src/audio/song.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::file_io; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::file_io::load_file` [INFO] [stdout] --> src/audio/song.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::file_io::load_file; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Iter` [INFO] [stdout] --> src/audio/playlist.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::path::Iter; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Sample`, `Source` [INFO] [stdout] --> src/audio/playlist.rs:2:13 [INFO] [stdout] | [INFO] [stdout] 2 | use rodio::{Sample, Source}; [INFO] [stdout] | ^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter::Take` [INFO] [stdout] --> src/audio/song_source.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::iter::Take; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Deref` [INFO] [stdout] --> src/audio/song_source.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::ops::Deref; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::borrow::BorrowMut` [INFO] [stdout] --> src/UI/application.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::borrow::BorrowMut; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Button`, `PaneGrid`, `ProgressBar`, `Renderer`, `Row`, `Text`, `button`, `time` [INFO] [stdout] --> src/UI/application.rs:5:37 [INFO] [stdout] | [INFO] [stdout] 5 | ...d, Button, button, Color, Column, Command, container, Container, Element, executor, Length, pane_grid, PaneGrid, ProgressBar, Renderer, Row, Subscription, Text, tim... [INFO] [stdout] | ^^^^^^ ^^^^^^ ^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^ ^^^ ^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `iced::pane_grid::Content` [INFO] [stdout] --> src/UI/application.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use iced::pane_grid::Content; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `column`, `row`, `scrollable`, `widget` [INFO] [stdout] --> src/UI/application.rs:7:18 [INFO] [stdout] | [INFO] [stdout] 7 | use iced::pure::{column, row, scrollable, widget}; [INFO] [stdout] | ^^^^^^ ^^^ ^^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `event_codes` [INFO] [stdout] --> src/UI/application.rs:8:26 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::{AudioPlayer, event_codes, file_io}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::audio::song::SongInfo` [INFO] [stdout] --> src/UI/application.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::audio::song::SongInfo; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `get_dir_parent` [INFO] [stdout] --> src/UI/application.rs:11:22 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::file_io::{get_dir_parent, is_song}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `File_Graphic` [INFO] [stdout] --> src/UI/application.rs:12:49 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::UI::file_widget::{directory_graphic, File_Graphic}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `iced_lazy::responsive` [INFO] [stdout] --> src/UI/application.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use iced_lazy::responsive; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Sink` [INFO] [stdout] --> src/UI/file_widget.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::io::Sink; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> src/UI/file_widget.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Color`, `Container`, `Length` [INFO] [stdout] --> src/UI/file_widget.rs:6:28 [INFO] [stdout] | [INFO] [stdout] 6 | use iced::{Button, button, Color, Column, Container, Element, Length, Scrollable}; [INFO] [stdout] | ^^^^^ ^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `iced::pure::row` [INFO] [stdout] --> src/UI/file_widget.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use iced::pure::row; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `iced_native::Renderer` [INFO] [stdout] --> src/UI/file_widget.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use iced_native::Renderer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Image` [INFO] [stdout] --> src/UI/file_widget.rs:9:27 [INFO] [stdout] | [INFO] [stdout] 9 | use iced_native::widget::{Image, Row, Text,scrollable}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::AudioPlayer` [INFO] [stdout] --> src/UI/file_widget.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::AudioPlayer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `directory_graphic` should have an upper camel case name [INFO] [stdout] --> src/UI/file_widget.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct directory_graphic { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `DirectoryGraphic` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `file_type` should have an upper camel case name [INFO] [stdout] --> src/UI/file_widget.rs:88:6 [INFO] [stdout] | [INFO] [stdout] 88 | enum file_type { [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to upper camel case: `FileType` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `File_Graphic` should have an upper camel case name [INFO] [stdout] --> src/UI/file_widget.rs:93:12 [INFO] [stdout] | [INFO] [stdout] 93 | pub struct File_Graphic { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `FileGraphic` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BorrowMut`, `Borrow` [INFO] [stdout] --> src/UI/pane.rs:1:19 [INFO] [stdout] | [INFO] [stdout] 1 | use std::borrow::{Borrow, BorrowMut}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::ErrorKind` [INFO] [stdout] --> src/UI/pane.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::io::ErrorKind; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Deref` [INFO] [stdout] --> src/UI/pane.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::ops::Deref; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Arc`, `Mutex` [INFO] [stdout] --> src/UI/pane.rs:6:17 [INFO] [stdout] | [INFO] [stdout] 6 | use std::sync::{Arc, Mutex}; [INFO] [stdout] | ^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread::park_timeout` [INFO] [stdout] --> src/UI/pane.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::thread::park_timeout; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Background`, `Color`, `container` [INFO] [stdout] --> src/UI/pane.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | use iced::{Background, Color, Column, Container, container, Element, PaneGrid, Text}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `iced::futures::try_join` [INFO] [stdout] --> src/UI/pane.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use iced::futures::try_join; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Command`, `Renderer` [INFO] [stdout] --> src/UI/pane.rs:11:19 [INFO] [stdout] | [INFO] [stdout] 11 | use iced_native::{Command, Renderer}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `iced_native::user_interface::State` [INFO] [stdout] --> src/UI/pane.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use iced_native::user_interface::State; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `state` [INFO] [stdout] --> src/UI/pane.rs:14:44 [INFO] [stdout] | [INFO] [stdout] 14 | use iced_native::widget::pane_grid::{Axis, state}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::audio::song::SongInfo` [INFO] [stdout] --> src/UI/pane.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use crate::audio::song::SongInfo; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::UI::controls_widget::ControlPanel` [INFO] [stdout] --> src/UI/pane.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | use crate::UI::controls_widget::ControlPanel; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `File_Graphic` [INFO] [stdout] --> src/UI/pane.rs:19:49 [INFO] [stdout] | [INFO] [stdout] 19 | use crate::UI::file_widget::{directory_graphic, File_Graphic}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::UI::pane::PaneState::controlsPane` [INFO] [stdout] --> src/UI/pane.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | use crate::UI::pane::PaneState::controlsPane; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `controlsPane` should have an upper camel case name [INFO] [stdout] --> src/UI/pane.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 25 | controlsPane, [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `ControlsPane` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `filesPane` should have an upper camel case name [INFO] [stdout] --> src/UI/pane.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | filesPane, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `FilesPane` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `potential_content` should have an upper camel case name [INFO] [stdout] --> src/UI/pane.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct potential_content { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PotentialContent` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Arc`, `Mutex` [INFO] [stdout] --> src/UI/playlist_widget.rs:5:17 [INFO] [stdout] | [INFO] [stdout] 5 | use std::sync::{Arc, Mutex}; [INFO] [stdout] | ^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `iced::keyboard::KeyCode::V` [INFO] [stdout] --> src/UI/playlist_widget.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use iced::keyboard::KeyCode::V; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `iced_native::widget::button::update` [INFO] [stdout] --> src/UI/playlist_widget.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use iced_native::widget::button::update; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/UI/playlist_widget.rs:39:46 [INFO] [stdout] | [INFO] [stdout] 39 | pub fn add_song(&mut self,s: SongInfo) { ; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> src/event_codes.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/event_codes.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `SECOND_ELAPSED` should have an upper camel case name [INFO] [stdout] --> src/event_codes.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | SECOND_ELAPSED, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `SecondElapsed` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `FILE_INTERACTION` should have an upper camel case name [INFO] [stdout] --> src/event_codes.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | FILE_INTERACTION(String), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `FileInteraction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::borrow::BorrowMut` [INFO] [stdout] --> src/audio/audio_player.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::borrow::BorrowMut; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Source` [INFO] [stdout] --> src/audio/song.rs:9:30 [INFO] [stdout] | [INFO] [stdout] 9 | use rodio::{Decoder, Sample, Source, source}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `E` [INFO] [stdout] --> src/file_io.rs:20:13 [INFO] [stdout] | [INFO] [stdout] 20 | Err(E) => false [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_E` [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/audio/audio_player.rs:50:17 [INFO] [stdout] | [INFO] [stdout] 50 | let mut song= self.playlist_mut().give_next_song(); [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: unused variable: `E` [INFO] [stdout] --> src/audio/audio_player.rs:74:17 [INFO] [stdout] | [INFO] [stdout] 74 | Err(E) => return [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_E` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `src` [INFO] [stdout] --> src/audio/audio_player.rs:87:75 [INFO] [stdout] | [INFO] [stdout] 87 | let source = decoder.periodic_access(Duration::from_secs(1),move |src| [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_src` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/audio/audio_player.rs:72:13 [INFO] [stdout] | [INFO] [stdout] 72 | let mut file = match file_io::load_file(s.get_song_path().parse().unwrap()) { [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/audio/song_source.rs:16:13 [INFO] [stdout] | [INFO] [stdout] 16 | let mut done_signal:Arc = Arc::new(AtomicUsize::new(1)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/UI/application.rs:69:25 [INFO] [stdout] | [INFO] [stdout] 69 | Err(e) => () [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::borrow::BorrowMut` [INFO] [stdout] --> src/audio/audio_player.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::borrow::BorrowMut; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Source` [INFO] [stdout] --> src/audio/song.rs:9:30 [INFO] [stdout] | [INFO] [stdout] 9 | use rodio::{Decoder, Sample, Source, source}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `E` [INFO] [stdout] --> src/file_io.rs:20:13 [INFO] [stdout] | [INFO] [stdout] 20 | Err(E) => false [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_E` [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/UI/file_widget.rs:57:13 [INFO] [stdout] | [INFO] [stdout] 57 | for mut file in self.files.iter_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/UI/file_widget.rs:62:17 [INFO] [stdout] | [INFO] [stdout] 62 | let mut cr = rows[current_row].take().unwrap().push(file.view()); [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/UI/file_widget.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | for mut row in rows { [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/audio/audio_player.rs:50:17 [INFO] [stdout] | [INFO] [stdout] 50 | let mut song= self.playlist_mut().give_next_song(); [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: unused variable: `message` [INFO] [stdout] --> src/UI/file_widget.rs:118:26 [INFO] [stdout] | [INFO] [stdout] 118 | fn update(&mut self, message:Message) { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `button_txt` is never read [INFO] [stdout] --> src/UI/file_widget.rs:124:18 [INFO] [stdout] | [INFO] [stdout] 124 | let mut button_txt = Text::new(""); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `E` [INFO] [stdout] --> src/audio/audio_player.rs:74:17 [INFO] [stdout] | [INFO] [stdout] 74 | Err(E) => return [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_E` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `src` [INFO] [stdout] --> src/audio/audio_player.rs:87:75 [INFO] [stdout] | [INFO] [stdout] 87 | let source = decoder.periodic_access(Duration::from_secs(1),move |src| [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_src` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/audio/audio_player.rs:72:13 [INFO] [stdout] | [INFO] [stdout] 72 | let mut file = match file_io::load_file(s.get_song_path().parse().unwrap()) { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pane` [INFO] [stdout] --> src/UI/pane.rs:95:45 [INFO] [stdout] | [INFO] [stdout] 95 | PaneGrid::new(&mut self.panes, |pane, graphics| { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_pane` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/audio/song_source.rs:16:13 [INFO] [stdout] | [INFO] [stdout] 16 | let mut done_signal:Arc = Arc::new(AtomicUsize::new(1)); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `stream` and `stream_handle` are never read [INFO] [stdout] --> src/audio/audio_player.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 25 | pub struct AudioPlayer { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 26 | sink:rodio::Sink, [INFO] [stdout] 27 | stream:OutputStream, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 28 | stream_handle:OutputStreamHandle, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `queue_len` and `is_paused` are never used [INFO] [stdout] --> src/audio/audio_player.rs:101:12 [INFO] [stdout] | [INFO] [stdout] 35 | impl AudioPlayer { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 101 | pub fn queue_len(&self) -> usize{ [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 126 | pub fn is_paused(&self) -> bool{ [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `vec_ref_mut` is never used [INFO] [stdout] --> src/audio/playlist.rs:50:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl Playlist { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 50 | pub fn vec_ref_mut(&mut self) -> &mut Vec { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `sender` is never read [INFO] [stdout] --> src/UI/application.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 17 | pub struct Player { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 18 | pub ap:AudioPlayer, [INFO] [stdout] 19 | sender:SyncSender, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `current_dir` is never read [INFO] [stdout] --> src/UI/file_widget.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct directory_graphic { [INFO] [stdout] | ----------------- field in this struct [INFO] [stdout] 19 | current_path:String, [INFO] [stdout] 20 | current_dir: ReadDir, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `directory_graphic` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/UI/application.rs:69:25 [INFO] [stdout] | [INFO] [stdout] 69 | Err(e) => () [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_current_path` is never used [INFO] [stdout] --> src/UI/file_widget.rs:80:12 [INFO] [stdout] | [INFO] [stdout] 26 | impl directory_graphic { [INFO] [stdout] | ---------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 80 | pub fn get_current_path(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `update` is never used [INFO] [stdout] --> src/UI/file_widget.rs:118:8 [INFO] [stdout] | [INFO] [stdout] 103 | impl File_Graphic { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 118 | fn update(&mut self, message:Message) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `PaneState` is never used [INFO] [stdout] --> src/UI/pane.rs:24:6 [INFO] [stdout] | [INFO] [stdout] 24 | enum PaneState { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `panes_created` is never read [INFO] [stdout] --> src/UI/pane.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 71 | pub struct Pane { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] 72 | pub panes: pane_grid::State, [INFO] [stdout] 73 | panes_created: usize, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `add_song`, `playlist_len`, `playlist_mut`, and `playlist` are never used [INFO] [stdout] --> src/UI/playlist_widget.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl PlaylistWidget { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 39 | pub fn add_song(&mut self,s: SongInfo) { ; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn playlist_len(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | pub fn playlist_mut(&mut self) -> RefMut { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn playlist(&self) -> Ref { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `UI` should have a snake case name [INFO] [stdout] --> src/main.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | mod UI; [INFO] [stdout] | ^^ help: convert the identifier to snake case (notice the capitalization): `ui` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `T` should have a snake case name [INFO] [stdout] --> src/file_io.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | Ok(T) => Ok(BufReader::new(T)), [INFO] [stdout] | ^ help: convert the identifier to snake case: `t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `E` should have a snake case name [INFO] [stdout] --> src/file_io.rs:10:13 [INFO] [stdout] | [INFO] [stdout] 10 | Err(E) => { [INFO] [stdout] | ^ help: convert the identifier to snake case: `e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `E` should have a snake case name [INFO] [stdout] --> src/file_io.rs:20:13 [INFO] [stdout] | [INFO] [stdout] 20 | Err(E) => false [INFO] [stdout] | ^ help: convert the identifier to snake case: `e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `E` should have a snake case name [INFO] [stdout] --> src/audio/audio_player.rs:74:17 [INFO] [stdout] | [INFO] [stdout] 74 | Err(E) => return [INFO] [stdout] | ^ help: convert the identifier to snake case: `e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `E` should have a snake case name [INFO] [stdout] --> src/audio/audio_player.rs:78:17 [INFO] [stdout] | [INFO] [stdout] 78 | Err(E) => { [INFO] [stdout] | ^ help: convert the identifier to snake case: `e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `Path` should have a snake case name [INFO] [stdout] --> src/UI/file_widget.rs:95:5 [INFO] [stdout] | [INFO] [stdout] 95 | Path:String, [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/UI/file_widget.rs:57:13 [INFO] [stdout] | [INFO] [stdout] 57 | for mut file in self.files.iter_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/UI/file_widget.rs:62:17 [INFO] [stdout] | [INFO] [stdout] 62 | let mut cr = rows[current_row].take().unwrap().push(file.view()); [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/UI/file_widget.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | for mut row in rows { [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `message` [INFO] [stdout] --> src/UI/file_widget.rs:118:26 [INFO] [stdout] | [INFO] [stdout] 118 | fn update(&mut self, message:Message) { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `button_txt` is never read [INFO] [stdout] --> src/UI/file_widget.rs:124:18 [INFO] [stdout] | [INFO] [stdout] 124 | let mut button_txt = Text::new(""); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pane` [INFO] [stdout] --> src/UI/pane.rs:95:45 [INFO] [stdout] | [INFO] [stdout] 95 | PaneGrid::new(&mut self.panes, |pane, graphics| { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_pane` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 104 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `stream` and `stream_handle` are never read [INFO] [stdout] --> src/audio/audio_player.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 25 | pub struct AudioPlayer { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 26 | sink:rodio::Sink, [INFO] [stdout] 27 | stream:OutputStream, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 28 | stream_handle:OutputStreamHandle, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `queue_len` and `is_paused` are never used [INFO] [stdout] --> src/audio/audio_player.rs:101:12 [INFO] [stdout] | [INFO] [stdout] 35 | impl AudioPlayer { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 101 | pub fn queue_len(&self) -> usize{ [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 126 | pub fn is_paused(&self) -> bool{ [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `vec_ref_mut` is never used [INFO] [stdout] --> src/audio/playlist.rs:50:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl Playlist { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 50 | pub fn vec_ref_mut(&mut self) -> &mut Vec { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `sender` is never read [INFO] [stdout] --> src/UI/application.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 17 | pub struct Player { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 18 | pub ap:AudioPlayer, [INFO] [stdout] 19 | sender:SyncSender, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `current_dir` is never read [INFO] [stdout] --> src/UI/file_widget.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct directory_graphic { [INFO] [stdout] | ----------------- field in this struct [INFO] [stdout] 19 | current_path:String, [INFO] [stdout] 20 | current_dir: ReadDir, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `directory_graphic` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_current_path` is never used [INFO] [stdout] --> src/UI/file_widget.rs:80:12 [INFO] [stdout] | [INFO] [stdout] 26 | impl directory_graphic { [INFO] [stdout] | ---------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 80 | pub fn get_current_path(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `update` is never used [INFO] [stdout] --> src/UI/file_widget.rs:118:8 [INFO] [stdout] | [INFO] [stdout] 103 | impl File_Graphic { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 118 | fn update(&mut self, message:Message) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `PaneState` is never used [INFO] [stdout] --> src/UI/pane.rs:24:6 [INFO] [stdout] | [INFO] [stdout] 24 | enum PaneState { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `panes_created` is never read [INFO] [stdout] --> src/UI/pane.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 71 | pub struct Pane { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] 72 | pub panes: pane_grid::State, [INFO] [stdout] 73 | panes_created: usize, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `add_song`, `playlist_len`, `playlist_mut`, and `playlist` are never used [INFO] [stdout] --> src/UI/playlist_widget.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl PlaylistWidget { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 39 | pub fn add_song(&mut self,s: SongInfo) { ; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn playlist_len(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | pub fn playlist_mut(&mut self) -> RefMut { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn playlist(&self) -> Ref { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `UI` should have a snake case name [INFO] [stdout] --> src/main.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | mod UI; [INFO] [stdout] | ^^ help: convert the identifier to snake case (notice the capitalization): `ui` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `T` should have a snake case name [INFO] [stdout] --> src/file_io.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | Ok(T) => Ok(BufReader::new(T)), [INFO] [stdout] | ^ help: convert the identifier to snake case: `t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `E` should have a snake case name [INFO] [stdout] --> src/file_io.rs:10:13 [INFO] [stdout] | [INFO] [stdout] 10 | Err(E) => { [INFO] [stdout] | ^ help: convert the identifier to snake case: `e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `E` should have a snake case name [INFO] [stdout] --> src/file_io.rs:20:13 [INFO] [stdout] | [INFO] [stdout] 20 | Err(E) => false [INFO] [stdout] | ^ help: convert the identifier to snake case: `e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `E` should have a snake case name [INFO] [stdout] --> src/audio/audio_player.rs:74:17 [INFO] [stdout] | [INFO] [stdout] 74 | Err(E) => return [INFO] [stdout] | ^ help: convert the identifier to snake case: `e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `E` should have a snake case name [INFO] [stdout] --> src/audio/audio_player.rs:78:17 [INFO] [stdout] | [INFO] [stdout] 78 | Err(E) => { [INFO] [stdout] | ^ help: convert the identifier to snake case: `e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `Path` should have a snake case name [INFO] [stdout] --> src/UI/file_widget.rs:95:5 [INFO] [stdout] | [INFO] [stdout] 95 | Path:String, [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 104 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 02s [INFO] running `Command { std: "docker" "inspect" "e187931726c3d66397ab7afb1d48ee132689f12a08fc7e8870c2b97c5e88851e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e187931726c3d66397ab7afb1d48ee132689f12a08fc7e8870c2b97c5e88851e", kill_on_drop: false }` [INFO] [stdout] e187931726c3d66397ab7afb1d48ee132689f12a08fc7e8870c2b97c5e88851e