[INFO] cloning repository https://github.com/JovanMwesigwa/numero-algo [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/JovanMwesigwa/numero-algo" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJovanMwesigwa%2Fnumero-algo", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJovanMwesigwa%2Fnumero-algo'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 53b892a5a9893307d95674239da5eb7bc3dad8eb [INFO] checking JovanMwesigwa/numero-algo/53b892a5a9893307d95674239da5eb7bc3dad8eb against master#3c9faa0d037b9eecda4a440cc482ff7f960fb8a5 for pr-152210 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJovanMwesigwa%2Fnumero-algo" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/JovanMwesigwa/numero-algo [INFO] finished tweaking git repo https://github.com/JovanMwesigwa/numero-algo [INFO] tweaked toml for git repo https://github.com/JovanMwesigwa/numero-algo written to /workspace/builds/worker-0-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/JovanMwesigwa/numero-algo on toolchain 3c9faa0d037b9eecda4a440cc482ff7f960fb8a5 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3c9faa0d037b9eecda4a440cc482ff7f960fb8a5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/JovanMwesigwa/numero-algo 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" "+3c9faa0d037b9eecda4a440cc482ff7f960fb8a5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded windows-strings v0.4.0 [INFO] [stderr] Downloaded dwrote v0.11.3 [INFO] [stderr] Downloaded pathfinder_simd v0.5.4 [INFO] [stderr] Downloaded colorous v1.0.16 [INFO] [stderr] Downloaded windows-core v0.61.0 [INFO] [stderr] Downloaded winnow v0.7.9 [INFO] [stderr] Downloaded font-kit v0.14.2 [INFO] [stderr] Downloaded rustfft v6.3.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+3c9faa0d037b9eecda4a440cc482ff7f960fb8a5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 91eded435c68eb7a696bdbf3a198a38315de4cb09b90a8affd86113f0fd36bd6 [INFO] running `Command { std: "docker" "start" "-a" "91eded435c68eb7a696bdbf3a198a38315de4cb09b90a8affd86113f0fd36bd6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "91eded435c68eb7a696bdbf3a198a38315de4cb09b90a8affd86113f0fd36bd6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "91eded435c68eb7a696bdbf3a198a38315de4cb09b90a8affd86113f0fd36bd6", kill_on_drop: false }` [INFO] [stdout] 91eded435c68eb7a696bdbf3a198a38315de4cb09b90a8affd86113f0fd36bd6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+3c9faa0d037b9eecda4a440cc482ff7f960fb8a5" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 20ead0123cc2ba831afa6cf013ea3cb50ca99cfe8d388d887d2f3936e5ca4979 [INFO] running `Command { std: "docker" "start" "-a" "20ead0123cc2ba831afa6cf013ea3cb50ca99cfe8d388d887d2f3936e5ca4979", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.172 [INFO] [stderr] Checking bytemuck v1.23.0 [INFO] [stderr] Compiling cc v1.2.21 [INFO] [stderr] Compiling proc-macro2 v1.0.95 [INFO] [stderr] Checking miniz_oxide v0.8.8 [INFO] [stderr] Compiling pathfinder_simd v0.5.4 [INFO] [stderr] Compiling yeslogic-fontconfig-sys v6.0.0 [INFO] [stderr] Checking bitflags v2.9.0 [INFO] [stderr] Checking encoding_rs v0.8.35 [INFO] [stderr] Checking libloading v0.8.6 [INFO] [stderr] Checking option-ext v0.2.0 [INFO] [stderr] Checking symphonia-core v0.5.4 [INFO] [stderr] Checking dlib v0.5.2 [INFO] [stderr] Checking crossbeam-epoch v0.9.18 [INFO] [stderr] Checking flate2 v1.1.1 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Checking num-integer v0.1.46 [INFO] [stderr] Checking png v0.17.16 [INFO] [stderr] Checking tracing-core v0.1.33 [INFO] [stderr] Checking weezl v0.1.8 [INFO] [stderr] Checking plotters-backend v0.3.7 [INFO] [stderr] Checking alsa-sys v0.3.1 [INFO] [stderr] Checking dirs-sys v0.4.1 [INFO] [stderr] Checking jpeg-decoder v0.3.1 [INFO] [stderr] Checking same-file v1.0.6 [INFO] [stderr] Compiling rayon-core v1.12.1 [INFO] [stderr] Compiling font-kit v0.14.2 [INFO] [stderr] Checking gif v0.12.0 [INFO] [stderr] Checking walkdir v2.5.0 [INFO] [stderr] Checking dirs v5.0.1 [INFO] [stderr] Compiling rustfft v6.3.0 [INFO] [stderr] Checking alsa v0.9.1 [INFO] [stderr] Compiling syn v2.0.101 [INFO] [stderr] Checking pathfinder_geometry v0.5.1 [INFO] [stderr] Checking crossbeam-deque v0.8.6 [INFO] [stderr] Checking ogg v0.8.0 [INFO] [stderr] Checking symphonia-metadata v0.5.4 [INFO] [stderr] Checking dasp_sample v0.11.0 [INFO] [stderr] Checking strength_reduce v0.2.4 [INFO] [stderr] Checking symphonia-bundle-mp3 v0.5.4 [INFO] [stderr] Checking float-ord v0.3.2 [INFO] [stderr] Checking lewton v0.10.2 [INFO] [stderr] Checking transpose v0.2.3 [INFO] [stderr] Checking image v0.24.9 [INFO] [stderr] Checking chrono v0.4.41 [INFO] [stderr] Checking cpal v0.15.3 [INFO] [stderr] Compiling freetype-sys v0.20.1 [INFO] [stderr] Checking symphonia v0.5.4 [INFO] [stderr] Checking tracing-log v0.2.0 [INFO] [stderr] Checking plotters-svg v0.3.7 [INFO] [stderr] Checking primal-check v0.3.4 [INFO] [stderr] Checking num-complex v0.4.6 [INFO] [stderr] Checking thread_local v1.1.8 [INFO] [stderr] Checking hound v3.5.1 [INFO] [stderr] Checking either v1.15.0 [INFO] [stderr] Checking smallvec v1.15.0 [INFO] [stderr] Checking ttf-parser v0.20.0 [INFO] [stderr] Checking unicode-width v0.2.0 [INFO] [stderr] Checking claxon v0.4.3 [INFO] [stderr] Checking tracing-subscriber v0.3.19 [INFO] [stderr] Checking console v0.15.11 [INFO] [stderr] Checking rodio v0.17.3 [INFO] [stderr] Checking rayon v1.10.0 [INFO] [stderr] Checking plotters-bitmap v0.3.7 [INFO] [stderr] Checking colorous v1.0.16 [INFO] [stderr] Checking plotters v0.3.7 [INFO] [stderr] Compiling tracing-attributes v0.1.28 [INFO] [stderr] Checking tracing v0.1.41 [INFO] [stderr] Checking numero v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `self::hash::hash_fingerprint` [INFO] [stdout] --> src/fingerprint/mod.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub use self::hash::hash_fingerprint; [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: `self::utils::frame_signal` [INFO] [stdout] --> src/fingerprint/mod.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub use self::utils::frame_signal; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/main.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> src/main.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/dsp/filter.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | let mut n = input.len(); [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: variable does not need to be mutable [INFO] [stdout] --> src/dsp/filter.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 47 | let mut k = kernel.len(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pixel_width` [INFO] [stdout] --> src/dsp/viz.rs:330:9 [INFO] [stdout] | [INFO] [stdout] 330 | let pixel_width = 900.0 / spectrogram.len() as f64; // Reduced width to accommodate colorbar [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pixel_width` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pixel_height` [INFO] [stdout] --> src/dsp/viz.rs:331:9 [INFO] [stdout] | [INFO] [stdout] 331 | let pixel_height = 600.0 / frame_size as f64; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pixel_height` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `main_area` [INFO] [stdout] --> src/dsp/viz.rs:375:10 [INFO] [stdout] | [INFO] [stdout] 375 | let (main_area, colorbar_area) = root.split_horizontally(920); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_main_area` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/fingerprint/utils.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 8 | let mut n = signal.len(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::hash::hash_fingerprint` [INFO] [stdout] --> src/fingerprint/mod.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub use self::hash::hash_fingerprint; [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: `self::utils::frame_signal` [INFO] [stdout] --> src/fingerprint/mod.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub use self::utils::frame_signal; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/main.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> src/main.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_freq_signature` is never used [INFO] [stdout] --> src/main.rs:94:4 [INFO] [stdout] | [INFO] [stdout] 94 | fn get_freq_signature(f1: u32, f2: u32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `visualize_kernel` is never used [INFO] [stdout] --> src/dsp/viz.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn visualize_kernel(kernel: &[f64], width: usize) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `plot_kernel` is never used [INFO] [stdout] --> src/dsp/viz.rs:48:8 [INFO] [stdout] | [INFO] [stdout] 48 | pub fn plot_kernel( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `plot_kernel_with_frequency_response` is never used [INFO] [stdout] --> src/dsp/viz.rs:114:8 [INFO] [stdout] | [INFO] [stdout] 114 | pub fn plot_kernel_with_frequency_response( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_frequency_response` is never used [INFO] [stdout] --> src/dsp/viz.rs:181:4 [INFO] [stdout] | [INFO] [stdout] 181 | fn calculate_frequency_response(kernel: &[f64], n_points: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `plot_filter_comparison` is never used [INFO] [stdout] --> src/dsp/viz.rs:201:8 [INFO] [stdout] | [INFO] [stdout] 201 | pub fn plot_filter_comparison( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `decode_hash` is never used [INFO] [stdout] --> src/fingerprint/mod.rs:14:4 [INFO] [stdout] | [INFO] [stdout] 14 | fn decode_hash(hash: u32) -> (u32, u32, u32) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FingerprintMatch` is never constructed [INFO] [stdout] --> src/fingerprint/mod.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | struct FingerprintMatch { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `match_fingerprints` is never used [INFO] [stdout] --> src/fingerprint/mod.rs:31:8 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn match_fingerprints(fp1: &[u32], fp2: &[u32]) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `magnitude` is never read [INFO] [stdout] --> src/fingerprint/peaks.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Peak { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] ... [INFO] [stdout] 11 | pub magnitude: f64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Peak` 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: function `calculate_audio_stats` is never used [INFO] [stdout] --> src/utils.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | pub fn calculate_audio_stats(samples: &[i16]) -> AudioStats { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AudioStats` is never constructed [INFO] [stdout] --> src/utils.rs:81:12 [INFO] [stdout] | [INFO] [stdout] 81 | pub struct AudioStats { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/utils.rs:26:28 [INFO] [stdout] | [INFO] [stdout] 26 | if min < -32768 || max > 32767 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/dsp/filter.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | let mut n = input.len(); [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: variable does not need to be mutable [INFO] [stdout] --> src/dsp/filter.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 47 | let mut k = kernel.len(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pixel_width` [INFO] [stdout] --> src/dsp/viz.rs:330:9 [INFO] [stdout] | [INFO] [stdout] 330 | let pixel_width = 900.0 / spectrogram.len() as f64; // Reduced width to accommodate colorbar [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pixel_width` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pixel_height` [INFO] [stdout] --> src/dsp/viz.rs:331:9 [INFO] [stdout] | [INFO] [stdout] 331 | let pixel_height = 600.0 / frame_size as f64; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pixel_height` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `main_area` [INFO] [stdout] --> src/dsp/viz.rs:375:10 [INFO] [stdout] | [INFO] [stdout] 375 | let (main_area, colorbar_area) = root.split_horizontally(920); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_main_area` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/fingerprint/utils.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 8 | let mut n = signal.len(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_freq_signature` is never used [INFO] [stdout] --> src/main.rs:94:4 [INFO] [stdout] | [INFO] [stdout] 94 | fn get_freq_signature(f1: u32, f2: u32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `visualize_kernel` is never used [INFO] [stdout] --> src/dsp/viz.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn visualize_kernel(kernel: &[f64], width: usize) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `plot_kernel` is never used [INFO] [stdout] --> src/dsp/viz.rs:48:8 [INFO] [stdout] | [INFO] [stdout] 48 | pub fn plot_kernel( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `plot_kernel_with_frequency_response` is never used [INFO] [stdout] --> src/dsp/viz.rs:114:8 [INFO] [stdout] | [INFO] [stdout] 114 | pub fn plot_kernel_with_frequency_response( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `calculate_frequency_response` is never used [INFO] [stdout] --> src/dsp/viz.rs:181:4 [INFO] [stdout] | [INFO] [stdout] 181 | fn calculate_frequency_response(kernel: &[f64], n_points: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `plot_filter_comparison` is never used [INFO] [stdout] --> src/dsp/viz.rs:201:8 [INFO] [stdout] | [INFO] [stdout] 201 | pub fn plot_filter_comparison( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `decode_hash` is never used [INFO] [stdout] --> src/fingerprint/mod.rs:14:4 [INFO] [stdout] | [INFO] [stdout] 14 | fn decode_hash(hash: u32) -> (u32, u32, u32) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FingerprintMatch` is never constructed [INFO] [stdout] --> src/fingerprint/mod.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | struct FingerprintMatch { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `match_fingerprints` is never used [INFO] [stdout] --> src/fingerprint/mod.rs:31:8 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn match_fingerprints(fp1: &[u32], fp2: &[u32]) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `magnitude` is never read [INFO] [stdout] --> src/fingerprint/peaks.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Peak { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] ... [INFO] [stdout] 11 | pub magnitude: f64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Peak` 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: function `calculate_audio_stats` is never used [INFO] [stdout] --> src/utils.rs:58:8 [INFO] [stdout] | [INFO] [stdout] 58 | pub fn calculate_audio_stats(samples: &[i16]) -> AudioStats { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AudioStats` is never constructed [INFO] [stdout] --> src/utils.rs:81:12 [INFO] [stdout] | [INFO] [stdout] 81 | pub struct AudioStats { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/utils.rs:26:28 [INFO] [stdout] | [INFO] [stdout] 26 | if min < -32768 || max > 32767 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 32.59s [INFO] running `Command { std: "docker" "inspect" "20ead0123cc2ba831afa6cf013ea3cb50ca99cfe8d388d887d2f3936e5ca4979", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "20ead0123cc2ba831afa6cf013ea3cb50ca99cfe8d388d887d2f3936e5ca4979", kill_on_drop: false }` [INFO] [stdout] 20ead0123cc2ba831afa6cf013ea3cb50ca99cfe8d388d887d2f3936e5ca4979