[INFO] cloning repository https://github.com/zrowan1/beat-partner-plugin
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/zrowan1/beat-partner-plugin" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzrowan1%2Fbeat-partner-plugin", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzrowan1%2Fbeat-partner-plugin'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 753f131f28608b6f13355eeb1537d19c640beac9
[INFO] checking zrowan1/beat-partner-plugin against master#2aabf3ce0569dd7c8c2d2a27944850056dcf2566 for pr-156508
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzrowan1%2Fbeat-partner-plugin" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/zrowan1/beat-partner-plugin
[INFO] finished tweaking git repo https://github.com/zrowan1/beat-partner-plugin
[INFO] tweaked toml for git repo https://github.com/zrowan1/beat-partner-plugin written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/zrowan1/beat-partner-plugin on toolchain 2aabf3ce0569dd7c8c2d2a27944850056dcf2566
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2aabf3ce0569dd7c8c2d2a27944850056dcf2566" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/zrowan1/beat-partner-plugin 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" "+2aabf3ce0569dd7c8c2d2a27944850056dcf2566" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating git repository `https://github.com/robbert-vdh/nih-plug.git`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Updating git repository `https://github.com/robbert-vdh/rust-assert-no-alloc.git`
[INFO] [stderr]     Updating git repository `https://github.com/micahrj/clap-sys.git`
[INFO] [stderr]     Updating git repository `https://github.com/robbert-vdh/vst3-sys.git`
[INFO] [stderr]     Updating git repository `https://github.com/RustAudio/baseview.git`
[INFO] [stderr]     Updating git repository `https://github.com/BillyDM/egui-baseview.git`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded midi-consts v0.1.0
[INFO] [stderr]   Downloaded rusqlite v0.30.0
[INFO] [stderr]   Downloaded nih_log v0.3.1
[INFO] [stderr]   Downloaded anymap3 v1.0.1
[INFO] [stderr]   Downloaded rusqlite_migration v1.1.0
[INFO] [stderr]   Downloaded realfft v3.5.0
[INFO] [stderr]   Downloaded open v5.3.4
[INFO] [stderr]   Downloaded fern v0.6.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+2aabf3ce0569dd7c8c2d2a27944850056dcf2566" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 30560c7105626a720b31c99a51a2120e313398e599b9b2fa18cd58c02a3aaa6d
[INFO] running `Command { std: "docker" "start" "-a" "30560c7105626a720b31c99a51a2120e313398e599b9b2fa18cd58c02a3aaa6d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "30560c7105626a720b31c99a51a2120e313398e599b9b2fa18cd58c02a3aaa6d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "30560c7105626a720b31c99a51a2120e313398e599b9b2fa18cd58c02a3aaa6d", kill_on_drop: false }`
[INFO] [stdout] 30560c7105626a720b31c99a51a2120e313398e599b9b2fa18cd58c02a3aaa6d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+2aabf3ce0569dd7c8c2d2a27944850056dcf2566" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5e27679d92dc2d28678793252026ce0234edda6205065b873595adb93be3f63c
[INFO] running `Command { std: "docker" "start" "-a" "5e27679d92dc2d28678793252026ce0234edda6205065b873595adb93be3f63c", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]     Checking bitflags v2.11.1
[INFO] [stderr]    Compiling pkg-config v0.3.33
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]     Checking log v0.4.29
[INFO] [stderr]    Compiling memoffset v0.6.5
[INFO] [stderr]     Checking x11rb-protocol v0.13.2
[INFO] [stderr]    Compiling cc v1.2.62
[INFO] [stderr]    Compiling time-core v0.1.8
[INFO] [stderr]     Checking profiling v1.0.18
[INFO] [stderr]    Compiling num-conv v0.2.1
[INFO] [stderr]     Checking epaint_default_fonts v0.31.1
[INFO] [stderr]     Checking deranged v0.5.8
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking object v0.37.3
[INFO] [stderr]    Compiling time-macros v0.2.27
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking is-docker v0.2.0
[INFO] [stderr]     Checking raw-window-handle v0.5.2
[INFO] [stderr]     Checking num_threads v0.1.7
[INFO] [stderr]     Checking is-wsl v0.4.0
[INFO] [stderr]     Checking crossbeam-deque v0.8.6
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking keyboard-types v0.6.2
[INFO] [stderr]     Checking crossbeam-queue v0.3.12
[INFO] [stderr]     Checking crossbeam-channel v0.5.15
[INFO] [stderr]    Compiling x11 v2.21.0
[INFO] [stderr]     Checking pathdiff v0.2.3
[INFO] [stderr]     Checking strength_reduce v0.2.4
[INFO] [stderr]     Checking primal-check v0.3.4
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]     Checking fallible-iterator v0.3.0
[INFO] [stderr]    Compiling rusqlite_migration v1.1.0
[INFO] [stderr]     Checking transpose v0.2.3
[INFO] [stderr]     Checking clap-sys v0.5.0 (https://github.com/micahrj/clap-sys.git?rev=25d7f53fdb6363ad63fbd80049cb7a42a97ac156#25d7f53f)
[INFO] [stderr]     Checking widestring v1.2.1
[INFO] [stderr]     Checking midi-consts v0.1.0
[INFO] [stderr]     Checking anymap3 v1.0.1
[INFO] [stderr]     Checking atomic_refcell v0.1.14
[INFO] [stderr]     Checking atomic_float v0.1.0
[INFO] [stderr]     Checking rustfft v6.4.1
[INFO] [stderr]     Checking fern v0.6.2
[INFO] [stderr]     Checking crossbeam v0.8.4
[INFO] [stderr]     Checking hashlink v0.8.4
[INFO] [stderr]    Compiling libsqlite3-sys v0.27.0
[INFO] [stderr]    Compiling bytemuck_derive v1.10.2
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking nix v0.22.3
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking time v0.3.47
[INFO] [stderr]     Checking open v5.3.4
[INFO] [stderr]     Checking dirs-sys v0.4.1
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking dirs v5.0.1
[INFO] [stderr]     Checking bytemuck v1.25.0
[INFO] [stderr]     Checking nih_log v0.3.1
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]    Compiling vst3-com-macros-support v0.2.0 (https://github.com/robbert-vdh/vst3-sys.git?branch=fix%2Fdrop-box-from-raw#b3ff4d77)
[INFO] [stderr]     Checking emath v0.31.1
[INFO] [stderr]     Checking thiserror v2.0.18
[INFO] [stderr]     Checking ecolor v0.31.1
[INFO] [stderr]    Compiling nih_plug_derive v0.1.0 (https://github.com/robbert-vdh/nih-plug.git#f36931f7)
[INFO] [stderr]    Compiling vst3-com-macros v0.2.0 (https://github.com/robbert-vdh/vst3-sys.git?branch=fix%2Fdrop-box-from-raw#b3ff4d77)
[INFO] [stderr]     Checking epaint v0.31.1
[INFO] [stderr]     Checking vst3-com v0.1.0 (https://github.com/robbert-vdh/vst3-sys.git?branch=fix%2Fdrop-box-from-raw#b3ff4d77)
[INFO] [stderr]     Checking backtrace v0.3.76
[INFO] [stderr]     Checking vst3-sys v0.1.0 (https://github.com/robbert-vdh/vst3-sys.git?branch=fix%2Fdrop-box-from-raw#b3ff4d77)
[INFO] [stderr]     Checking assert_no_alloc v1.1.2 (https://github.com/robbert-vdh/rust-assert-no-alloc.git?branch=feature%2Fnested-permit-forbid#a6fb4f62)
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking egui v0.31.1
[INFO] [stderr]     Checking gethostname v1.1.0
[INFO] [stderr]     Checking nih_plug v0.0.0 (https://github.com/robbert-vdh/nih-plug.git#f36931f7)
[INFO] [stderr]     Checking x11rb v0.13.2
[INFO] [stderr]     Checking realfft v3.5.0
[INFO] [stderr]     Checking x11-clipboard v0.9.3
[INFO] [stderr]     Checking baseview v0.1.0 (https://github.com/RustAudio/baseview.git?rev=9a0b42c09d712777b2edb4c5e0cb6baf21e988f0#9a0b42c0)
[INFO] [stderr]     Checking copypasta v0.10.2
[INFO] [stderr]     Checking egui_glow v0.31.1
[INFO] [stderr]     Checking egui-baseview v0.5.0 (https://github.com/BillyDM/egui-baseview.git?rev=ec70c3fe6b2f070dcacbc22924431edbe24bd1c0#ec70c3fe)
[INFO] [stderr]     Checking nih_plug_egui v0.0.0 (https://github.com/robbert-vdh/nih-plug.git#f36931f7)
[INFO] [stderr]     Checking rusqlite v0.30.0
[INFO] [stderr]     Checking beat-partner-plugin v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/ui/app.rs:101:47
[INFO] [stdout]     |
[INFO] [stdout] 101 |                     .stroke(egui::Stroke::new(1.0, crate::ui::theme::BORDER)),
[INFO] [stdout]     |                                               ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout]     = note: `#[warn(float_literal_f32_fallback)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/ui/app.rs:152:47
[INFO] [stdout]     |
[INFO] [stdout] 152 |                     .stroke(egui::Stroke::new(1.0, crate::ui::theme::BORDER)),
[INFO] [stdout]     |                                               ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/ui/app.rs:286:47
[INFO] [stdout]     |
[INFO] [stdout] 286 |                     .stroke(egui::Stroke::new(1.0, crate::ui::theme::BORDER)),
[INFO] [stdout]     |                                               ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]   --> src/ui/theme.rs:39:29
[INFO] [stdout]    |
[INFO] [stdout] 39 |         .stroke(Stroke::new(1.0, BORDER))
[INFO] [stdout]    |                             ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]   --> src/ui/theme.rs:49:29
[INFO] [stdout]    |
[INFO] [stdout] 49 |         .stroke(Stroke::new(1.0, BORDER))
[INFO] [stdout]    |                             ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]   --> src/ui/theme.rs:62:33
[INFO] [stdout]    |
[INFO] [stdout] 62 |             .stroke(Stroke::new(1.0, BORDER)),
[INFO] [stdout]    |                                 ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]   --> src/ui/theme.rs:72:33
[INFO] [stdout]    |
[INFO] [stdout] 72 |             .stroke(Stroke::new(1.5, ACCENT_CYAN)),
[INFO] [stdout]    |                                 ^^^ help: explicitly specify the type as `f32`: `1.5_f32`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/ui/theme.rs:111:47
[INFO] [stdout]     |
[INFO] [stdout] 111 |     style.visuals.window_stroke = Stroke::new(1.0, BORDER);
[INFO] [stdout]     |                                               ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/ui/theme.rs:118:50
[INFO] [stdout]     |
[INFO] [stdout] 118 |     style.visuals.selection.stroke = Stroke::new(1.0, ACCENT_CYAN);
[INFO] [stdout]     |                                                  ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]  --> src/ui/widgets/glass_button.rs:9:33
[INFO] [stdout]   |
[INFO] [stdout] 9 |             .stroke(Stroke::new(1.0, BORDER)),
[INFO] [stdout]   |                                 ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]   = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]  --> src/ui/widgets/glass_panel.rs:8:29
[INFO] [stdout]   |
[INFO] [stdout] 8 |         .stroke(Stroke::new(1.0, BORDER))
[INFO] [stdout]   |                             ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]   = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/ui/app.rs:101:47
[INFO] [stdout]     |
[INFO] [stdout] 101 |                     .stroke(egui::Stroke::new(1.0, crate::ui::theme::BORDER)),
[INFO] [stdout]     |                                               ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout]     = note: `#[warn(float_literal_f32_fallback)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/ui/app.rs:152:47
[INFO] [stdout]     |
[INFO] [stdout] 152 |                     .stroke(egui::Stroke::new(1.0, crate::ui::theme::BORDER)),
[INFO] [stdout]     |                                               ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/ui/app.rs:286:47
[INFO] [stdout]     |
[INFO] [stdout] 286 |                     .stroke(egui::Stroke::new(1.0, crate::ui::theme::BORDER)),
[INFO] [stdout]     |                                               ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]   --> src/ui/theme.rs:39:29
[INFO] [stdout]    |
[INFO] [stdout] 39 |         .stroke(Stroke::new(1.0, BORDER))
[INFO] [stdout]    |                             ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]   --> src/ui/theme.rs:49:29
[INFO] [stdout]    |
[INFO] [stdout] 49 |         .stroke(Stroke::new(1.0, BORDER))
[INFO] [stdout]    |                             ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]   --> src/ui/theme.rs:62:33
[INFO] [stdout]    |
[INFO] [stdout] 62 |             .stroke(Stroke::new(1.0, BORDER)),
[INFO] [stdout]    |                                 ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]   --> src/ui/theme.rs:72:33
[INFO] [stdout]    |
[INFO] [stdout] 72 |             .stroke(Stroke::new(1.5, ACCENT_CYAN)),
[INFO] [stdout]    |                                 ^^^ help: explicitly specify the type as `f32`: `1.5_f32`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/ui/theme.rs:111:47
[INFO] [stdout]     |
[INFO] [stdout] 111 |     style.visuals.window_stroke = Stroke::new(1.0, BORDER);
[INFO] [stdout]     |                                               ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/ui/theme.rs:118:50
[INFO] [stdout]     |
[INFO] [stdout] 118 |     style.visuals.selection.stroke = Stroke::new(1.0, ACCENT_CYAN);
[INFO] [stdout]     |                                                  ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]  --> src/ui/widgets/glass_button.rs:9:33
[INFO] [stdout]   |
[INFO] [stdout] 9 |             .stroke(Stroke::new(1.0, BORDER)),
[INFO] [stdout]   |                                 ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]   = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]  --> src/ui/widgets/glass_panel.rs:8:29
[INFO] [stdout]   |
[INFO] [stdout] 8 |         .stroke(Stroke::new(1.0, BORDER))
[INFO] [stdout]   |                             ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]   = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `BeatPartnerError` is never used
[INFO] [stdout]  --> src/error.rs:4:10
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub enum BeatPartnerError {
[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]   --> src/error.rs:30:10
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub type Result<T> = std::result::Result<T, BeatPartnerError>;
[INFO] [stdout]    |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AudioAnalysis` is never constructed
[INFO] [stdout]  --> src/models/analysis.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct AudioAnalysis {
[INFO] [stdout]   |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BpmAnalysisResult` is never constructed
[INFO] [stdout]   --> src/models/analysis.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct BpmAnalysisResult {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `KeyAnalysisResult` is never constructed
[INFO] [stdout]   --> src/models/analysis.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct KeyAnalysisResult {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Lyrics` is never constructed
[INFO] [stdout]  --> src/models/lyrics.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct Lyrics {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LyricAnnotation` is never constructed
[INFO] [stdout]   --> src/models/lyrics.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct LyricAnnotation {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `AnnotationTag` is never used
[INFO] [stdout]   --> src/models/lyrics.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub enum AnnotationTag {
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Project` is never constructed
[INFO] [stdout]  --> src/models/project.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct Project {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NewProject` is never constructed
[INFO] [stdout]   --> src/models/project.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct NewProject {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VocalProductionNotes` is never constructed
[INFO] [stdout]  --> src/models/vocal.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct VocalProductionNotes {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ReferenceVocal` is never constructed
[INFO] [stdout]   --> src/models/vocal.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct ReferenceVocal {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `DbCommand` is never used
[INFO] [stdout]   --> src/services/db_service.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub enum DbCommand {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `DbResponse` is never used
[INFO] [stdout]   --> src/services/db_service.rs:19:10
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub enum DbResponse {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DbService` is never constructed
[INFO] [stdout]   --> src/services/db_service.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct DbService {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `request`, and `send` are never used
[INFO] [stdout]   --> src/services/db_service.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 33 | impl DbService {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 34 |     /// Start the background DB thread and run migrations.
[INFO] [stdout] 35 |     pub fn new(db_path: PathBuf) -> Result<Self> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn request(&self, cmd: DbCommand) -> Result<DbResponse> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 83 |     pub fn send(&self, cmd: DbCommand) -> Result<()> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `open_connection` is never used
[INFO] [stdout]   --> src/services/db_service.rs:92:4
[INFO] [stdout]    |
[INFO] [stdout] 92 | fn open_connection(path: &PathBuf) -> Result<Connection> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_migrations` is never used
[INFO] [stdout]    --> src/services/db_service.rs:104:4
[INFO] [stdout]     |
[INFO] [stdout] 104 | fn run_migrations(conn: &Connection) -> Result<()> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_command` is never used
[INFO] [stdout]    --> src/services/db_service.rs:149:4
[INFO] [stdout]     |
[INFO] [stdout] 149 | fn handle_command(conn: &Connection, cmd: DbCommand) -> DbResponse {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `annotation_toolbar` is never used
[INFO] [stdout]  --> src/ui/lyrics/annotation_toolbar.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn annotation_toolbar(_ui: &mut Ui) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `editor` is never used
[INFO] [stdout]  --> src/ui/lyrics/editor.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn editor(_ui: &mut Ui) {
[INFO] [stdout]   |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `highlighted_text` is never used
[INFO] [stdout]  --> src/ui/lyrics/highlighted_text.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn highlighted_text(_ui: &mut Ui) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `settings_panel` is never used
[INFO] [stdout]  --> src/ui/settings.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn settings_panel(_ui: &mut Ui) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ACCENT_MAGENTA` is never used
[INFO] [stdout]   --> src/ui/theme.rs:12:11
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub const ACCENT_MAGENTA: Color32 = Color32::from_rgb(0xf4, 0x72, 0xb6);
[INFO] [stdout]    |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TAG_FLOW` is never used
[INFO] [stdout]   --> src/ui/theme.rs:21:11
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub const TAG_FLOW: Color32 = Color32::from_rgb(0xf5, 0xb0, 0x40);
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TAG_EMPHASIS` is never used
[INFO] [stdout]   --> src/ui/theme.rs:22:11
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub const TAG_EMPHASIS: Color32 = Color32::from_rgb(0xfb, 0x71, 0x85);
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TITLE_SIZE` is never used
[INFO] [stdout]   --> src/ui/theme.rs:30:11
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub const TITLE_SIZE: f32 = 18.0;
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `glass_panel_compact` is never used
[INFO] [stdout]   --> src/ui/theme.rs:45:8
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub fn glass_panel_compact(ui: &mut Ui, add_contents: impl FnOnce(&mut Ui)) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `label_text` is never used
[INFO] [stdout]   --> src/ui/theme.rs:79:8
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub fn label_text(text: &str) -> RichText {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `title_text` is never used
[INFO] [stdout]   --> src/ui/theme.rs:91:8
[INFO] [stdout]    |
[INFO] [stdout] 91 | pub fn title_text(text: &str) -> RichText {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chord_grid` is never used
[INFO] [stdout]  --> src/ui/theory/chord_grid.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn chord_grid(_ui: &mut Ui) {
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `circle_of_fifths` is never used
[INFO] [stdout]  --> src/ui/theory/circle_of_fifths.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn circle_of_fifths(_ui: &mut Ui) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `progression_suggestions` is never used
[INFO] [stdout]  --> src/ui/theory/progression_suggestions.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn progression_suggestions(_ui: &mut Ui) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scale_viewer` is never used
[INFO] [stdout]  --> src/ui/theory/scale_viewer.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn scale_viewer(_ui: &mut Ui) {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chain_advisor` is never used
[INFO] [stdout]  --> src/ui/vocals/chain_advisor.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn chain_advisor(_ui: &mut Ui) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `checklist` is never used
[INFO] [stdout]  --> src/ui/vocals/checklist.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn checklist(_ui: &mut Ui) {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `notes_editor` is never used
[INFO] [stdout]  --> src/ui/vocals/notes_editor.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn notes_editor(_ui: &mut Ui) {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `glass_button_widget` is never used
[INFO] [stdout]  --> src/ui/widgets/glass_button.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn glass_button_widget(ui: &mut Ui, label: impl Into<WidgetText>) -> Response {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `glass_panel_widget` is never used
[INFO] [stdout]  --> src/ui/widgets/glass_panel.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn glass_panel_widget(ui: &mut Ui, add_contents: impl FnOnce(&mut Ui)) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `BeatPartnerError` is never used
[INFO] [stdout]  --> src/error.rs:4:10
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub enum BeatPartnerError {
[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]   --> src/error.rs:30:10
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub type Result<T> = std::result::Result<T, BeatPartnerError>;
[INFO] [stdout]    |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AudioAnalysis` is never constructed
[INFO] [stdout]  --> src/models/analysis.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct AudioAnalysis {
[INFO] [stdout]   |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BpmAnalysisResult` is never constructed
[INFO] [stdout]   --> src/models/analysis.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct BpmAnalysisResult {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `KeyAnalysisResult` is never constructed
[INFO] [stdout]   --> src/models/analysis.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct KeyAnalysisResult {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Lyrics` is never constructed
[INFO] [stdout]  --> src/models/lyrics.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct Lyrics {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LyricAnnotation` is never constructed
[INFO] [stdout]   --> src/models/lyrics.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct LyricAnnotation {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `AnnotationTag` is never used
[INFO] [stdout]   --> src/models/lyrics.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub enum AnnotationTag {
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Project` is never constructed
[INFO] [stdout]  --> src/models/project.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct Project {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NewProject` is never constructed
[INFO] [stdout]   --> src/models/project.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct NewProject {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VocalProductionNotes` is never constructed
[INFO] [stdout]  --> src/models/vocal.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct VocalProductionNotes {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ReferenceVocal` is never constructed
[INFO] [stdout]   --> src/models/vocal.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct ReferenceVocal {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `DbCommand` is never used
[INFO] [stdout]   --> src/services/db_service.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub enum DbCommand {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `DbResponse` is never used
[INFO] [stdout]   --> src/services/db_service.rs:19:10
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub enum DbResponse {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DbService` is never constructed
[INFO] [stdout]   --> src/services/db_service.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct DbService {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `request`, and `send` are never used
[INFO] [stdout]   --> src/services/db_service.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 33 | impl DbService {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 34 |     /// Start the background DB thread and run migrations.
[INFO] [stdout] 35 |     pub fn new(db_path: PathBuf) -> Result<Self> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn request(&self, cmd: DbCommand) -> Result<DbResponse> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 83 |     pub fn send(&self, cmd: DbCommand) -> Result<()> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `open_connection` is never used
[INFO] [stdout]   --> src/services/db_service.rs:92:4
[INFO] [stdout]    |
[INFO] [stdout] 92 | fn open_connection(path: &PathBuf) -> Result<Connection> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_migrations` is never used
[INFO] [stdout]    --> src/services/db_service.rs:104:4
[INFO] [stdout]     |
[INFO] [stdout] 104 | fn run_migrations(conn: &Connection) -> Result<()> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_command` is never used
[INFO] [stdout]    --> src/services/db_service.rs:149:4
[INFO] [stdout]     |
[INFO] [stdout] 149 | fn handle_command(conn: &Connection, cmd: DbCommand) -> DbResponse {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `annotation_toolbar` is never used
[INFO] [stdout]  --> src/ui/lyrics/annotation_toolbar.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn annotation_toolbar(_ui: &mut Ui) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `editor` is never used
[INFO] [stdout]  --> src/ui/lyrics/editor.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn editor(_ui: &mut Ui) {
[INFO] [stdout]   |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `highlighted_text` is never used
[INFO] [stdout]  --> src/ui/lyrics/highlighted_text.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn highlighted_text(_ui: &mut Ui) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `settings_panel` is never used
[INFO] [stdout]  --> src/ui/settings.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn settings_panel(_ui: &mut Ui) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ACCENT_MAGENTA` is never used
[INFO] [stdout]   --> src/ui/theme.rs:12:11
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub const ACCENT_MAGENTA: Color32 = Color32::from_rgb(0xf4, 0x72, 0xb6);
[INFO] [stdout]    |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TAG_FLOW` is never used
[INFO] [stdout]   --> src/ui/theme.rs:21:11
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub const TAG_FLOW: Color32 = Color32::from_rgb(0xf5, 0xb0, 0x40);
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TAG_EMPHASIS` is never used
[INFO] [stdout]   --> src/ui/theme.rs:22:11
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub const TAG_EMPHASIS: Color32 = Color32::from_rgb(0xfb, 0x71, 0x85);
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TITLE_SIZE` is never used
[INFO] [stdout]   --> src/ui/theme.rs:30:11
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub const TITLE_SIZE: f32 = 18.0;
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `glass_panel_compact` is never used
[INFO] [stdout]   --> src/ui/theme.rs:45:8
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub fn glass_panel_compact(ui: &mut Ui, add_contents: impl FnOnce(&mut Ui)) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `label_text` is never used
[INFO] [stdout]   --> src/ui/theme.rs:79:8
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub fn label_text(text: &str) -> RichText {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `title_text` is never used
[INFO] [stdout]   --> src/ui/theme.rs:91:8
[INFO] [stdout]    |
[INFO] [stdout] 91 | pub fn title_text(text: &str) -> RichText {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chord_grid` is never used
[INFO] [stdout]  --> src/ui/theory/chord_grid.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn chord_grid(_ui: &mut Ui) {
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `circle_of_fifths` is never used
[INFO] [stdout]  --> src/ui/theory/circle_of_fifths.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn circle_of_fifths(_ui: &mut Ui) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `progression_suggestions` is never used
[INFO] [stdout]  --> src/ui/theory/progression_suggestions.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn progression_suggestions(_ui: &mut Ui) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scale_viewer` is never used
[INFO] [stdout]  --> src/ui/theory/scale_viewer.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn scale_viewer(_ui: &mut Ui) {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chain_advisor` is never used
[INFO] [stdout]  --> src/ui/vocals/chain_advisor.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn chain_advisor(_ui: &mut Ui) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `checklist` is never used
[INFO] [stdout]  --> src/ui/vocals/checklist.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn checklist(_ui: &mut Ui) {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `notes_editor` is never used
[INFO] [stdout]  --> src/ui/vocals/notes_editor.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn notes_editor(_ui: &mut Ui) {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `glass_button_widget` is never used
[INFO] [stdout]  --> src/ui/widgets/glass_button.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn glass_button_widget(ui: &mut Ui, label: impl Into<WidgetText>) -> Response {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `glass_panel_widget` is never used
[INFO] [stdout]  --> src/ui/widgets/glass_panel.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn glass_panel_widget(ui: &mut Ui, add_contents: impl FnOnce(&mut Ui)) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 35.87s
[INFO] running `Command { std: "docker" "inspect" "5e27679d92dc2d28678793252026ce0234edda6205065b873595adb93be3f63c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5e27679d92dc2d28678793252026ce0234edda6205065b873595adb93be3f63c", kill_on_drop: false }`
[INFO] [stdout] 5e27679d92dc2d28678793252026ce0234edda6205065b873595adb93be3f63c
