[INFO] cloning repository https://github.com/ZyneAA/Wave-Form
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ZyneAA/Wave-Form" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FZyneAA%2FWave-Form", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FZyneAA%2FWave-Form'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 8a4b27c37ac5912468877fe9c70847bf3d397405
[INFO] checking ZyneAA/Wave-Form against master#b52edc25bfbaa955b4b83c10f998e5224c3478b2 for pr-156776
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FZyneAA%2FWave-Form" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/ZyneAA/Wave-Form
[INFO] finished tweaking git repo https://github.com/ZyneAA/Wave-Form
[INFO] tweaked toml for git repo https://github.com/ZyneAA/Wave-Form written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/ZyneAA/Wave-Form on toolchain b52edc25bfbaa955b4b83c10f998e5224c3478b2
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b52edc25bfbaa955b4b83c10f998e5224c3478b2" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/ZyneAA/Wave-Form 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" "+b52edc25bfbaa955b4b83c10f998e5224c3478b2" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded cc v1.1.30
[INFO] [stderr]   Downloaded serde_json v1.0.129
[INFO] [stderr]   Downloaded id3 v1.15.0
[INFO] [stderr]   Downloaded libc v0.2.160
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+b52edc25bfbaa955b4b83c10f998e5224c3478b2" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 510c810cf464740c1e525648e6ab2474a0ceffe3c8dcfe8feaaab1bd88226af4
[INFO] running `Command { std: "docker" "start" "-a" "510c810cf464740c1e525648e6ab2474a0ceffe3c8dcfe8feaaab1bd88226af4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "510c810cf464740c1e525648e6ab2474a0ceffe3c8dcfe8feaaab1bd88226af4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "510c810cf464740c1e525648e6ab2474a0ceffe3c8dcfe8feaaab1bd88226af4", kill_on_drop: false }`
[INFO] [stdout] 510c810cf464740c1e525648e6ab2474a0ceffe3c8dcfe8feaaab1bd88226af4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+b52edc25bfbaa955b4b83c10f998e5224c3478b2" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5f4d14733f45d594df3d2fa5a12baa99a6d0bb39a01fb8c49ceeeb6d4e2c1e64
[INFO] running `Command { std: "docker" "start" "-a" "5f4d14733f45d594df3d2fa5a12baa99a6d0bb39a01fb8c49ceeeb6d4e2c1e64", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.160
[INFO] [stderr]    Compiling proc-macro2 v1.0.88
[INFO] [stderr]     Checking bytes v1.7.2
[INFO] [stderr]    Compiling cc v1.1.30
[INFO] [stderr]     Checking tracing-core v0.1.32
[INFO] [stderr]    Compiling alsa-sys v0.3.1
[INFO] [stderr]     Checking bytemuck v1.19.0
[INFO] [stderr]    Compiling getrandom v0.3.2
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]    Compiling thiserror v1.0.64
[INFO] [stderr]     Checking unicode-bidi v0.3.17
[INFO] [stderr]    Compiling serde_json v1.0.129
[INFO] [stderr]     Checking miniz_oxide v0.8.0
[INFO] [stderr]     Checking ogg v0.8.0
[INFO] [stderr]     Checking clap_builder v4.5.20
[INFO] [stderr]     Checking sync_wrapper v1.0.1
[INFO] [stderr]     Checking tracing v0.1.40
[INFO] [stderr]     Checking claxon v0.4.3
[INFO] [stderr]     Checking lewton v0.10.2
[INFO] [stderr]     Checking symphonia-core v0.5.4
[INFO] [stderr]     Checking idna v0.5.0
[INFO] [stderr]     Checking http v1.1.0
[INFO] [stderr]     Checking socket2 v0.5.7
[INFO] [stderr]     Checking mio v1.0.2
[INFO] [stderr]     Checking signal-hook-registry v1.4.2
[INFO] [stderr]     Checking parking_lot_core v0.9.10
[INFO] [stderr]     Checking mio v0.8.11
[INFO] [stderr]     Checking flate2 v1.0.35
[INFO] [stderr]     Checking signal-hook v0.3.17
[INFO] [stderr]     Checking parking_lot v0.12.3
[INFO] [stderr]     Checking id3 v1.15.0
[INFO] [stderr]     Checking rand_core v0.9.3
[INFO] [stderr]     Checking alsa v0.9.1
[INFO] [stderr]     Checking tokio v1.40.0
[INFO] [stderr]     Checking signal-hook-mio v0.2.4
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking url v2.5.2
[INFO] [stderr]     Checking crossterm v0.25.0
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]     Checking rand v0.9.0
[INFO] [stderr]     Checking symphonia-metadata v0.5.4
[INFO] [stderr]    Compiling syn v2.0.79
[INFO] [stderr]     Checking symphonia-bundle-mp3 v0.5.4
[INFO] [stderr]    Compiling openssl-sys v0.9.104
[INFO] [stderr]     Checking cpal v0.15.3
[INFO] [stderr]     Checking tui v0.19.0
[INFO] [stderr]    Compiling openssl v0.10.68
[INFO] [stderr]    Compiling native-tls v0.2.12
[INFO] [stderr]     Checking symphonia v0.5.4
[INFO] [stderr]     Checking http-body-util v0.1.2
[INFO] [stderr]     Checking tokio-util v0.7.12
[INFO] [stderr]     Checking h2 v0.4.6
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling serde_derive v1.0.210
[INFO] [stderr]    Compiling thiserror-impl v1.0.64
[INFO] [stderr]    Compiling clap_derive v4.5.18
[INFO] [stderr]     Checking rodio v0.19.0
[INFO] [stderr]     Checking clap v4.5.20
[INFO] [stderr]     Checking hyper v1.5.0
[INFO] [stderr]     Checking serde v1.0.210
[INFO] [stderr]     Checking hyper-util v0.1.9
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking reqwest v0.12.8
[INFO] [stderr]     Checking wave_form v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `u128`
[INFO] [stdout]  --> src/music/song.rs:3:34
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::{collections::VecDeque, u128};
[INFO] [stdout]   |                                  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::usize`
[INFO] [stdout]  --> src/helper.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::usize;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `u128`
[INFO] [stdout]  --> src/music/song.rs:3:34
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::{collections::VecDeque, u128};
[INFO] [stdout]   |                                  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::usize`
[INFO] [stdout]  --> src/helper.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::usize;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `duration`
[INFO] [stdout]   --> src/music/song.rs:22:87
[INFO] [stdout]    |
[INFO] [stdout] 22 | ...genere: Option<String>, duration: Option<Duration>, release_date: Option<String>) -> MetaData {
[INFO] [stdout]    |                            ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_duration`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `j`
[INFO] [stdout]    --> src/ui/mod.rs:260:21
[INFO] [stdout]     |
[INFO] [stdout] 260 |             let (i, j) = match data_rx.try_recv() {
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_j`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `interval`
[INFO] [stdout]    --> src/ui/mod.rs:152:13
[INFO] [stdout]     |
[INFO] [stdout] 152 |         let interval = match interval_rx.try_recv() {
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_interval`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/wave/command.rs:55:21
[INFO] [stdout]    |
[INFO] [stdout] 55 |                 let mut release_date = String::new();
[INFO] [stdout]    |                     ----^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `channel` and `publish_time` are never read
[INFO] [stdout]   --> src/youtube/video.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct Snippet {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub channel: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub publish_time: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Snippet` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DetailItem` is never constructed
[INFO] [stdout]   --> src/youtube/video.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct DetailItem {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ContentDetails` is never constructed
[INFO] [stdout]   --> src/youtube/video.rs:52:12
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub struct ContentDetails {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_video_details` is never used
[INFO] [stdout]   --> src/youtube/video.rs:95:8
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub fn get_video_details(video_id: &str, api_key: &str) -> Result<YoutubeResponse<DetailItem>, Box<dyn std::error::Error>>{
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_local_songs` is never used
[INFO] [stdout]   --> src/music/info.rs:59:8
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub fn get_local_songs<'a>(color_0: u8, color_1: u8, color_2: u8, selected_color_0: u8, selected_color_1: u8, selected_color_2: u8, ...
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `release_date` is never read
[INFO] [stdout]   --> src/music/song.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct MetaData {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub release_date: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_empty`, `size`, `clear`, and `remove_at` are never used
[INFO] [stdout]    --> src/music/song.rs:112:12
[INFO] [stdout]     |
[INFO] [stdout] 101 | impl Queue {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 112 |     pub fn is_empty(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 118 |     pub fn size(&self) -> usize {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 124 |     pub fn clear(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 148 |     pub fn remove_at(&mut self, index: usize) -> Option<Song> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `simulate_audio_wave` is never used
[INFO] [stdout]  --> src/wave/test.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn simulate_audio_wave() -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `duration`
[INFO] [stdout]   --> src/music/song.rs:22:87
[INFO] [stdout]    |
[INFO] [stdout] 22 | ...genere: Option<String>, duration: Option<Duration>, release_date: Option<String>) -> MetaData {
[INFO] [stdout]    |                            ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_duration`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `j`
[INFO] [stdout]    --> src/ui/mod.rs:260:21
[INFO] [stdout]     |
[INFO] [stdout] 260 |             let (i, j) = match data_rx.try_recv() {
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_j`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `interval`
[INFO] [stdout]    --> src/ui/mod.rs:152:13
[INFO] [stdout]     |
[INFO] [stdout] 152 |         let interval = match interval_rx.try_recv() {
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_interval`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/wave/command.rs:55:21
[INFO] [stdout]    |
[INFO] [stdout] 55 |                 let mut release_date = String::new();
[INFO] [stdout]    |                     ----^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `channel` and `publish_time` are never read
[INFO] [stdout]   --> src/youtube/video.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct Snippet {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub channel: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub publish_time: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Snippet` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DetailItem` is never constructed
[INFO] [stdout]   --> src/youtube/video.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct DetailItem {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ContentDetails` is never constructed
[INFO] [stdout]   --> src/youtube/video.rs:52:12
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub struct ContentDetails {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_video_details` is never used
[INFO] [stdout]   --> src/youtube/video.rs:95:8
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub fn get_video_details(video_id: &str, api_key: &str) -> Result<YoutubeResponse<DetailItem>, Box<dyn std::error::Error>>{
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_local_songs` is never used
[INFO] [stdout]   --> src/music/info.rs:59:8
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub fn get_local_songs<'a>(color_0: u8, color_1: u8, color_2: u8, selected_color_0: u8, selected_color_1: u8, selected_color_2: u8, ...
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `release_date` is never read
[INFO] [stdout]   --> src/music/song.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct MetaData {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub release_date: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_empty`, `size`, `clear`, and `remove_at` are never used
[INFO] [stdout]    --> src/music/song.rs:112:12
[INFO] [stdout]     |
[INFO] [stdout] 101 | impl Queue {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 112 |     pub fn is_empty(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 118 |     pub fn size(&self) -> usize {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 124 |     pub fn clear(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 148 |     pub fn remove_at(&mut self, index: usize) -> Option<Song> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `simulate_audio_wave` is never used
[INFO] [stdout]  --> src/wave/test.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn simulate_audio_wave() -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 28.55s
[INFO] running `Command { std: "docker" "inspect" "5f4d14733f45d594df3d2fa5a12baa99a6d0bb39a01fb8c49ceeeb6d4e2c1e64", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5f4d14733f45d594df3d2fa5a12baa99a6d0bb39a01fb8c49ceeeb6d4e2c1e64", kill_on_drop: false }`
[INFO] [stdout] 5f4d14733f45d594df3d2fa5a12baa99a6d0bb39a01fb8c49ceeeb6d4e2c1e64
