[INFO] cloning repository https://github.com/ShabbirHasan1/librecdj [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ShabbirHasan1/librecdj" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FShabbirHasan1%2Flibrecdj", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FShabbirHasan1%2Flibrecdj'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] ecce820e6e4e3fec144d6307f61a7b0b55fc27a8 [INFO] testing ShabbirHasan1/librecdj against master#ad85bc524b1ad696e42061ad8338d382dffbdbe5 for pr-146237 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FShabbirHasan1%2Flibrecdj" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-2-tc1/source/rust-toolchain.toml [INFO] started tweaking git repo https://github.com/ShabbirHasan1/librecdj [INFO] finished tweaking git repo https://github.com/ShabbirHasan1/librecdj [INFO] tweaked toml for git repo https://github.com/ShabbirHasan1/librecdj written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/ShabbirHasan1/librecdj on toolchain ad85bc524b1ad696e42061ad8338d382dffbdbe5 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/ShabbirHasan1/librecdj 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" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: /workspace/builds/worker-2-tc1/source/crates/tui-playground/Cargo.toml: unused manifest key: dependencies.waveform.version [INFO] [stderr] warning: /workspace/builds/worker-2-tc1/source/Cargo.toml: unused manifest key: profile.fastcomp.linker [INFO] [stderr] Updating crates.io index [INFO] [stderr] Updating git repository `https://github.com/HEnquist/rubato.git` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded bytemuck_derive v1.8.1 [INFO] [stderr] Downloaded cache-padded v1.3.0 [INFO] [stderr] Downloaded symphonia-metadata v0.5.4 [INFO] [stderr] Downloaded symphonia-core v0.5.4 [INFO] [stderr] Downloaded symphonia-format-riff v0.5.4 [INFO] [stderr] Downloaded jack-sys v0.5.1 [INFO] [stderr] Downloaded ecolor v0.29.1 [INFO] [stderr] Downloaded test-log v0.2.17 [INFO] [stderr] Downloaded annotate-snippets v0.6.1 [INFO] [stderr] Downloaded primal-check v0.3.4 [INFO] [stderr] Downloaded chic v1.2.2 [INFO] [stderr] Downloaded termion v1.5.6 [INFO] [stderr] Downloaded transpose v0.2.3 [INFO] [stderr] Downloaded egui-wgpu v0.31.0 [INFO] [stderr] Downloaded redox_termios v0.1.3 [INFO] [stderr] Downloaded glutin_glx_sys v0.6.1 [INFO] [stderr] Downloaded numtoa v0.1.0 [INFO] [stderr] Downloaded accesskit_atspi_common v0.10.1 [INFO] [stderr] Downloaded tui v0.19.0 [INFO] [stderr] Downloaded async-io v2.4.0 [INFO] [stderr] Downloaded atspi-common v0.6.0 [INFO] [stderr] Downloaded epaint v0.31.0 [INFO] [stderr] Downloaded glutin v0.32.2 [INFO] [stderr] Downloaded id3 v1.16.1 [INFO] [stderr] Downloaded winnow v0.7.0 [INFO] [stderr] Downloaded toml_edit v0.22.23 [INFO] [stderr] Downloaded quick-xml v0.30.0 [INFO] [stderr] Downloaded zbus v4.4.0 [INFO] [stderr] Downloaded wgpu-core v24.0.0 [INFO] [stderr] Downloaded wgpu v24.0.1 [INFO] [stderr] Downloaded egui v0.29.1 [INFO] [stderr] Downloaded rustfft v6.2.0 [INFO] [stderr] Downloaded eframe v0.31.0 [INFO] [stderr] Downloaded wgpu-hal v24.0.0 [INFO] [stderr] Downloaded crossterm v0.25.0 [INFO] [stderr] Downloaded better-panic v0.3.0 [INFO] [stderr] Downloaded egui v0.31.0 [INFO] [stderr] Downloaded lofty v0.16.1 [INFO] [stderr] Downloaded cc v1.2.11 [INFO] [stderr] Downloaded lofty v0.20.1 [INFO] [stderr] Downloaded wavegen v0.4.1 [INFO] [stderr] Downloaded owned_ttf_parser v0.25.0 [INFO] [stderr] Downloaded epaint v0.29.1 [INFO] [stderr] Downloaded zvariant v4.2.0 [INFO] [stderr] Downloaded winit v0.30.8 [INFO] [stderr] Downloaded pin-project v1.1.8 [INFO] [stderr] Downloaded polling v3.7.4 [INFO] [stderr] Downloaded epaint_default_fonts v0.31.0 [INFO] [stderr] Downloaded libkeynotation v0.1.2 [INFO] [stderr] Downloaded event-listener v5.4.0 [INFO] [stderr] Downloaded arboard v3.4.1 [INFO] [stderr] Downloaded xml-rs v0.8.25 [INFO] [stderr] Downloaded crossterm v0.26.1 [INFO] [stderr] Downloaded jack v0.11.4 [INFO] [stderr] Downloaded zbus_xml v4.0.0 [INFO] [stderr] Downloaded async-process v2.3.0 [INFO] [stderr] Downloaded zbus_names v3.0.0 [INFO] [stderr] Downloaded accesskit_windows v0.24.1 [INFO] [stderr] Downloaded accesskit_winit v0.23.1 [INFO] [stderr] Downloaded egui-winit v0.31.0 [INFO] [stderr] Downloaded egui_glow v0.31.0 [INFO] [stderr] Downloaded pin-project-internal v1.1.8 [INFO] [stderr] Downloaded wayland-cursor v0.31.8 [INFO] [stderr] Downloaded libloading v0.8.6 [INFO] [stderr] Downloaded emath v0.31.0 [INFO] [stderr] Downloaded emath v0.29.1 [INFO] [stderr] Downloaded crossbeam-channel v0.5.14 [INFO] [stderr] Downloaded symphonia-format-mkv v0.5.4 [INFO] [stderr] Downloaded atspi-connection v0.6.0 [INFO] [stderr] Downloaded zbus-lockstep v0.4.4 [INFO] [stderr] Downloaded atspi v0.22.0 [INFO] [stderr] Downloaded pollster v0.4.0 [INFO] [stderr] Downloaded ecolor v0.31.0 [INFO] [stderr] Downloaded ab_glyph v0.2.29 [INFO] [stderr] Downloaded symphonia-codec-adpcm v0.5.4 [INFO] [stderr] Downloaded symphonia-format-ogg v0.5.4 [INFO] [stderr] Downloaded accesskit_macos v0.18.1 [INFO] [stderr] Downloaded endi v1.1.0 [INFO] [stderr] Downloaded enumflags2_derive v0.7.11 [INFO] [stderr] Downloaded glutin_egl_sys v0.7.1 [INFO] [stderr] Downloaded accesskit v0.17.1 [INFO] [stderr] Downloaded symphonia-utils-xiph v0.5.4 [INFO] [stderr] Downloaded symphonia-codec-pcm v0.5.4 [INFO] [stderr] Downloaded type-map v0.5.0 [INFO] [stderr] Downloaded zbus-lockstep-macros v0.4.4 [INFO] [stderr] Downloaded atspi-proxies v0.6.0 [INFO] [stderr] Downloaded event-listener-strategy v0.5.3 [INFO] [stderr] Downloaded zbus_macros v4.4.0 [INFO] [stderr] Downloaded enumflags2 v0.7.11 [INFO] [stderr] Downloaded zvariant_derive v4.2.0 [INFO] [stderr] Downloaded accesskit_unix v0.13.1 [INFO] [stderr] Downloaded accesskit_consumer v0.26.0 [INFO] [stderr] Downloaded assert_no_alloc v1.1.2 [INFO] [stderr] Downloaded symphonia-bundle-mp3 v0.5.4 [INFO] [stderr] Downloaded symphonia-codec-vorbis v0.5.4 [INFO] [stderr] Downloaded zvariant_utils v2.1.0 [INFO] [stderr] Downloaded egui_extras v0.31.0 [INFO] [stderr] Downloaded data-encoding v2.7.0 [INFO] [stderr] Downloaded lofty_attr v0.11.0 [INFO] [stderr] Downloaded ogg_pager v0.5.0 [INFO] [stderr] Downloaded extended v0.1.0 [INFO] [stderr] Downloaded egui_flex v0.1.1 [INFO] [stderr] Downloaded lofty_attr v0.9.0 [INFO] [stderr] Downloaded ogg_pager v0.6.1 [INFO] [stderr] Downloaded strength_reduce v0.2.4 [INFO] [stderr] Downloaded test-log-macros v0.2.17 [INFO] [stderr] Downloaded symphonia-bundle-flac v0.5.4 [INFO] [stderr] Downloaded realfft v3.4.0 [INFO] [stderr] Downloaded path-clean v1.0.1 [INFO] [stderr] Downloaded tempfile v3.16.0 [INFO] [stderr] Downloaded symphonia v0.5.4 [INFO] [stderr] Downloaded rtrb v0.2.3 [INFO] [stderr] Downloaded biquad v0.4.2 [INFO] [stderr] Downloaded tui-logger v0.9.6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 5faff2ea4f4726721ec8632231f970326d9a87c081ea83d4df2a376f34efaf4c [INFO] running `Command { std: "docker" "start" "-a" "5faff2ea4f4726721ec8632231f970326d9a87c081ea83d4df2a376f34efaf4c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "5faff2ea4f4726721ec8632231f970326d9a87c081ea83d4df2a376f34efaf4c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5faff2ea4f4726721ec8632231f970326d9a87c081ea83d4df2a376f34efaf4c", kill_on_drop: false }` [INFO] [stdout] 5faff2ea4f4726721ec8632231f970326d9a87c081ea83d4df2a376f34efaf4c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f834383f661fb88ea30911f5f007108261e7e4eb175c10b73455f5bf2c7f664d [INFO] running `Command { std: "docker" "start" "-a" "f834383f661fb88ea30911f5f007108261e7e4eb175c10b73455f5bf2c7f664d", kill_on_drop: false }` [INFO] [stderr] warning: /opt/rustwide/workdir/Cargo.toml: unused manifest key: profile.fastcomp.linker [INFO] [stderr] warning: /opt/rustwide/workdir/crates/tui-playground/Cargo.toml: unused manifest key: dependencies.waveform.version [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling proc-macro2 v1.0.93 [INFO] [stderr] Compiling unicode-ident v1.0.16 [INFO] [stderr] Compiling libc v0.2.169 [INFO] [stderr] Compiling log v0.4.25 [INFO] [stderr] Compiling lazy_static v1.5.0 [INFO] [stderr] Compiling bitflags v1.3.2 [INFO] [stderr] Compiling byteorder v1.5.0 [INFO] [stderr] Compiling once_cell v1.20.2 [INFO] [stderr] Compiling bytemuck v1.21.0 [INFO] [stderr] Compiling arrayvec v0.7.6 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling encoding_rs v0.8.35 [INFO] [stderr] Compiling symphonia-core v0.5.4 [INFO] [stderr] Compiling lock_api v0.4.12 [INFO] [stderr] Compiling smallvec v1.13.2 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Compiling adler2 v2.0.0 [INFO] [stderr] Compiling serde v1.0.217 [INFO] [stderr] Compiling scopeguard v1.2.0 [INFO] [stderr] Compiling miniz_oxide v0.8.3 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling signal-hook v0.3.17 [INFO] [stderr] Compiling tracing-core v0.1.33 [INFO] [stderr] Compiling quote v1.0.38 [INFO] [stderr] Compiling syn v2.0.98 [INFO] [stderr] Compiling parking_lot v0.12.3 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling symphonia-metadata v0.5.4 [INFO] [stderr] Compiling symphonia-utils-xiph v0.5.4 [INFO] [stderr] Compiling signal-hook-registry v1.4.2 [INFO] [stderr] Compiling crc32fast v1.4.2 [INFO] [stderr] Compiling flate2 v1.0.35 [INFO] [stderr] Compiling mio v0.8.11 [INFO] [stderr] Compiling rustfft v6.2.0 [INFO] [stderr] Compiling strength_reduce v0.2.4 [INFO] [stderr] Compiling pin-project-lite v0.2.16 [INFO] [stderr] Compiling pkg-config v0.3.31 [INFO] [stderr] Compiling transpose v0.2.3 [INFO] [stderr] Compiling signal-hook-mio v0.2.4 [INFO] [stderr] Compiling primal-check v0.3.4 [INFO] [stderr] Compiling num-complex v0.4.6 [INFO] [stderr] Compiling ahash v0.8.11 [INFO] [stderr] Compiling libm v0.1.4 [INFO] [stderr] Compiling object v0.36.7 [INFO] [stderr] Compiling jack-sys v0.5.1 [INFO] [stderr] Compiling regex-syntax v0.6.29 [INFO] [stderr] Compiling ttf-parser v0.25.1 [INFO] [stderr] Compiling regex-syntax v0.8.5 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling getrandom v0.2.15 [INFO] [stderr] Compiling ogg_pager v0.6.1 [INFO] [stderr] Compiling gimli v0.31.1 [INFO] [stderr] Compiling iana-time-zone v0.1.61 [INFO] [stderr] Compiling zerocopy-derive v0.7.35 [INFO] [stderr] Compiling serde_derive v1.0.217 [INFO] [stderr] Compiling zerocopy v0.7.35 [INFO] [stderr] Compiling tracing-attributes v0.1.28 [INFO] [stderr] Compiling owned_ttf_parser v0.25.0 [INFO] [stderr] Compiling tracing v0.1.41 [INFO] [stderr] Compiling regex-automata v0.1.10 [INFO] [stderr] Compiling lofty_attr v0.11.0 [INFO] [stderr] Compiling regex-automata v0.4.9 [INFO] [stderr] Compiling extended v0.1.0 [INFO] [stderr] Compiling emath v0.29.1 [INFO] [stderr] Compiling ab_glyph_rasterizer v0.1.8 [INFO] [stderr] Compiling libm v0.2.11 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling rustix v0.38.44 [INFO] [stderr] Compiling memchr v2.7.4 [INFO] [stderr] Compiling overload v0.1.1 [INFO] [stderr] Compiling data-encoding v2.7.0 [INFO] [stderr] Compiling getrandom v0.3.1 [INFO] [stderr] Compiling regex v1.11.1 [INFO] [stderr] Compiling bitflags v2.8.0 [INFO] [stderr] Compiling lofty v0.20.1 [INFO] [stderr] Compiling nu-ansi-term v0.46.0 [INFO] [stderr] Compiling ecolor v0.29.1 [INFO] [stderr] Compiling ab_glyph v0.2.29 [INFO] [stderr] Compiling symphonia-format-riff v0.5.4 [INFO] [stderr] Compiling matchers v0.1.0 [INFO] [stderr] Compiling realfft v3.4.0 [INFO] [stderr] Compiling addr2line v0.24.2 [INFO] [stderr] Compiling ppv-lite86 v0.2.20 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling chrono v0.4.39 [INFO] [stderr] Compiling crossbeam-deque v0.8.6 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling symphonia-bundle-flac v0.5.4 [INFO] [stderr] Compiling symphonia-format-mkv v0.5.4 [INFO] [stderr] Compiling symphonia-codec-vorbis v0.5.4 [INFO] [stderr] Compiling symphonia-format-ogg v0.5.4 [INFO] [stderr] Compiling symphonia-bundle-mp3 v0.5.4 [INFO] [stderr] Compiling symphonia-codec-pcm v0.5.4 [INFO] [stderr] Compiling symphonia-codec-adpcm v0.5.4 [INFO] [stderr] Compiling crossbeam-queue v0.3.12 [INFO] [stderr] Compiling crossbeam-channel v0.5.14 [INFO] [stderr] Compiling tracing-log v0.2.0 [INFO] [stderr] Compiling thread_local v1.1.8 [INFO] [stderr] Compiling sharded-slab v0.1.7 [INFO] [stderr] Compiling libloading v0.7.4 [INFO] [stderr] Compiling rustc-demangle v0.1.24 [INFO] [stderr] Compiling base64 v0.21.7 [INFO] [stderr] Compiling numtoa v0.1.0 [INFO] [stderr] Compiling option-ext v0.2.0 [INFO] [stderr] Compiling cache-padded v1.3.0 [INFO] [stderr] Compiling linux-raw-sys v0.4.15 [INFO] [stderr] Compiling nohash-hasher v0.2.0 [INFO] [stderr] Compiling jack v0.11.4 [INFO] [stderr] Compiling libkeynotation v0.1.2 [INFO] [stderr] Compiling libmetadata v0.4.0 (/opt/rustwide/workdir/crates/libmetadata) [INFO] [stderr] Compiling epaint v0.29.1 [INFO] [stderr] Compiling tracing-subscriber v0.3.19 [INFO] [stderr] Compiling rtrb v0.2.3 [INFO] [stderr] Compiling backtrace v0.3.74 [INFO] [stderr] Compiling dirs-sys v0.4.1 [INFO] [stderr] Compiling termion v1.5.6 [INFO] [stderr] Compiling crossbeam v0.8.4 [INFO] [stderr] Compiling symphonia v0.5.4 [INFO] [stderr] Compiling biquad v0.4.2 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rubato v0.16.0 (https://github.com/HEnquist/rubato.git?branch=resize#8f88e886) [INFO] [stderr] Compiling lofty_attr v0.9.0 [INFO] [stderr] Compiling crossterm v0.25.0 [INFO] [stderr] Compiling console v0.15.10 [INFO] [stderr] Compiling ogg_pager v0.5.0 [INFO] [stderr] Compiling annotate-snippets v0.6.1 [INFO] [stderr] Compiling cassowary v0.3.0 [INFO] [stderr] Compiling fastrand v2.3.0 [INFO] [stderr] Compiling unicode-width v0.1.14 [INFO] [stderr] Compiling unicode-segmentation v1.12.0 [INFO] [stderr] Compiling tempfile v3.16.0 [INFO] [stderr] Compiling tui v0.19.0 [INFO] [stderr] Compiling chic v1.2.2 [INFO] [stderr] Compiling better-panic v0.3.0 [INFO] [stderr] Compiling lofty v0.16.1 [INFO] [stderr] Compiling waveform v0.4.0 (/opt/rustwide/workdir/crates/waveform) [INFO] [stderr] Compiling libplayer v0.4.0 (/opt/rustwide/workdir/crates/libplayer) [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stdout] warning: unused imports: `MAX_TEMPO_RATIO` and `MIN_TEMPO_RATIO` [INFO] [stdout] --> crates/libplayer/src/player.rs:10:28 [INFO] [stdout] | [INFO] [stdout] 10 | resampler::{Resampler, MAX_TEMPO_RATIO, MIN_TEMPO_RATIO}, [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> crates/libplayer/src/player.rs:193:10 [INFO] [stdout] | [INFO] [stdout] 193 | }; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `end_pos` is never read [INFO] [stdout] --> crates/libplayer/src/player.rs:183:17 [INFO] [stdout] | [INFO] [stdout] 183 | let mut end_pos = frame_size; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `wrote_already` is never read [INFO] [stdout] --> crates/libplayer/src/player.rs:191:17 [INFO] [stdout] | [INFO] [stdout] 191 | wrote_already = true; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 207 | write_audio_samples!(); [INFO] [stdout] | ---------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: this warning originates in the macro `write_audio_samples` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> crates/libplayer/src/resampler.rs:98:33 [INFO] [stdout] | [INFO] [stdout] 98 | pub fn set_tempo(&mut self, mut tempo: f64, ramp: bool) -> ResamplerResult { [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] [stderr] Compiling egui v0.29.1 [INFO] [stdout] warning: enum `TimeQueueError` is never used [INFO] [stdout] --> crates/libplayer/src/time_queue.rs:6:10 [INFO] [stdout] | [INFO] [stdout] 6 | pub enum TimeQueueError { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Result` is never used [INFO] [stdout] --> crates/libplayer/src/time_queue.rs:12:10 [INFO] [stdout] | [INFO] [stdout] 12 | pub type Result = std::result::Result; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `TimeQueueElement` is never used [INFO] [stdout] --> crates/libplayer/src/time_queue.rs:15:10 [INFO] [stdout] | [INFO] [stdout] 15 | pub enum TimeQueueElement [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from_item` and `is_zone` are never used [INFO] [stdout] --> crates/libplayer/src/time_queue.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 23 | / impl TimeQueueElement [INFO] [stdout] 24 | | where [INFO] [stdout] 25 | | T: Copy + Sized, [INFO] [stdout] | |____________________- associated items in this implementation [INFO] [stdout] 26 | { [INFO] [stdout] 27 | pub fn from_item(item: T) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 30 | pub fn is_zone(&self) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TimeQueue` is never constructed [INFO] [stdout] --> crates/libplayer/src/time_queue.rs:47:8 [INFO] [stdout] | [INFO] [stdout] 47 | struct TimeQueue [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> crates/libplayer/src/time_queue.rs:58:12 [INFO] [stdout] | [INFO] [stdout] 54 | / impl TimeQueue [INFO] [stdout] 55 | | where [INFO] [stdout] 56 | | T: Copy + Sized, [INFO] [stdout] | |____________________- associated items in this implementation [INFO] [stdout] 57 | { [INFO] [stdout] 58 | pub fn new(size: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 67 | fn insert_new_zone(&mut self, insert_index: usize, time: u32, item: T) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | fn append_to_zone(&mut self, zone_index: usize, item: T) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | fn find_closest_zone(&self, time: u32) -> Option<(usize, Zone)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 139 | pub fn insert(&mut self, time: u32, item: T) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 160 | pub fn get_zone(&self, zone_index: usize) -> Option { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 170 | pub fn take_item(&self, index: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 178 | pub fn reset(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 184 | pub fn inner(&self) -> &RefCell>> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 191 | pub fn iter_slices(&self, max_time: u32) -> TimeQueueIterator { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Slice` is never constructed [INFO] [stdout] --> crates/libplayer/src/time_queue.rs:200:12 [INFO] [stdout] | [INFO] [stdout] 200 | pub struct Slice<'a, T> [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `time_start`, `time_end`, `time_span`, and `item_range` are never used [INFO] [stdout] --> crates/libplayer/src/time_queue.rs:217:12 [INFO] [stdout] | [INFO] [stdout] 212 | / impl<'a, T> Slice<'a, T> [INFO] [stdout] 213 | | where [INFO] [stdout] 214 | | T: Copy + Sized, [INFO] [stdout] | |____________________- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 217 | pub fn time_start(&self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 222 | pub fn time_end(&self) -> u32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 227 | pub fn time_span(&self) -> (u32, u32) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 232 | pub fn item_range(&self) -> Range { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TimeQueueIterator` is never constructed [INFO] [stdout] --> crates/libplayer/src/time_queue.rs:253:12 [INFO] [stdout] | [INFO] [stdout] 253 | pub struct TimeQueueIterator<'a, T> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ZoneIterItem` is never constructed [INFO] [stdout] --> crates/libplayer/src/time_queue.rs:294:12 [INFO] [stdout] | [INFO] [stdout] 294 | pub struct ZoneIterItem<'a, T> [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Zone` is never constructed [INFO] [stdout] --> crates/libplayer/src/time_queue.rs:302:12 [INFO] [stdout] | [INFO] [stdout] 302 | pub struct Zone { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> crates/libplayer/src/time_queue.rs:308:12 [INFO] [stdout] | [INFO] [stdout] 307 | impl Zone { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 308 | pub fn new(time: u32, len_items: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> crates/libplayer/src/time_queue.rs:191:24 [INFO] [stdout] | [INFO] [stdout] 191 | pub fn iter_slices(&self, max_time: u32) -> TimeQueueIterator { [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] 191 | pub fn iter_slices(&self, max_time: u32) -> TimeQueueIterator<'_, T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling dirs v5.0.1 [INFO] [stderr] Compiling ron v0.8.1 [INFO] [stderr] Compiling id3 v1.16.1 [INFO] [stderr] Compiling num-derive v0.4.2 [INFO] [stderr] Compiling crossterm v0.26.1 [INFO] [stderr] Compiling fxhash v0.2.1 [INFO] [stderr] Compiling path-clean v1.0.1 [INFO] [stderr] Compiling assert_no_alloc v1.1.2 [INFO] [stderr] Compiling libbackend v0.4.0 (/opt/rustwide/workdir/crates/libbackend) [INFO] [stdout] warning: unused import: `tracing::Instrument` [INFO] [stdout] --> crates/libbackend/src/backend.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use tracing::Instrument; [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: `crossterm::event::KeyCode` [INFO] [stdout] --> crates/libbackend/src/keyboardbindings/mod.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crossterm::event::KeyCode; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde::Serialize` [INFO] [stdout] --> crates/libbackend/src/library/library.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use serde::Serialize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `LCDJKeyEventKind` [INFO] [stdout] --> crates/libbackend/src/state/popups/add_to_playlist.rs:4:57 [INFO] [stdout] | [INFO] [stdout] 4 | keyboardbindings::{LCDJKeyCode, LCDJKeyCombination, LCDJKeyEventKind}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `LCDJKeyEventKind` [INFO] [stdout] --> crates/libbackend/src/state/popups/jump_to_secion.rs:2:57 [INFO] [stdout] | [INFO] [stdout] 2 | keyboardbindings::{LCDJKeyCode, LCDJKeyCombination, LCDJKeyEventKind}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PathBuf`, `cell::RefCell`, and `collections::HashMap` [INFO] [stdout] --> crates/libbackend/src/state/popups/mod.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | cell::RefCell, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 10 | collections::HashMap, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 11 | env, [INFO] [stdout] 12 | path::{Path, PathBuf}, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `MetadataKey` and `MetadataStateItem` [INFO] [stdout] --> crates/libbackend/src/state/popups/mod.rs:18:40 [INFO] [stdout] | [INFO] [stdout] 18 | use edit_metadata::{EditMetadataState, MetadataKey, MetadataStateItem}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `libmetadata::read_metadata` [INFO] [stdout] --> crates/libbackend/src/state/popups/mod.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | use libmetadata::read_metadata; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `env`, `path::Path`, and `time::SystemTime` [INFO] [stdout] --> crates/libbackend/src/state/mod.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | use std::{env, path::Path, time::SystemTime}; [INFO] [stdout] | ^^^ ^^^^^^^^^^ ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `LoopKind` [INFO] [stdout] --> crates/libbackend/src/state/mod.rs:7:31 [INFO] [stdout] | [INFO] [stdout] 7 | use libplayer::{BeatPosition, LoopKind, PlayerState}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling tui-logger v0.9.6 [INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_SET_FLUSH_ZERO_MODE`: see `_mm_setcsr` documentation - use inline assembly instead [INFO] [stdout] --> crates/libbackend/src/audio_engine.rs:8:24 [INFO] [stdout] | [INFO] [stdout] 8 | use std::arch::x86_64::_MM_SET_FLUSH_ZERO_MODE; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_SET_FLUSH_ZERO_MODE`: see `_mm_setcsr` documentation - use inline assembly instead [INFO] [stdout] --> crates/libbackend/src/audio_engine.rs:206:13 [INFO] [stdout] | [INFO] [stdout] 206 | _MM_SET_FLUSH_ZERO_MODE(_MM_FLUSH_ZERO_ON); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sample_rate` [INFO] [stdout] --> crates/libbackend/src/backend.rs:213:17 [INFO] [stdout] | [INFO] [stdout] 213 | let sample_rate = deck.player_state.initial_sample_rate(); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sample_rate` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frame_count` [INFO] [stdout] --> crates/libbackend/src/jack.rs:70:13 [INFO] [stdout] | [INFO] [stdout] 70 | let frame_count = ps.last_frame_time(); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_frame_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sample_rate` [INFO] [stdout] --> crates/libbackend/src/jogwheel.rs:80:31 [INFO] [stdout] | [INFO] [stdout] 80 | pub fn process(&mut self, sample_rate: f32, frame_size: usize) -> Option<(bool, f32)> { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sample_rate` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frame_size` [INFO] [stdout] --> crates/libbackend/src/jogwheel.rs:80:49 [INFO] [stdout] | [INFO] [stdout] 80 | pub fn process(&mut self, sample_rate: f32, frame_size: usize) -> Option<(bool, f32)> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 80 | pub fn process(&mut self, sample_rate: f32, _frame_size: usize) -> Option<(bool, f32)> { [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `MAX_MIDI` [INFO] [stdout] | [INFO] [stdout] 80 - pub fn process(&mut self, sample_rate: f32, frame_size: usize) -> Option<(bool, f32)> { [INFO] [stdout] 80 + pub fn process(&mut self, sample_rate: f32, midimapping::midi::MAX_MIDI: usize) -> Option<(bool, f32)> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f` [INFO] [stdout] --> crates/libbackend/src/keyboardbindings/key_combination.rs:45:19 [INFO] [stdout] | [INFO] [stdout] 45 | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `end` [INFO] [stdout] --> crates/libbackend/src/keyboardbindings/mod.rs:148:21 [INFO] [stdout] | [INFO] [stdout] 148 | let end = ron_error.position.col; [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 148 | let _end = ron_error.position.col; [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `MAX_MIDI` [INFO] [stdout] | [INFO] [stdout] 148 - let end = ron_error.position.col; [INFO] [stdout] 148 + let midimapping::midi::MAX_MIDI = ron_error.position.col; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `backend` [INFO] [stdout] --> crates/libbackend/src/state/popups/mod.rs:141:34 [INFO] [stdout] | [INFO] [stdout] 141 | fn on_interaction(&mut self, backend: &mut Backend, key: &LCDJKeyEvent) -> PopupResult { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_backend` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key` [INFO] [stdout] --> crates/libbackend/src/state/popups/mod.rs:141:57 [INFO] [stdout] | [INFO] [stdout] 141 | fn on_interaction(&mut self, backend: &mut Backend, key: &LCDJKeyEvent) -> PopupResult { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `keyboardbindings::Deck` is more private than the item `KeyboardMappingCommand::CloneDeck::0` [INFO] [stdout] --> crates/libbackend/src/keyboardbindings/mod.rs:204:15 [INFO] [stdout] | [INFO] [stdout] 204 | CloneDeck(Deck, Deck), [INFO] [stdout] | ^^^^ field `KeyboardMappingCommand::CloneDeck::0` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `keyboardbindings::Deck` is only usable at visibility `pub(crate)` [INFO] [stdout] --> crates/libbackend/src/keyboardbindings/mod.rs:209:1 [INFO] [stdout] | [INFO] [stdout] 209 | pub(crate) enum Deck { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `keyboardbindings::Deck` is more private than the item `KeyboardMappingCommand::CloneDeck::1` [INFO] [stdout] --> crates/libbackend/src/keyboardbindings/mod.rs:204:21 [INFO] [stdout] | [INFO] [stdout] 204 | CloneDeck(Deck, Deck), [INFO] [stdout] | ^^^^ field `KeyboardMappingCommand::CloneDeck::1` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `keyboardbindings::Deck` is only usable at visibility `pub(crate)` [INFO] [stdout] --> crates/libbackend/src/keyboardbindings/mod.rs:209:1 [INFO] [stdout] | [INFO] [stdout] 209 | pub(crate) enum Deck { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `keyboardbindings::Deck` is more private than the item `Action::Deck::0` [INFO] [stdout] --> crates/libbackend/src/keyboardbindings/action.rs:26:10 [INFO] [stdout] | [INFO] [stdout] 26 | Deck(Deck, DeckAction), [INFO] [stdout] | ^^^^ field `Action::Deck::0` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `keyboardbindings::Deck` is only usable at visibility `pub(crate)` [INFO] [stdout] --> crates/libbackend/src/keyboardbindings/mod.rs:209:1 [INFO] [stdout] | [INFO] [stdout] 209 | pub(crate) enum Deck { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `keyboardbindings::Deck` is more private than the item `DeckAction::CloneTo::0` [INFO] [stdout] --> crates/libbackend/src/keyboardbindings/action.rs:74:13 [INFO] [stdout] | [INFO] [stdout] 74 | CloneTo(Deck), [INFO] [stdout] | ^^^^ field `DeckAction::CloneTo::0` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `keyboardbindings::Deck` is only usable at visibility `pub(crate)` [INFO] [stdout] --> crates/libbackend/src/keyboardbindings/mod.rs:209:1 [INFO] [stdout] | [INFO] [stdout] 209 | pub(crate) enum Deck { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `keyboardbindings::Deck` is more private than the item `DeckAction::into_expr` [INFO] [stdout] --> crates/libbackend/src/keyboardbindings/action.rs:78:5 [INFO] [stdout] | [INFO] [stdout] 78 | pub fn into_expr(self, deck: Deck) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `DeckAction::into_expr` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `keyboardbindings::Deck` is only usable at visibility `pub(crate)` [INFO] [stdout] --> crates/libbackend/src/keyboardbindings/mod.rs:209:1 [INFO] [stdout] | [INFO] [stdout] 209 | pub(crate) enum Deck { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `rpm` and `dx` are never read [INFO] [stdout] --> crates/libbackend/src/jogwheel.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 25 | pub struct Jogwheel { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 26 | intervals_per_rev: i32, [INFO] [stdout] 27 | rpm: f32, [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 30 | dx: f32, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `RelativeOrAbsolute` is never used [INFO] [stdout] --> crates/libbackend/src/keyboardbindings/action.rs:57:10 [INFO] [stdout] | [INFO] [stdout] 57 | pub enum RelativeOrAbsolute { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `last_db_led_update` and `max_db` are never read [INFO] [stdout] --> crates/libbackend/src/midimapping/mappings/denon_sc2000.rs:64:5 [INFO] [stdout] | [INFO] [stdout] 63 | pub struct DenonSC2000 { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 64 | last_db_led_update: Instant, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 65 | max_db: [f32; 11], [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LED_BLINK` is never used [INFO] [stdout] --> crates/libbackend/src/midimapping/mappings/denon_sc2000.rs:432:14 [INFO] [stdout] | [INFO] [stdout] 432 | const LED_BLINK :u8= 0x4C; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `led_blink_midi_note` is never used [INFO] [stdout] --> crates/libbackend/src/midimapping/mappings/denon_sc2000.rs:440:12 [INFO] [stdout] | [INFO] [stdout] 440 | fn led_blink_midi_note(expr: bool) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling egui_flex v0.1.1 [INFO] [stderr] Compiling librecdj v0.4.0 (/opt/rustwide/workdir/crates/librecdj) [INFO] [stdout] warning: unused import: `Playlist` [INFO] [stdout] --> crates/librecdj/src/ui/popups/main_menu.rs:1:40 [INFO] [stdout] | [INFO] [stdout] 1 | use libbackend::state::{MainMenuState, Playlist}; [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 variable: `real_area_y` [INFO] [stdout] --> crates/librecdj/src/ui/popups/main_menu.rs:23:13 [INFO] [stdout] | [INFO] [stdout] 23 | let real_area_y = area.height / 2; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_real_area_y` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `edit_metadata_state` [INFO] [stdout] --> crates/librecdj/src/ui/screens/main.rs:84:42 [INFO] [stdout] | [INFO] [stdout] 84 | PopupState::EditMetadata(edit_metadata_state) => todo!(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_edit_metadata_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `jack_backend` is never read [INFO] [stdout] --> crates/librecdj/src/app.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct App { [INFO] [stdout] | --- field in this struct [INFO] [stdout] 23 | pub backend: Backend, [INFO] [stdout] 24 | pub jack_backend: JackBackend, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `state` is never read [INFO] [stdout] --> crates/librecdj/src/ui/popups/main_menu.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct MainMenuPopup<'a> { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] 11 | pub state: &'a MainMenuState, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [optimized + debuginfo] target(s) in 9m 03s [INFO] running `Command { std: "docker" "inspect" "f834383f661fb88ea30911f5f007108261e7e4eb175c10b73455f5bf2c7f664d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f834383f661fb88ea30911f5f007108261e7e4eb175c10b73455f5bf2c7f664d", kill_on_drop: false }` [INFO] [stdout] f834383f661fb88ea30911f5f007108261e7e4eb175c10b73455f5bf2c7f664d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 560e5e06e967feba454be0107df7a15bede8c5c375608a4a8cf4a80ee014e54e [INFO] running `Command { std: "docker" "start" "-a" "560e5e06e967feba454be0107df7a15bede8c5c375608a4a8cf4a80ee014e54e", kill_on_drop: false }` [INFO] [stderr] warning: /opt/rustwide/workdir/crates/tui-playground/Cargo.toml: unused manifest key: dependencies.waveform.version [INFO] [stderr] warning: /opt/rustwide/workdir/Cargo.toml: unused manifest key: profile.fastcomp.linker [INFO] [stdout] warning: unused imports: `MAX_TEMPO_RATIO` and `MIN_TEMPO_RATIO` [INFO] [stdout] --> crates/libplayer/src/player.rs:10:28 [INFO] [stdout] | [INFO] [stdout] 10 | resampler::{Resampler, MAX_TEMPO_RATIO, MIN_TEMPO_RATIO}, [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> crates/libplayer/src/player.rs:193:10 [INFO] [stdout] | [INFO] [stdout] 193 | }; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `end_pos` is never read [INFO] [stdout] --> crates/libplayer/src/player.rs:183:17 [INFO] [stdout] | [INFO] [stdout] 183 | let mut end_pos = frame_size; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `wrote_already` is never read [INFO] [stdout] --> crates/libplayer/src/player.rs:191:17 [INFO] [stdout] | [INFO] [stdout] 191 | wrote_already = true; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 207 | write_audio_samples!(); [INFO] [stdout] | ---------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: this warning originates in the macro `write_audio_samples` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> crates/libplayer/src/resampler.rs:98:33 [INFO] [stdout] | [INFO] [stdout] 98 | pub fn set_tempo(&mut self, mut tempo: f64, ramp: bool) -> ResamplerResult { [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: enum `TimeQueueError` is never used [INFO] [stdout] --> crates/libplayer/src/time_queue.rs:6:10 [INFO] [stdout] | [INFO] [stdout] 6 | pub enum TimeQueueError { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Result` is never used [INFO] [stdout] --> crates/libplayer/src/time_queue.rs:12:10 [INFO] [stdout] | [INFO] [stdout] 12 | pub type Result = std::result::Result; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `TimeQueueElement` is never used [INFO] [stdout] --> crates/libplayer/src/time_queue.rs:15:10 [INFO] [stdout] | [INFO] [stdout] 15 | pub enum TimeQueueElement [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from_item` and `is_zone` are never used [INFO] [stdout] --> crates/libplayer/src/time_queue.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 23 | / impl TimeQueueElement [INFO] [stdout] 24 | | where [INFO] [stdout] 25 | | T: Copy + Sized, [INFO] [stdout] | |____________________- associated items in this implementation [INFO] [stdout] 26 | { [INFO] [stdout] 27 | pub fn from_item(item: T) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 30 | pub fn is_zone(&self) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TimeQueue` is never constructed [INFO] [stdout] --> crates/libplayer/src/time_queue.rs:47:8 [INFO] [stdout] | [INFO] [stdout] 47 | struct TimeQueue [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> crates/libplayer/src/time_queue.rs:58:12 [INFO] [stdout] | [INFO] [stdout] 54 | / impl TimeQueue [INFO] [stdout] 55 | | where [INFO] [stdout] 56 | | T: Copy + Sized, [INFO] [stdout] | |____________________- associated items in this implementation [INFO] [stdout] 57 | { [INFO] [stdout] 58 | pub fn new(size: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 67 | fn insert_new_zone(&mut self, insert_index: usize, time: u32, item: T) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | fn append_to_zone(&mut self, zone_index: usize, item: T) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | fn find_closest_zone(&self, time: u32) -> Option<(usize, Zone)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 139 | pub fn insert(&mut self, time: u32, item: T) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 160 | pub fn get_zone(&self, zone_index: usize) -> Option { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 170 | pub fn take_item(&self, index: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 178 | pub fn reset(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 184 | pub fn inner(&self) -> &RefCell>> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 191 | pub fn iter_slices(&self, max_time: u32) -> TimeQueueIterator { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Slice` is never constructed [INFO] [stdout] --> crates/libplayer/src/time_queue.rs:200:12 [INFO] [stdout] | [INFO] [stdout] 200 | pub struct Slice<'a, T> [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `time_start`, `time_end`, `time_span`, and `item_range` are never used [INFO] [stdout] --> crates/libplayer/src/time_queue.rs:217:12 [INFO] [stdout] | [INFO] [stdout] 212 | / impl<'a, T> Slice<'a, T> [INFO] [stdout] 213 | | where [INFO] [stdout] 214 | | T: Copy + Sized, [INFO] [stdout] | |____________________- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 217 | pub fn time_start(&self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 222 | pub fn time_end(&self) -> u32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 227 | pub fn time_span(&self) -> (u32, u32) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 232 | pub fn item_range(&self) -> Range { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TimeQueueIterator` is never constructed [INFO] [stdout] --> crates/libplayer/src/time_queue.rs:253:12 [INFO] [stdout] | [INFO] [stdout] 253 | pub struct TimeQueueIterator<'a, T> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ZoneIterItem` is never constructed [INFO] [stdout] --> crates/libplayer/src/time_queue.rs:294:12 [INFO] [stdout] | [INFO] [stdout] 294 | pub struct ZoneIterItem<'a, T> [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Zone` is never constructed [INFO] [stdout] --> crates/libplayer/src/time_queue.rs:302:12 [INFO] [stdout] | [INFO] [stdout] 302 | pub struct Zone { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> crates/libplayer/src/time_queue.rs:308:12 [INFO] [stdout] | [INFO] [stdout] 307 | impl Zone { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 308 | pub fn new(time: u32, len_items: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> crates/libplayer/src/time_queue.rs:191:24 [INFO] [stdout] | [INFO] [stdout] 191 | pub fn iter_slices(&self, max_time: u32) -> TimeQueueIterator { [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] 191 | pub fn iter_slices(&self, max_time: u32) -> TimeQueueIterator<'_, T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling librecdj v0.4.0 (/opt/rustwide/workdir/crates/librecdj) [INFO] [stdout] warning: unused import: `tracing::Instrument` [INFO] [stdout] --> crates/libbackend/src/backend.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use tracing::Instrument; [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: `crossterm::event::KeyCode` [INFO] [stdout] --> crates/libbackend/src/keyboardbindings/mod.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crossterm::event::KeyCode; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde::Serialize` [INFO] [stdout] --> crates/libbackend/src/library/library.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use serde::Serialize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `LCDJKeyEventKind` [INFO] [stdout] --> crates/libbackend/src/state/popups/add_to_playlist.rs:4:57 [INFO] [stdout] | [INFO] [stdout] 4 | keyboardbindings::{LCDJKeyCode, LCDJKeyCombination, LCDJKeyEventKind}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `LCDJKeyEventKind` [INFO] [stdout] --> crates/libbackend/src/state/popups/jump_to_secion.rs:2:57 [INFO] [stdout] | [INFO] [stdout] 2 | keyboardbindings::{LCDJKeyCode, LCDJKeyCombination, LCDJKeyEventKind}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PathBuf`, `cell::RefCell`, and `collections::HashMap` [INFO] [stdout] --> crates/libbackend/src/state/popups/mod.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | cell::RefCell, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 10 | collections::HashMap, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 11 | env, [INFO] [stdout] 12 | path::{Path, PathBuf}, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `MetadataKey` and `MetadataStateItem` [INFO] [stdout] --> crates/libbackend/src/state/popups/mod.rs:18:40 [INFO] [stdout] | [INFO] [stdout] 18 | use edit_metadata::{EditMetadataState, MetadataKey, MetadataStateItem}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `libmetadata::read_metadata` [INFO] [stdout] --> crates/libbackend/src/state/popups/mod.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | use libmetadata::read_metadata; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `env`, `path::Path`, and `time::SystemTime` [INFO] [stdout] --> crates/libbackend/src/state/mod.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | use std::{env, path::Path, time::SystemTime}; [INFO] [stdout] | ^^^ ^^^^^^^^^^ ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `LoopKind` [INFO] [stdout] --> crates/libbackend/src/state/mod.rs:7:31 [INFO] [stdout] | [INFO] [stdout] 7 | use libplayer::{BeatPosition, LoopKind, PlayerState}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_SET_FLUSH_ZERO_MODE`: see `_mm_setcsr` documentation - use inline assembly instead [INFO] [stdout] --> crates/libbackend/src/audio_engine.rs:8:24 [INFO] [stdout] | [INFO] [stdout] 8 | use std::arch::x86_64::_MM_SET_FLUSH_ZERO_MODE; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::arch::x86_64::_MM_SET_FLUSH_ZERO_MODE`: see `_mm_setcsr` documentation - use inline assembly instead [INFO] [stdout] --> crates/libbackend/src/audio_engine.rs:206:13 [INFO] [stdout] | [INFO] [stdout] 206 | _MM_SET_FLUSH_ZERO_MODE(_MM_FLUSH_ZERO_ON); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sample_rate` [INFO] [stdout] --> crates/libbackend/src/backend.rs:213:17 [INFO] [stdout] | [INFO] [stdout] 213 | let sample_rate = deck.player_state.initial_sample_rate(); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sample_rate` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frame_count` [INFO] [stdout] --> crates/libbackend/src/jack.rs:70:13 [INFO] [stdout] | [INFO] [stdout] 70 | let frame_count = ps.last_frame_time(); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_frame_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sample_rate` [INFO] [stdout] --> crates/libbackend/src/jogwheel.rs:80:31 [INFO] [stdout] | [INFO] [stdout] 80 | pub fn process(&mut self, sample_rate: f32, frame_size: usize) -> Option<(bool, f32)> { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sample_rate` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frame_size` [INFO] [stdout] --> crates/libbackend/src/jogwheel.rs:80:49 [INFO] [stdout] | [INFO] [stdout] 80 | pub fn process(&mut self, sample_rate: f32, frame_size: usize) -> Option<(bool, f32)> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 80 | pub fn process(&mut self, sample_rate: f32, _frame_size: usize) -> Option<(bool, f32)> { [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `MAX_MIDI` [INFO] [stdout] | [INFO] [stdout] 80 - pub fn process(&mut self, sample_rate: f32, frame_size: usize) -> Option<(bool, f32)> { [INFO] [stdout] 80 + pub fn process(&mut self, sample_rate: f32, midimapping::midi::MAX_MIDI: usize) -> Option<(bool, f32)> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f` [INFO] [stdout] --> crates/libbackend/src/keyboardbindings/key_combination.rs:45:19 [INFO] [stdout] | [INFO] [stdout] 45 | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `end` [INFO] [stdout] --> crates/libbackend/src/keyboardbindings/mod.rs:148:21 [INFO] [stdout] | [INFO] [stdout] 148 | let end = ron_error.position.col; [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 148 | let _end = ron_error.position.col; [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `MAX_MIDI` [INFO] [stdout] | [INFO] [stdout] 148 - let end = ron_error.position.col; [INFO] [stdout] 148 + let midimapping::midi::MAX_MIDI = ron_error.position.col; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `backend` [INFO] [stdout] --> crates/libbackend/src/state/popups/mod.rs:141:34 [INFO] [stdout] | [INFO] [stdout] 141 | fn on_interaction(&mut self, backend: &mut Backend, key: &LCDJKeyEvent) -> PopupResult { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_backend` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key` [INFO] [stdout] --> crates/libbackend/src/state/popups/mod.rs:141:57 [INFO] [stdout] | [INFO] [stdout] 141 | fn on_interaction(&mut self, backend: &mut Backend, key: &LCDJKeyEvent) -> PopupResult { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `keyboardbindings::Deck` is more private than the item `KeyboardMappingCommand::CloneDeck::0` [INFO] [stdout] --> crates/libbackend/src/keyboardbindings/mod.rs:204:15 [INFO] [stdout] | [INFO] [stdout] 204 | CloneDeck(Deck, Deck), [INFO] [stdout] | ^^^^ field `KeyboardMappingCommand::CloneDeck::0` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `keyboardbindings::Deck` is only usable at visibility `pub(crate)` [INFO] [stdout] --> crates/libbackend/src/keyboardbindings/mod.rs:209:1 [INFO] [stdout] | [INFO] [stdout] 209 | pub(crate) enum Deck { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `keyboardbindings::Deck` is more private than the item `KeyboardMappingCommand::CloneDeck::1` [INFO] [stdout] --> crates/libbackend/src/keyboardbindings/mod.rs:204:21 [INFO] [stdout] | [INFO] [stdout] 204 | CloneDeck(Deck, Deck), [INFO] [stdout] | ^^^^ field `KeyboardMappingCommand::CloneDeck::1` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `keyboardbindings::Deck` is only usable at visibility `pub(crate)` [INFO] [stdout] --> crates/libbackend/src/keyboardbindings/mod.rs:209:1 [INFO] [stdout] | [INFO] [stdout] 209 | pub(crate) enum Deck { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `keyboardbindings::Deck` is more private than the item `Action::Deck::0` [INFO] [stdout] --> crates/libbackend/src/keyboardbindings/action.rs:26:10 [INFO] [stdout] | [INFO] [stdout] 26 | Deck(Deck, DeckAction), [INFO] [stdout] | ^^^^ field `Action::Deck::0` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `keyboardbindings::Deck` is only usable at visibility `pub(crate)` [INFO] [stdout] --> crates/libbackend/src/keyboardbindings/mod.rs:209:1 [INFO] [stdout] | [INFO] [stdout] 209 | pub(crate) enum Deck { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `keyboardbindings::Deck` is more private than the item `DeckAction::CloneTo::0` [INFO] [stdout] --> crates/libbackend/src/keyboardbindings/action.rs:74:13 [INFO] [stdout] | [INFO] [stdout] 74 | CloneTo(Deck), [INFO] [stdout] | ^^^^ field `DeckAction::CloneTo::0` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `keyboardbindings::Deck` is only usable at visibility `pub(crate)` [INFO] [stdout] --> crates/libbackend/src/keyboardbindings/mod.rs:209:1 [INFO] [stdout] | [INFO] [stdout] 209 | pub(crate) enum Deck { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `keyboardbindings::Deck` is more private than the item `DeckAction::into_expr` [INFO] [stdout] --> crates/libbackend/src/keyboardbindings/action.rs:78:5 [INFO] [stdout] | [INFO] [stdout] 78 | pub fn into_expr(self, deck: Deck) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `DeckAction::into_expr` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `keyboardbindings::Deck` is only usable at visibility `pub(crate)` [INFO] [stdout] --> crates/libbackend/src/keyboardbindings/mod.rs:209:1 [INFO] [stdout] | [INFO] [stdout] 209 | pub(crate) enum Deck { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `rpm` and `dx` are never read [INFO] [stdout] --> crates/libbackend/src/jogwheel.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 25 | pub struct Jogwheel { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] 26 | intervals_per_rev: i32, [INFO] [stdout] 27 | rpm: f32, [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 30 | dx: f32, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `RelativeOrAbsolute` is never used [INFO] [stdout] --> crates/libbackend/src/keyboardbindings/action.rs:57:10 [INFO] [stdout] | [INFO] [stdout] 57 | pub enum RelativeOrAbsolute { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `last_db_led_update` and `max_db` are never read [INFO] [stdout] --> crates/libbackend/src/midimapping/mappings/denon_sc2000.rs:64:5 [INFO] [stdout] | [INFO] [stdout] 63 | pub struct DenonSC2000 { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 64 | last_db_led_update: Instant, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 65 | max_db: [f32; 11], [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LED_BLINK` is never used [INFO] [stdout] --> crates/libbackend/src/midimapping/mappings/denon_sc2000.rs:432:14 [INFO] [stdout] | [INFO] [stdout] 432 | const LED_BLINK :u8= 0x4C; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `led_blink_midi_note` is never used [INFO] [stdout] --> crates/libbackend/src/midimapping/mappings/denon_sc2000.rs:440:12 [INFO] [stdout] | [INFO] [stdout] 440 | fn led_blink_midi_note(expr: bool) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Playlist` [INFO] [stdout] --> crates/librecdj/src/ui/popups/main_menu.rs:1:40 [INFO] [stdout] | [INFO] [stdout] 1 | use libbackend::state::{MainMenuState, Playlist}; [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 variable: `real_area_y` [INFO] [stdout] --> crates/librecdj/src/ui/popups/main_menu.rs:23:13 [INFO] [stdout] | [INFO] [stdout] 23 | let real_area_y = area.height / 2; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_real_area_y` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `edit_metadata_state` [INFO] [stdout] --> crates/librecdj/src/ui/screens/main.rs:84:42 [INFO] [stdout] | [INFO] [stdout] 84 | PopupState::EditMetadata(edit_metadata_state) => todo!(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_edit_metadata_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `jack_backend` is never read [INFO] [stdout] --> crates/librecdj/src/app.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct App { [INFO] [stdout] | --- field in this struct [INFO] [stdout] 23 | pub backend: Backend, [INFO] [stdout] 24 | pub jack_backend: JackBackend, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `state` is never read [INFO] [stdout] --> crates/librecdj/src/ui/popups/main_menu.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct MainMenuPopup<'a> { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] 11 | pub state: &'a MainMenuState, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [optimized + debuginfo] target(s) in 1.55s [INFO] running `Command { std: "docker" "inspect" "560e5e06e967feba454be0107df7a15bede8c5c375608a4a8cf4a80ee014e54e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "560e5e06e967feba454be0107df7a15bede8c5c375608a4a8cf4a80ee014e54e", kill_on_drop: false }` [INFO] [stdout] 560e5e06e967feba454be0107df7a15bede8c5c375608a4a8cf4a80ee014e54e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 7f11a0c044431a86c1cc10cbf77f9bf3825c1fa848c1ffb9d54cc0fb7454949f [INFO] running `Command { std: "docker" "start" "-a" "7f11a0c044431a86c1cc10cbf77f9bf3825c1fa848c1ffb9d54cc0fb7454949f", kill_on_drop: false }` [INFO] [stderr] warning: /opt/rustwide/workdir/crates/tui-playground/Cargo.toml: unused manifest key: dependencies.waveform.version [INFO] [stderr] warning: /opt/rustwide/workdir/Cargo.toml: unused manifest key: profile.fastcomp.linker [INFO] [stderr] warning: unused imports: `MAX_TEMPO_RATIO` and `MIN_TEMPO_RATIO` [INFO] [stderr] --> crates/libplayer/src/player.rs:10:28 [INFO] [stderr] | [INFO] [stderr] 10 | resampler::{Resampler, MAX_TEMPO_RATIO, MIN_TEMPO_RATIO}, [INFO] [stderr] | ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary trailing semicolon [INFO] [stderr] --> crates/libplayer/src/player.rs:193:10 [INFO] [stderr] | [INFO] [stderr] 193 | }; [INFO] [stderr] | ^ help: remove this semicolon [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: value assigned to `end_pos` is never read [INFO] [stderr] --> crates/libplayer/src/player.rs:183:17 [INFO] [stderr] | [INFO] [stderr] 183 | let mut end_pos = frame_size; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: value assigned to `wrote_already` is never read [INFO] [stderr] --> crates/libplayer/src/player.rs:191:17 [INFO] [stderr] | [INFO] [stderr] 191 | wrote_already = true; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 207 | write_audio_samples!(); [INFO] [stderr] | ---------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] = note: this warning originates in the macro `write_audio_samples` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> crates/libplayer/src/resampler.rs:98:33 [INFO] [stderr] | [INFO] [stderr] 98 | pub fn set_tempo(&mut self, mut tempo: f64, ramp: bool) -> ResamplerResult { [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: enum `TimeQueueError` is never used [INFO] [stderr] --> crates/libplayer/src/time_queue.rs:6:10 [INFO] [stderr] | [INFO] [stderr] 6 | pub enum TimeQueueError { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: type alias `Result` is never used [INFO] [stderr] --> crates/libplayer/src/time_queue.rs:12:10 [INFO] [stderr] | [INFO] [stderr] 12 | pub type Result = std::result::Result; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum `TimeQueueElement` is never used [INFO] [stderr] --> crates/libplayer/src/time_queue.rs:15:10 [INFO] [stderr] | [INFO] [stderr] 15 | pub enum TimeQueueElement [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `from_item` and `is_zone` are never used [INFO] [stderr] --> crates/libplayer/src/time_queue.rs:27:12 [INFO] [stderr] | [INFO] [stderr] 23 | / impl TimeQueueElement [INFO] [stderr] 24 | | where [INFO] [stderr] 25 | | T: Copy + Sized, [INFO] [stderr] | |____________________- associated items in this implementation [INFO] [stderr] 26 | { [INFO] [stderr] 27 | pub fn from_item(item: T) -> Self { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 30 | pub fn is_zone(&self) -> bool { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `TimeQueue` is never constructed [INFO] [stderr] --> crates/libplayer/src/time_queue.rs:47:8 [INFO] [stderr] | [INFO] [stderr] 47 | struct TimeQueue [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple associated items are never used [INFO] [stderr] --> crates/libplayer/src/time_queue.rs:58:12 [INFO] [stderr] | [INFO] [stderr] 54 | / impl TimeQueue [INFO] [stderr] 55 | | where [INFO] [stderr] 56 | | T: Copy + Sized, [INFO] [stderr] | |____________________- associated items in this implementation [INFO] [stderr] 57 | { [INFO] [stderr] 58 | pub fn new(size: usize) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 67 | fn insert_new_zone(&mut self, insert_index: usize, time: u32, item: T) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 82 | fn append_to_zone(&mut self, zone_index: usize, item: T) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 103 | fn find_closest_zone(&self, time: u32) -> Option<(usize, Zone)> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 139 | pub fn insert(&mut self, time: u32, item: T) -> Result { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 160 | pub fn get_zone(&self, zone_index: usize) -> Option { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 170 | pub fn take_item(&self, index: usize) -> Option { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 178 | pub fn reset(&mut self) { [INFO] [stderr] | ^^^^^ [INFO] [stderr] ... [INFO] [stderr] 184 | pub fn inner(&self) -> &RefCell>> { [INFO] [stderr] | ^^^^^ [INFO] [stderr] ... [INFO] [stderr] 191 | pub fn iter_slices(&self, max_time: u32) -> TimeQueueIterator { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Slice` is never constructed [INFO] [stderr] --> crates/libplayer/src/time_queue.rs:200:12 [INFO] [stderr] | [INFO] [stderr] 200 | pub struct Slice<'a, T> [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `time_start`, `time_end`, `time_span`, and `item_range` are never used [INFO] [stderr] --> crates/libplayer/src/time_queue.rs:217:12 [INFO] [stderr] | [INFO] [stderr] 212 | / impl<'a, T> Slice<'a, T> [INFO] [stderr] 213 | | where [INFO] [stderr] 214 | | T: Copy + Sized, [INFO] [stderr] | |____________________- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 217 | pub fn time_start(&self) -> u32 { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 222 | pub fn time_end(&self) -> u32 { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 227 | pub fn time_span(&self) -> (u32, u32) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 232 | pub fn item_range(&self) -> Range { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `TimeQueueIterator` is never constructed [INFO] [stderr] --> crates/libplayer/src/time_queue.rs:253:12 [INFO] [stderr] | [INFO] [stderr] 253 | pub struct TimeQueueIterator<'a, T> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `ZoneIterItem` is never constructed [INFO] [stderr] --> crates/libplayer/src/time_queue.rs:294:12 [INFO] [stderr] | [INFO] [stderr] 294 | pub struct ZoneIterItem<'a, T> [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Zone` is never constructed [INFO] [stderr] --> crates/libplayer/src/time_queue.rs:302:12 [INFO] [stderr] | [INFO] [stderr] 302 | pub struct Zone { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> crates/libplayer/src/time_queue.rs:308:12 [INFO] [stderr] | [INFO] [stderr] 307 | impl Zone { [INFO] [stderr] | --------- associated function in this implementation [INFO] [stderr] 308 | pub fn new(time: u32, len_items: usize) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> crates/libplayer/src/time_queue.rs:191:24 [INFO] [stderr] | [INFO] [stderr] 191 | pub fn iter_slices(&self, max_time: u32) -> TimeQueueIterator { [INFO] [stderr] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 191 | pub fn iter_slices(&self, max_time: u32) -> TimeQueueIterator<'_, T> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: `libplayer` (lib) generated 18 warnings (run `cargo fix --lib -p libplayer` to apply 3 suggestions) [INFO] [stderr] warning: unused import: `tracing::Instrument` [INFO] [stderr] --> crates/libbackend/src/backend.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | use tracing::Instrument; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `crossterm::event::KeyCode` [INFO] [stderr] --> crates/libbackend/src/keyboardbindings/mod.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use crossterm::event::KeyCode; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `serde::Serialize` [INFO] [stderr] --> crates/libbackend/src/library/library.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use serde::Serialize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `LCDJKeyEventKind` [INFO] [stderr] --> crates/libbackend/src/state/popups/add_to_playlist.rs:4:57 [INFO] [stderr] | [INFO] [stderr] 4 | keyboardbindings::{LCDJKeyCode, LCDJKeyCombination, LCDJKeyEventKind}, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `LCDJKeyEventKind` [INFO] [stderr] --> crates/libbackend/src/state/popups/jump_to_secion.rs:2:57 [INFO] [stderr] | [INFO] [stderr] 2 | keyboardbindings::{LCDJKeyCode, LCDJKeyCombination, LCDJKeyEventKind}, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `PathBuf`, `cell::RefCell`, and `collections::HashMap` [INFO] [stderr] --> crates/libbackend/src/state/popups/mod.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | cell::RefCell, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] 10 | collections::HashMap, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 11 | env, [INFO] [stderr] 12 | path::{Path, PathBuf}, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `MetadataKey` and `MetadataStateItem` [INFO] [stderr] --> crates/libbackend/src/state/popups/mod.rs:18:40 [INFO] [stderr] | [INFO] [stderr] 18 | use edit_metadata::{EditMetadataState, MetadataKey, MetadataStateItem}; [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `libmetadata::read_metadata` [INFO] [stderr] --> crates/libbackend/src/state/popups/mod.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | use libmetadata::read_metadata; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `env`, `path::Path`, and `time::SystemTime` [INFO] [stderr] --> crates/libbackend/src/state/mod.rs:4:11 [INFO] [stderr] | [INFO] [stderr] 4 | use std::{env, path::Path, time::SystemTime}; [INFO] [stderr] | ^^^ ^^^^^^^^^^ ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `LoopKind` [INFO] [stderr] --> crates/libbackend/src/state/mod.rs:7:31 [INFO] [stderr] | [INFO] [stderr] 7 | use libplayer::{BeatPosition, LoopKind, PlayerState}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated function `std::arch::x86_64::_MM_SET_FLUSH_ZERO_MODE`: see `_mm_setcsr` documentation - use inline assembly instead [INFO] [stderr] --> crates/libbackend/src/audio_engine.rs:8:24 [INFO] [stderr] | [INFO] [stderr] 8 | use std::arch::x86_64::_MM_SET_FLUSH_ZERO_MODE; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated function `std::arch::x86_64::_MM_SET_FLUSH_ZERO_MODE`: see `_mm_setcsr` documentation - use inline assembly instead [INFO] [stderr] --> crates/libbackend/src/audio_engine.rs:206:13 [INFO] [stderr] | [INFO] [stderr] 206 | _MM_SET_FLUSH_ZERO_MODE(_MM_FLUSH_ZERO_ON); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sample_rate` [INFO] [stderr] --> crates/libbackend/src/backend.rs:213:17 [INFO] [stderr] | [INFO] [stderr] 213 | let sample_rate = deck.player_state.initial_sample_rate(); [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sample_rate` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `frame_count` [INFO] [stderr] --> crates/libbackend/src/jack.rs:70:13 [INFO] [stderr] | [INFO] [stderr] 70 | let frame_count = ps.last_frame_time(); [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_frame_count` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sample_rate` [INFO] [stderr] --> crates/libbackend/src/jogwheel.rs:80:31 [INFO] [stderr] | [INFO] [stderr] 80 | pub fn process(&mut self, sample_rate: f32, frame_size: usize) -> Option<(bool, f32)> { [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sample_rate` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `frame_size` [INFO] [stderr] --> crates/libbackend/src/jogwheel.rs:80:49 [INFO] [stderr] | [INFO] [stderr] 80 | pub fn process(&mut self, sample_rate: f32, frame_size: usize) -> Option<(bool, f32)> { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: if this is intentional, prefix it with an underscore [INFO] [stderr] | [INFO] [stderr] 80 | pub fn process(&mut self, sample_rate: f32, _frame_size: usize) -> Option<(bool, f32)> { [INFO] [stderr] | + [INFO] [stderr] help: you might have meant to pattern match on the similarly named constant `MAX_MIDI` [INFO] [stderr] | [INFO] [stderr] 80 - pub fn process(&mut self, sample_rate: f32, frame_size: usize) -> Option<(bool, f32)> { [INFO] [stderr] 80 + pub fn process(&mut self, sample_rate: f32, midimapping::midi::MAX_MIDI: usize) -> Option<(bool, f32)> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `f` [INFO] [stderr] --> crates/libbackend/src/keyboardbindings/key_combination.rs:45:19 [INFO] [stderr] | [INFO] [stderr] 45 | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `end` [INFO] [stderr] --> crates/libbackend/src/keyboardbindings/mod.rs:148:21 [INFO] [stderr] | [INFO] [stderr] 148 | let end = ron_error.position.col; [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] help: if this is intentional, prefix it with an underscore [INFO] [stderr] | [INFO] [stderr] 148 | let _end = ron_error.position.col; [INFO] [stderr] | + [INFO] [stderr] help: you might have meant to pattern match on the similarly named constant `MAX_MIDI` [INFO] [stderr] | [INFO] [stderr] 148 - let end = ron_error.position.col; [INFO] [stderr] 148 + let midimapping::midi::MAX_MIDI = ron_error.position.col; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `backend` [INFO] [stderr] --> crates/libbackend/src/state/popups/mod.rs:141:34 [INFO] [stderr] | [INFO] [stderr] 141 | fn on_interaction(&mut self, backend: &mut Backend, key: &LCDJKeyEvent) -> PopupResult { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_backend` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `key` [INFO] [stderr] --> crates/libbackend/src/state/popups/mod.rs:141:57 [INFO] [stderr] | [INFO] [stderr] 141 | fn on_interaction(&mut self, backend: &mut Backend, key: &LCDJKeyEvent) -> PopupResult { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_key` [INFO] [stderr] [INFO] [stderr] warning: type `keyboardbindings::Deck` is more private than the item `KeyboardMappingCommand::CloneDeck::0` [INFO] [stderr] --> crates/libbackend/src/keyboardbindings/mod.rs:204:15 [INFO] [stderr] | [INFO] [stderr] 204 | CloneDeck(Deck, Deck), [INFO] [stderr] | ^^^^ field `KeyboardMappingCommand::CloneDeck::0` is reachable at visibility `pub` [INFO] [stderr] | [INFO] [stderr] note: but type `keyboardbindings::Deck` is only usable at visibility `pub(crate)` [INFO] [stderr] --> crates/libbackend/src/keyboardbindings/mod.rs:209:1 [INFO] [stderr] | [INFO] [stderr] 209 | pub(crate) enum Deck { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: `#[warn(private_interfaces)]` on by default [INFO] [stderr] [INFO] [stderr] warning: type `keyboardbindings::Deck` is more private than the item `KeyboardMappingCommand::CloneDeck::1` [INFO] [stderr] --> crates/libbackend/src/keyboardbindings/mod.rs:204:21 [INFO] [stderr] | [INFO] [stderr] 204 | CloneDeck(Deck, Deck), [INFO] [stderr] | ^^^^ field `KeyboardMappingCommand::CloneDeck::1` is reachable at visibility `pub` [INFO] [stderr] | [INFO] [stderr] note: but type `keyboardbindings::Deck` is only usable at visibility `pub(crate)` [INFO] [stderr] --> crates/libbackend/src/keyboardbindings/mod.rs:209:1 [INFO] [stderr] | [INFO] [stderr] 209 | pub(crate) enum Deck { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type `keyboardbindings::Deck` is more private than the item `Action::Deck::0` [INFO] [stderr] --> crates/libbackend/src/keyboardbindings/action.rs:26:10 [INFO] [stderr] | [INFO] [stderr] 26 | Deck(Deck, DeckAction), [INFO] [stderr] | ^^^^ field `Action::Deck::0` is reachable at visibility `pub` [INFO] [stderr] | [INFO] [stderr] note: but type `keyboardbindings::Deck` is only usable at visibility `pub(crate)` [INFO] [stderr] --> crates/libbackend/src/keyboardbindings/mod.rs:209:1 [INFO] [stderr] | [INFO] [stderr] 209 | pub(crate) enum Deck { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type `keyboardbindings::Deck` is more private than the item `DeckAction::CloneTo::0` [INFO] [stderr] --> crates/libbackend/src/keyboardbindings/action.rs:74:13 [INFO] [stderr] | [INFO] [stderr] 74 | CloneTo(Deck), [INFO] [stderr] | ^^^^ field `DeckAction::CloneTo::0` is reachable at visibility `pub` [INFO] [stderr] | [INFO] [stderr] note: but type `keyboardbindings::Deck` is only usable at visibility `pub(crate)` [INFO] [stderr] --> crates/libbackend/src/keyboardbindings/mod.rs:209:1 [INFO] [stderr] | [INFO] [stderr] 209 | pub(crate) enum Deck { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type `keyboardbindings::Deck` is more private than the item `DeckAction::into_expr` [INFO] [stderr] --> crates/libbackend/src/keyboardbindings/action.rs:78:5 [INFO] [stderr] | [INFO] [stderr] 78 | pub fn into_expr(self, deck: Deck) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `DeckAction::into_expr` is reachable at visibility `pub` [INFO] [stderr] | [INFO] [stderr] note: but type `keyboardbindings::Deck` is only usable at visibility `pub(crate)` [INFO] [stderr] --> crates/libbackend/src/keyboardbindings/mod.rs:209:1 [INFO] [stderr] | [INFO] [stderr] 209 | pub(crate) enum Deck { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `rpm` and `dx` are never read [INFO] [stderr] --> crates/libbackend/src/jogwheel.rs:27:5 [INFO] [stderr] | [INFO] [stderr] 25 | pub struct Jogwheel { [INFO] [stderr] | -------- fields in this struct [INFO] [stderr] 26 | intervals_per_rev: i32, [INFO] [stderr] 27 | rpm: f32, [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 30 | dx: f32, [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: enum `RelativeOrAbsolute` is never used [INFO] [stderr] --> crates/libbackend/src/keyboardbindings/action.rs:57:10 [INFO] [stderr] | [INFO] [stderr] 57 | pub enum RelativeOrAbsolute { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `last_db_led_update` and `max_db` are never read [INFO] [stderr] --> crates/libbackend/src/midimapping/mappings/denon_sc2000.rs:64:5 [INFO] [stderr] | [INFO] [stderr] 63 | pub struct DenonSC2000 { [INFO] [stderr] | ----------- fields in this struct [INFO] [stderr] 64 | last_db_led_update: Instant, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 65 | max_db: [f32; 11], [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `LED_BLINK` is never used [INFO] [stderr] --> crates/libbackend/src/midimapping/mappings/denon_sc2000.rs:432:14 [INFO] [stderr] | [INFO] [stderr] 432 | const LED_BLINK :u8= 0x4C; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `led_blink_midi_note` is never used [INFO] [stderr] --> crates/libbackend/src/midimapping/mappings/denon_sc2000.rs:440:12 [INFO] [stderr] | [INFO] [stderr] 440 | fn led_blink_midi_note(expr: bool) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `libbackend` (lib) generated 30 warnings (run `cargo fix --lib -p libbackend` to apply 12 suggestions) [INFO] [stderr] warning: unused import: `Playlist` [INFO] [stderr] --> crates/librecdj/src/ui/popups/main_menu.rs:1:40 [INFO] [stderr] | [INFO] [stderr] 1 | use libbackend::state::{MainMenuState, Playlist}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `real_area_y` [INFO] [stderr] --> crates/librecdj/src/ui/popups/main_menu.rs:23:13 [INFO] [stderr] | [INFO] [stderr] 23 | let real_area_y = area.height / 2; [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_real_area_y` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `edit_metadata_state` [INFO] [stderr] --> crates/librecdj/src/ui/screens/main.rs:84:42 [INFO] [stderr] | [INFO] [stderr] 84 | PopupState::EditMetadata(edit_metadata_state) => todo!(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_edit_metadata_state` [INFO] [stderr] [INFO] [stderr] warning: field `jack_backend` is never read [INFO] [stderr] --> crates/librecdj/src/app.rs:24:9 [INFO] [stderr] | [INFO] [stderr] 22 | pub struct App { [INFO] [stderr] | --- field in this struct [INFO] [stderr] 23 | pub backend: Backend, [INFO] [stderr] 24 | pub jack_backend: JackBackend, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: field `state` is never read [INFO] [stderr] --> crates/librecdj/src/ui/popups/main_menu.rs:11:9 [INFO] [stderr] | [INFO] [stderr] 10 | pub struct MainMenuPopup<'a> { [INFO] [stderr] | ------------- field in this struct [INFO] [stderr] 11 | pub state: &'a MainMenuState, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `librecdj` (bin "librecdj" test) generated 5 warnings (run `cargo fix --bin "librecdj" --tests` to apply 1 suggestion) [INFO] [stderr] Finished `test` profile [optimized + debuginfo] target(s) in 0.52s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/librecdj-2fad37dcdb412317) [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test ui::widgets::deck::tests::test_format_time_elapsed ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "7f11a0c044431a86c1cc10cbf77f9bf3825c1fa848c1ffb9d54cc0fb7454949f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7f11a0c044431a86c1cc10cbf77f9bf3825c1fa848c1ffb9d54cc0fb7454949f", kill_on_drop: false }` [INFO] [stdout] 7f11a0c044431a86c1cc10cbf77f9bf3825c1fa848c1ffb9d54cc0fb7454949f