[INFO] cloning repository https://github.com/liquid-07/mujick
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/liquid-07/mujick" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fliquid-07%2Fmujick", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fliquid-07%2Fmujick'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 2b8cea62ad7f83588be55db0d5c84630792ee051
[INFO] checking liquid-07/mujick against master#d5419f1e97b90741d51841f800d3c697c662567d for pr-147565-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fliquid-07%2Fmujick" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/liquid-07/mujick
[INFO] finished tweaking git repo https://github.com/liquid-07/mujick
[INFO] tweaked toml for git repo https://github.com/liquid-07/mujick written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/liquid-07/mujick on toolchain d5419f1e97b90741d51841f800d3c697c662567d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d5419f1e97b90741d51841f800d3c697c662567d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/liquid-07/mujick 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" "+d5419f1e97b90741d51841f800d3c697c662567d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded symphonia-codec-vorbis v0.5.5
[INFO] [stderr]   Downloaded symphonia-format-ogg v0.5.5
[INFO] [stderr]   Downloaded symphonia-utils-xiph v0.5.5
[INFO] [stderr]   Downloaded symphonia-metadata v0.5.5
[INFO] [stderr]   Downloaded symphonia-format-riff v0.5.5
[INFO] [stderr]   Downloaded objc2-core-audio-types v0.3.2
[INFO] [stderr]   Downloaded symphonia-codec-pcm v0.5.5
[INFO] [stderr]   Downloaded color-spantrace v0.3.0
[INFO] [stderr]   Downloaded symphonia v0.5.5
[INFO] [stderr]   Downloaded indoc v2.0.6
[INFO] [stderr]   Downloaded owo-colors v4.2.1
[INFO] [stderr]   Downloaded compact_str v0.8.1
[INFO] [stderr]   Downloaded coreaudio-rs v0.13.0
[INFO] [stderr]   Downloaded symphonia-bundle-mp3 v0.5.5
[INFO] [stderr]   Downloaded toml_edit v0.23.4
[INFO] [stderr]   Downloaded objc2-audio-toolbox v0.3.2
[INFO] [stderr]   Downloaded cpal v0.16.0
[INFO] [stderr]   Downloaded symphonia-core v0.5.5
[INFO] [stderr]   Downloaded rodio v0.21.1
[INFO] [stderr]   Downloaded objc2-core-audio v0.3.2
[INFO] [stderr]   Downloaded symphonia-codec-aac v0.5.5
[INFO] [stderr]   Downloaded instability v0.3.7
[INFO] [stderr]   Downloaded flexi_logger v0.31.7
[INFO] [stderr]   Downloaded unicode-truncate v1.1.0
[INFO] [stderr]   Downloaded symphonia-bundle-flac v0.5.5
[INFO] [stderr]   Downloaded symphonia-format-isomp4 v0.5.5
[INFO] [stderr]   Downloaded color-eyre v0.6.5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+d5419f1e97b90741d51841f800d3c697c662567d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 429f99af1ac597fdc309db6d39e7a6d09cb3b2f8db509d47d836efb3a1953b27
[INFO] running `Command { std: "docker" "start" "-a" "429f99af1ac597fdc309db6d39e7a6d09cb3b2f8db509d47d836efb3a1953b27", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "429f99af1ac597fdc309db6d39e7a6d09cb3b2f8db509d47d836efb3a1953b27", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "429f99af1ac597fdc309db6d39e7a6d09cb3b2f8db509d47d836efb3a1953b27", kill_on_drop: false }`
[INFO] [stdout] 429f99af1ac597fdc309db6d39e7a6d09cb3b2f8db509d47d836efb3a1953b27
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+d5419f1e97b90741d51841f800d3c697c662567d" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ec4f03959380f5346bf468b9fdcb4ec8fd1778d48fe3a22bdfa5e7234a27189c
[INFO] running `Command { std: "docker" "start" "-a" "ec4f03959380f5346bf468b9fdcb4ec8fd1778d48fe3a22bdfa5e7234a27189c", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.95
[INFO] [stderr]    Compiling unicode-ident v1.0.18
[INFO] [stderr]    Compiling libc v0.2.174
[INFO] [stderr]     Checking cfg-if v1.0.1
[INFO] [stderr]     Checking log v0.4.27
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling typenum v1.18.0
[INFO] [stderr]    Compiling lock_api v0.4.13
[INFO] [stderr]    Compiling stable_deref_trait v1.2.0
[INFO] [stderr]     Checking memchr v2.7.5
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]     Checking bytemuck v1.24.0
[INFO] [stderr]     Checking symphonia-core v0.5.5
[INFO] [stderr]    Compiling litemap v0.8.0
[INFO] [stderr]    Compiling writeable v0.6.1
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling pin-project-lite v0.2.16
[INFO] [stderr]    Compiling thiserror v2.0.16
[INFO] [stderr]    Compiling futures-core v0.3.31
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]     Checking encoding_rs v0.8.35
[INFO] [stderr]    Compiling serde_json v1.0.143
[INFO] [stderr]     Checking signal-hook-registry v1.4.5
[INFO] [stderr]    Compiling syn v2.0.104
[INFO] [stderr]     Checking parking_lot_core v0.9.11
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling cc v1.2.34
[INFO] [stderr]     Checking mio v1.0.4
[INFO] [stderr]     Checking parking_lot v0.12.4
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling icu_normalizer_data v2.0.0
[INFO] [stderr]    Compiling icu_properties_data v2.0.1
[INFO] [stderr]    Compiling futures-sink v0.3.31
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling allocator-api2 v0.2.21
[INFO] [stderr]     Checking symphonia-metadata v0.5.5
[INFO] [stderr]    Compiling foldhash v0.1.5
[INFO] [stderr]    Compiling percent-encoding v2.3.2
[INFO] [stderr]     Checking bitflags v2.9.1
[INFO] [stderr]     Checking hashbrown v0.15.4
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling socket2 v0.6.0
[INFO] [stderr]    Compiling rustversion v1.0.21
[INFO] [stderr]    Compiling libsqlite3-sys v0.30.1
[INFO] [stderr]    Compiling futures-task v0.3.31
[INFO] [stderr]    Compiling utf8_iter v1.0.4
[INFO] [stderr]    Compiling futures-io v0.3.31
[INFO] [stderr]    Compiling ryu v1.0.20
[INFO] [stderr]    Compiling bytes v1.10.1
[INFO] [stderr]    Compiling slab v0.4.11
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling pin-utils v0.1.0
[INFO] [stderr]    Compiling itoa v1.0.15
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]     Checking symphonia-utils-xiph v0.5.5
[INFO] [stderr]    Compiling tracing-core v0.1.34
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling cpufeatures v0.2.17
[INFO] [stderr]    Compiling crc-catalog v2.4.0
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]    Compiling tokio v1.47.1
[INFO] [stderr]    Compiling parking v2.2.1
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling event-listener v5.4.1
[INFO] [stderr]    Compiling crc v3.3.0
[INFO] [stderr]    Compiling futures-intrusive v0.5.0
[INFO] [stderr]    Compiling indexmap v2.11.0
[INFO] [stderr]    Compiling hashlink v0.10.0
[INFO] [stderr]    Compiling crossbeam-queue v0.3.12
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling atoi v2.0.0
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking regex-automata v0.4.9
[INFO] [stderr]    Compiling flume v0.11.1
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]     Checking thread_local v1.1.9
[INFO] [stderr]    Compiling owo-colors v4.2.1
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling object v0.36.7
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.0
[INFO] [stderr]    Compiling zerovec-derive v0.11.1
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling tracing-attributes v0.1.30
[INFO] [stderr]    Compiling thiserror-impl v2.0.16
[INFO] [stderr]    Compiling tokio-stream v0.1.17
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling yoke v0.8.0
[INFO] [stderr]    Compiling zerovec v0.11.4
[INFO] [stderr]    Compiling zerotrie v0.2.2
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]     Checking regex v1.11.1
[INFO] [stderr]    Compiling tinystr v0.8.1
[INFO] [stderr]    Compiling potential_utf v0.1.2
[INFO] [stderr]    Compiling icu_locale_core v2.0.0
[INFO] [stderr]    Compiling icu_collections v2.0.0
[INFO] [stderr]    Compiling convert_case v0.7.1
[INFO] [stderr]     Checking tracing-subscriber v0.3.19
[INFO] [stderr]     Checking signal-hook-mio v0.2.4
[INFO] [stderr]     Checking alsa-sys v0.3.1
[INFO] [stderr]    Compiling icu_provider v2.0.0
[INFO] [stderr]    Compiling icu_properties v2.0.1
[INFO] [stderr]    Compiling icu_normalizer v2.0.0
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling color-spantrace v0.3.0
[INFO] [stderr]    Compiling dotenvy v0.15.7
[INFO] [stderr]    Compiling rustix v1.0.8
[INFO] [stderr]    Compiling eyre v0.6.12
[INFO] [stderr]    Compiling cpal v0.16.0
[INFO] [stderr]     Checking linux-raw-sys v0.4.15
[INFO] [stderr]     Checking utf8parse v0.2.2
[INFO] [stderr]     Checking gimli v0.31.1
[INFO] [stderr]     Checking extended v0.1.0
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]     Checking symphonia-format-riff v0.5.5
[INFO] [stderr]     Checking anstyle-parse v0.2.7
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]     Checking tracing-error v0.2.1
[INFO] [stderr]     Checking alsa v0.9.1
[INFO] [stderr]    Compiling derive_more-impl v2.0.1
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking url v2.5.7
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]     Checking itertools v0.13.0
[INFO] [stderr]     Checking crc32fast v1.5.0
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]     Checking sqlx-core v0.8.6
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]     Checking castaway v0.2.3
[INFO] [stderr]     Checking symphonia-format-ogg v0.5.5
[INFO] [stderr]     Checking symphonia-format-isomp4 v0.5.5
[INFO] [stderr]     Checking symphonia-bundle-flac v0.5.5
[INFO] [stderr]     Checking addr2line v0.24.2
[INFO] [stderr]     Checking symphonia-codec-vorbis v0.5.5
[INFO] [stderr]     Checking symphonia-bundle-mp3 v0.5.5
[INFO] [stderr]     Checking symphonia-codec-pcm v0.5.5
[INFO] [stderr]     Checking symphonia-codec-aac v0.5.5
[INFO] [stderr]     Checking rustc-demangle v0.1.25
[INFO] [stderr]     Checking indenter v0.3.3
[INFO] [stderr]     Checking linux-raw-sys v0.9.4
[INFO] [stderr]     Checking iana-time-zone v0.1.64
[INFO] [stderr]     Checking colorchoice v1.0.4
[INFO] [stderr]    Compiling indoc v2.0.6
[INFO] [stderr]     Checking anstyle v1.0.11
[INFO] [stderr]     Checking is_terminal_polyfill v1.70.1
[INFO] [stderr]     Checking unicode-segmentation v1.12.0
[INFO] [stderr]     Checking anstyle-query v1.1.4
[INFO] [stderr]     Checking anstream v0.6.20
[INFO] [stderr]    Compiling instability v0.3.7
[INFO] [stderr]     Checking unicode-truncate v1.1.0
[INFO] [stderr]     Checking strum v0.26.3
[INFO] [stderr]     Checking symphonia v0.5.5
[INFO] [stderr]     Checking compact_str v0.8.1
[INFO] [stderr]     Checking chrono v0.4.42
[INFO] [stderr]     Checking ogg_pager v0.7.0
[INFO] [stderr]     Checking flate2 v1.1.2
[INFO] [stderr]     Checking sqlx-sqlite v0.8.6
[INFO] [stderr]     Checking num-rational v0.4.2
[INFO] [stderr]     Checking derive_more v2.0.1
[INFO] [stderr]     Checking crossterm v0.28.1
[INFO] [stderr]     Checking env_filter v0.1.3
[INFO] [stderr]    Compiling lofty_attr v0.11.1
[INFO] [stderr]     Checking lru v0.12.5
[INFO] [stderr]     Checking jiff v0.2.15
[INFO] [stderr]     Checking same-file v1.0.6
[INFO] [stderr]     Checking nu-ansi-term v0.50.3
[INFO] [stderr]     Checking cassowary v0.3.0
[INFO] [stderr]     Checking flexi_logger v0.31.7
[INFO] [stderr]     Checking walkdir v2.5.0
[INFO] [stderr]     Checking rodio v0.21.1
[INFO] [stderr]     Checking lofty v0.22.4
[INFO] [stderr]     Checking backtrace v0.3.75
[INFO] [stderr]     Checking ratatui v0.29.0
[INFO] [stderr]     Checking rayon v1.11.0
[INFO] [stderr]     Checking color-eyre v0.6.5
[INFO] [stderr]     Checking crossterm v0.29.0
[INFO] [stderr]     Checking num_cpus v1.17.0
[INFO] [stderr]    Compiling sqlx-macros-core v0.8.6
[INFO] [stderr]     Checking env_logger v0.11.8
[INFO] [stderr]    Compiling sqlx-macros v0.8.6
[INFO] [stderr]     Checking sqlx v0.8.6
[INFO] [stderr]     Checking Mujick v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Duplicate`
[INFO] [stdout]  --> src/main.rs:1:20
[INFO] [stdout]   |
[INFO] [stdout] 1 | use flexi_logger::{Duplicate, FileSpec};
[INFO] [stdout]   |                    ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Decoder`, `OutputStreamBuilder`, `OutputStream`, `Sink`, and `Source`
[INFO] [stdout]  --> src/main.rs:2:13
[INFO] [stdout]   |
[INFO] [stdout] 2 | use rodio::{Decoder, OutputStream, OutputStreamBuilder, Sink, Source};
[INFO] [stdout]   |             ^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^  ^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]  --> src/main.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::fs::File;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::BufReader`
[INFO] [stdout]  --> src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::io::BufReader;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]  --> src/main.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]  --> src/main.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::thread;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/main.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `scanner::scan_audio`
[INFO] [stdout]  --> src/audio/mod.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub use scanner::scan_audio;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `repository::create_tables`
[INFO] [stdout]  --> src/database/mod.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub use repository::create_tables;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `repository::insert_audio_details`
[INFO] [stdout]  --> src/database/mod.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use repository::insert_audio_details;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::gui::control::handel_controls`
[INFO] [stdout]   --> src/gui/gui.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::gui::control::handel_controls;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IntoEnumIterator`
[INFO] [stdout]   --> src/gui/song_tab.rs:14:42
[INFO] [stdout]    |
[INFO] [stdout] 14 | use strum::{Display, EnumIter, FromRepr, IntoEnumIterator};
[INFO] [stdout]    |                                          ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log::log`
[INFO] [stdout]  --> src/gui/song_view.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use log::log;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Paragraph`
[INFO] [stdout]  --> src/gui/song_view.rs:7:67
[INFO] [stdout]   |
[INFO] [stdout] 7 | use ratatui::widgets::{Block, Borders, List, ListItem, ListState, Paragraph, StatefulWidget};
[INFO] [stdout]   |                                                                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Duplicate`
[INFO] [stdout]  --> src/main.rs:1:20
[INFO] [stdout]   |
[INFO] [stdout] 1 | use flexi_logger::{Duplicate, FileSpec};
[INFO] [stdout]   |                    ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Decoder`, `OutputStreamBuilder`, `OutputStream`, `Sink`, and `Source`
[INFO] [stdout]  --> src/main.rs:2:13
[INFO] [stdout]   |
[INFO] [stdout] 2 | use rodio::{Decoder, OutputStream, OutputStreamBuilder, Sink, Source};
[INFO] [stdout]   |             ^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^  ^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs::File`
[INFO] [stdout]  --> src/main.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::fs::File;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::BufReader`
[INFO] [stdout]  --> src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::io::BufReader;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]  --> src/main.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::{Arc, Mutex};
[INFO] [stdout]   |                 ^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]  --> src/main.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::thread;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/main.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `scanner::scan_audio`
[INFO] [stdout]  --> src/audio/mod.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub use scanner::scan_audio;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `repository::create_tables`
[INFO] [stdout]  --> src/database/mod.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub use repository::create_tables;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `repository::insert_audio_details`
[INFO] [stdout]  --> src/database/mod.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use repository::insert_audio_details;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::gui::control::handel_controls`
[INFO] [stdout]   --> src/gui/gui.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::gui::control::handel_controls;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IntoEnumIterator`
[INFO] [stdout]   --> src/gui/song_tab.rs:14:42
[INFO] [stdout]    |
[INFO] [stdout] 14 | use strum::{Display, EnumIter, FromRepr, IntoEnumIterator};
[INFO] [stdout]    |                                          ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log::log`
[INFO] [stdout]  --> src/gui/song_view.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use log::log;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Paragraph`
[INFO] [stdout]  --> src/gui/song_view.rs:7:67
[INFO] [stdout]   |
[INFO] [stdout] 7 | use ratatui::widgets::{Block, Borders, List, ListItem, ListState, Paragraph, StatefulWidget};
[INFO] [stdout]   |                                                                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `paragraph`
[INFO] [stdout]    --> src/gui/gui.rs:186:9
[INFO] [stdout]     |
[INFO] [stdout] 186 |     let paragraph = Paragraph::new(content)
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_paragraph`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `paragraph_songlist`
[INFO] [stdout]    --> src/gui/gui.rs:190:9
[INFO] [stdout]     |
[INFO] [stdout] 190 |     let paragraph_songlist = Paragraph::new("soemthing agas")
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_paragraph_songlist`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `app`
[INFO] [stdout]   --> src/gui/play_area.rs:47:57
[INFO] [stdout]    |
[INFO] [stdout] 47 | fn render_control_area(f: &mut Frame<'_>, layout: Rect, app: &AppState) {
[INFO] [stdout]    |                                                         ^^^ help: if this is intentional, prefix it with an underscore: `_app`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `app`
[INFO] [stdout]   --> src/gui/play_area.rs:70:56
[INFO] [stdout]    |
[INFO] [stdout] 70 | fn render_audio_description(f: &mut Frame, area: Rect, app: &AppState) {
[INFO] [stdout]    |                                                        ^^^ help: if this is intentional, prefix it with an underscore: `_app`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `app`
[INFO] [stdout]    --> src/gui/play_area.rs:118:50
[INFO] [stdout]     |
[INFO] [stdout] 118 | fn render_progressbar(f: &mut Frame, area: Rect, app: &AppState) {
[INFO] [stdout]     |                                                  ^^^ help: if this is intentional, prefix it with an underscore: `_app`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `paragraph`
[INFO] [stdout]    --> src/gui/gui.rs:186:9
[INFO] [stdout]     |
[INFO] [stdout] 186 |     let paragraph = Paragraph::new(content)
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_paragraph`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `paragraph_songlist`
[INFO] [stdout]    --> src/gui/gui.rs:190:9
[INFO] [stdout]     |
[INFO] [stdout] 190 |     let paragraph_songlist = Paragraph::new("soemthing agas")
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_paragraph_songlist`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `app`
[INFO] [stdout]   --> src/gui/play_area.rs:47:57
[INFO] [stdout]    |
[INFO] [stdout] 47 | fn render_control_area(f: &mut Frame<'_>, layout: Rect, app: &AppState) {
[INFO] [stdout]    |                                                         ^^^ help: if this is intentional, prefix it with an underscore: `_app`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `app`
[INFO] [stdout]   --> src/gui/play_area.rs:70:56
[INFO] [stdout]    |
[INFO] [stdout] 70 | fn render_audio_description(f: &mut Frame, area: Rect, app: &AppState) {
[INFO] [stdout]    |                                                        ^^^ help: if this is intentional, prefix it with an underscore: `_app`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `app`
[INFO] [stdout]    --> src/gui/play_area.rs:118:50
[INFO] [stdout]     |
[INFO] [stdout] 118 | fn render_progressbar(f: &mut Frame, area: Rect, app: &AppState) {
[INFO] [stdout]     |                                                  ^^^ help: if this is intentional, prefix it with an underscore: `_app`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AudioError` is never constructed
[INFO] [stdout]  --> src/audio/audio_error.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct AudioError {
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `path` and `audio_type` are never read
[INFO] [stdout]  --> src/audio/audio_file.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct AudioDetails {
[INFO] [stdout]   |            ------------ fields in this struct
[INFO] [stdout] 6 |     pub path: PathBuf,
[INFO] [stdout]   |         ^^^^
[INFO] [stdout] 7 |     pub audio_type: AudioType,
[INFO] [stdout]   |         ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `AudioDetails` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_path` and `as_str` are never used
[INFO] [stdout]   --> src/audio/audio_type.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl AudioType {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 16 |     pub fn from_path(path: &Path) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn as_str(&self) -> &'static str {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scan_audio` is never used
[INFO] [stdout]   --> src/audio/scanner.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn scan_audio() -> Result<Vec<AudioDetails>, AudioError> {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_metadata` is never used
[INFO] [stdout]   --> src/audio/scanner.rs:39:4
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn extract_metadata(audio_files: &Vec<PathBuf>) -> Result<Vec<AudioDetails>, AudioError> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `total_number_of_cpu` is never used
[INFO] [stdout]   --> src/audio/scanner.rs:94:4
[INFO] [stdout]    |
[INFO] [stdout] 94 | fn total_number_of_cpu() -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_hidden_dir` is never used
[INFO] [stdout]   --> src/audio/scanner.rs:98:4
[INFO] [stdout]    |
[INFO] [stdout] 98 | fn is_hidden_dir(entry: &walkdir::DirEntry) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_music_file` is never used
[INFO] [stdout]    --> src/audio/scanner.rs:102:4
[INFO] [stdout]     |
[INFO] [stdout] 102 | fn is_music_file(entry: &walkdir::DirEntry) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `DB_CONN` is never used
[INFO] [stdout]  --> src/database/connection.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | static DB_CONN: OnceCell<Pool<Sqlite>> = OnceCell::const_new();
[INFO] [stdout]   |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `db_conn` is never used
[INFO] [stdout]   --> src/database/connection.rs:10:14
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub async fn db_conn() -> Result<Pool<Sqlite>, Error> {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_tables` is never used
[INFO] [stdout]  --> src/database/repository.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub async fn create_tables() -> Result<(), Error> {
[INFO] [stdout]   |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `insert_audio_details` is never used
[INFO] [stdout]   --> src/database/repository.rs:29:14
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub async fn insert_audio_details(meta_data_vec: &Vec<audio::AudioDetails>) -> Result<(), Error> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_existing_paths` is never used
[INFO] [stdout]   --> src/database/repository.rs:59:10
[INFO] [stdout]    |
[INFO] [stdout] 59 | async fn get_existing_paths() -> Result<HashSet<String>, Error> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_new_files` is never used
[INFO] [stdout]   --> src/database/repository.rs:73:10
[INFO] [stdout]    |
[INFO] [stdout] 73 | async fn get_new_files() {}
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `is_playing` and `selected_music_index` are never read
[INFO] [stdout]   --> src/gui/gui.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct AppState {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 43 |     pub should_exit: bool,
[INFO] [stdout] 44 |     pub is_playing: bool,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub selected_music_index: usize
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_key` is never used
[INFO] [stdout]   --> src/gui/gui.rs:95:4
[INFO] [stdout]    |
[INFO] [stdout] 95 | fn handle_key(key: KeyEvent, app_state: &mut AppState) {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `COMPLETED` is never used
[INFO] [stdout]   --> src/gui/play_area.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const COMPLETED: Color = tailwind::BLUE.c800;
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `block` is never used
[INFO] [stdout]   --> src/gui/song_tab.rs:79:12
[INFO] [stdout]    |
[INFO] [stdout] 37 | impl SelectedTab {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 79 |     pub fn block(self) -> Block<'static> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/gui/play_area.rs:130:23
[INFO] [stdout]     |
[INFO] [stdout] 130 | fn title_block(title: &str) -> Block {
[INFO] [stdout]     |                       ^^^^     ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 130 | fn title_block(title: &str) -> Block<'_> {
[INFO] [stdout]     |                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AudioError` is never constructed
[INFO] [stdout]  --> src/audio/audio_error.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct AudioError {
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `path` and `audio_type` are never read
[INFO] [stdout]  --> src/audio/audio_file.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct AudioDetails {
[INFO] [stdout]   |            ------------ fields in this struct
[INFO] [stdout] 6 |     pub path: PathBuf,
[INFO] [stdout]   |         ^^^^
[INFO] [stdout] 7 |     pub audio_type: AudioType,
[INFO] [stdout]   |         ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `AudioDetails` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_path` and `as_str` are never used
[INFO] [stdout]   --> src/audio/audio_type.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl AudioType {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 16 |     pub fn from_path(path: &Path) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn as_str(&self) -> &'static str {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scan_audio` is never used
[INFO] [stdout]   --> src/audio/scanner.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn scan_audio() -> Result<Vec<AudioDetails>, AudioError> {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_metadata` is never used
[INFO] [stdout]   --> src/audio/scanner.rs:39:4
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn extract_metadata(audio_files: &Vec<PathBuf>) -> Result<Vec<AudioDetails>, AudioError> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `total_number_of_cpu` is never used
[INFO] [stdout]   --> src/audio/scanner.rs:94:4
[INFO] [stdout]    |
[INFO] [stdout] 94 | fn total_number_of_cpu() -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_hidden_dir` is never used
[INFO] [stdout]   --> src/audio/scanner.rs:98:4
[INFO] [stdout]    |
[INFO] [stdout] 98 | fn is_hidden_dir(entry: &walkdir::DirEntry) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_music_file` is never used
[INFO] [stdout]    --> src/audio/scanner.rs:102:4
[INFO] [stdout]     |
[INFO] [stdout] 102 | fn is_music_file(entry: &walkdir::DirEntry) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `DB_CONN` is never used
[INFO] [stdout]  --> src/database/connection.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | static DB_CONN: OnceCell<Pool<Sqlite>> = OnceCell::const_new();
[INFO] [stdout]   |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `db_conn` is never used
[INFO] [stdout]   --> src/database/connection.rs:10:14
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub async fn db_conn() -> Result<Pool<Sqlite>, Error> {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_tables` is never used
[INFO] [stdout]  --> src/database/repository.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub async fn create_tables() -> Result<(), Error> {
[INFO] [stdout]   |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `insert_audio_details` is never used
[INFO] [stdout]   --> src/database/repository.rs:29:14
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub async fn insert_audio_details(meta_data_vec: &Vec<audio::AudioDetails>) -> Result<(), Error> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_existing_paths` is never used
[INFO] [stdout]   --> src/database/repository.rs:59:10
[INFO] [stdout]    |
[INFO] [stdout] 59 | async fn get_existing_paths() -> Result<HashSet<String>, Error> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_new_files` is never used
[INFO] [stdout]   --> src/database/repository.rs:73:10
[INFO] [stdout]    |
[INFO] [stdout] 73 | async fn get_new_files() {}
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `is_playing` and `selected_music_index` are never read
[INFO] [stdout]   --> src/gui/gui.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct AppState {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 43 |     pub should_exit: bool,
[INFO] [stdout] 44 |     pub is_playing: bool,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub selected_music_index: usize
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_key` is never used
[INFO] [stdout]   --> src/gui/gui.rs:95:4
[INFO] [stdout]    |
[INFO] [stdout] 95 | fn handle_key(key: KeyEvent, app_state: &mut AppState) {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `COMPLETED` is never used
[INFO] [stdout]   --> src/gui/play_area.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const COMPLETED: Color = tailwind::BLUE.c800;
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `block` is never used
[INFO] [stdout]   --> src/gui/song_tab.rs:79:12
[INFO] [stdout]    |
[INFO] [stdout] 37 | impl SelectedTab {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 79 |     pub fn block(self) -> Block<'static> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/gui/play_area.rs:130:23
[INFO] [stdout]     |
[INFO] [stdout] 130 | fn title_block(title: &str) -> Block {
[INFO] [stdout]     |                       ^^^^     ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 130 | fn title_block(title: &str) -> Block<'_> {
[INFO] [stdout]     |                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 16s
[INFO] running `Command { std: "docker" "inspect" "ec4f03959380f5346bf468b9fdcb4ec8fd1778d48fe3a22bdfa5e7234a27189c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ec4f03959380f5346bf468b9fdcb4ec8fd1778d48fe3a22bdfa5e7234a27189c", kill_on_drop: false }`
[INFO] [stdout] ec4f03959380f5346bf468b9fdcb4ec8fd1778d48fe3a22bdfa5e7234a27189c
