[INFO] cloning repository https://github.com/madjinn/whisp-away [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/madjinn/whisp-away" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmadjinn%2Fwhisp-away", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmadjinn%2Fwhisp-away'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] c1561e2418ee13e98a43c276165fc783b34eaede [INFO] linting madjinn/whisp-away/c1561e2418ee13e98a43c276165fc783b34eaede against nightly for clippy-nonminimal_bool-denied [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmadjinn%2Fwhisp-away" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/madjinn/whisp-away [INFO] finished tweaking git repo https://github.com/madjinn/whisp-away [INFO] tweaked toml for git repo https://github.com/madjinn/whisp-away written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/madjinn/whisp-away on toolchain nightly [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/madjinn/whisp-away 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" "+nightly" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Updating git repository `https://codeberg.org/madjinn/whisper-rs.git` [INFO] [stderr] Updating git submodule `https://github.com/ggerganov/whisper.cpp` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded clap v4.5.48 [INFO] [stderr] Downloaded windows-targets v0.53.4 [INFO] [stderr] Downloaded clap_derive v4.5.47 [INFO] [stderr] Downloaded dbus-tree v0.9.2 [INFO] [stderr] Downloaded find-msvc-tools v0.1.3 [INFO] [stderr] Downloaded dbus-codegen v0.9.1 [INFO] [stderr] Downloaded cc v1.2.40 [INFO] [stderr] Downloaded dbus v0.9.9 [INFO] [stderr] Downloaded ksni v0.2.2 [INFO] [stderr] Downloaded clap_builder v4.5.48 [INFO] [stderr] Downloaded libdbus-sys v0.2.6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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" "+nightly" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 494d8b0540812005e52d50bc4bd48c0458a20a1af1801894bbd1f208efe14f54 [INFO] running `Command { std: "docker" "start" "-a" "494d8b0540812005e52d50bc4bd48c0458a20a1af1801894bbd1f208efe14f54", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "494d8b0540812005e52d50bc4bd48c0458a20a1af1801894bbd1f208efe14f54", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "494d8b0540812005e52d50bc4bd48c0458a20a1af1801894bbd1f208efe14f54", kill_on_drop: false }` [INFO] [stdout] 494d8b0540812005e52d50bc4bd48c0458a20a1af1801894bbd1f208efe14f54 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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" "+nightly" "clippy" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 0a8f331e34100617df81823518344d5b0407bd0cdf443712cbb7516f140d2b1d [INFO] running `Command { std: "docker" "start" "-a" "0a8f331e34100617df81823518344d5b0407bd0cdf443712cbb7516f140d2b1d", kill_on_drop: false }` [INFO] [stderr] Compiling libdbus-sys v0.2.6 [INFO] [stderr] Compiling clang-sys v1.8.1 [INFO] [stderr] Compiling memchr v2.7.6 [INFO] [stderr] Compiling regex-syntax v0.8.6 [INFO] [stderr] Compiling libloading v0.8.9 [INFO] [stderr] Compiling bindgen v0.71.1 [INFO] [stderr] Compiling find-msvc-tools v0.1.3 [INFO] [stderr] Compiling syn v2.0.106 [INFO] [stderr] Compiling itertools v0.13.0 [INFO] [stderr] Compiling bitflags v2.9.4 [INFO] [stderr] Compiling unicode-width v0.1.14 [INFO] [stderr] Compiling cc v1.2.40 [INFO] [stderr] Compiling nom v7.1.3 [INFO] [stderr] Compiling textwrap v0.11.0 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling ansi_term v0.12.1 [INFO] [stderr] Compiling strsim v0.8.0 [INFO] [stderr] Compiling vec_map v0.8.2 [INFO] [stderr] Compiling dbus v0.9.9 [INFO] [stderr] Compiling clap v2.34.0 [INFO] [stderr] Compiling cmake v0.1.54 [INFO] [stderr] Compiling regex-automata v0.4.11 [INFO] [stderr] Compiling xml-rs v0.8.27 [INFO] [stderr] Checking anstream v0.6.21 [INFO] [stderr] Compiling cexpr v0.6.0 [INFO] [stderr] Checking parking_lot_core v0.9.12 [INFO] [stderr] Compiling whisper-rs v0.15.1 (https://codeberg.org/madjinn/whisper-rs.git?branch=whisp-away#c80df5d5) [INFO] [stderr] Compiling dbus-codegen v0.9.1 [INFO] [stderr] Checking dirs-sys v0.4.1 [INFO] [stderr] Checking clap_builder v4.5.48 [INFO] [stderr] Checking parking_lot v0.12.5 [INFO] [stderr] Checking signal-hook-registry v1.4.6 [INFO] [stderr] Compiling prettyplease v0.2.37 [INFO] [stderr] Compiling regex v1.11.3 [INFO] [stderr] Checking dbus-tree v0.9.2 [INFO] [stderr] Checking serde_json v1.0.145 [INFO] [stderr] Checking tracing-subscriber v0.3.20 [INFO] [stderr] Compiling ksni v0.2.2 [INFO] [stderr] Checking dirs v5.0.1 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling tokio-macros v2.5.0 [INFO] [stderr] Compiling clap_derive v4.5.47 [INFO] [stderr] Compiling tracing-attributes v0.1.30 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Checking tokio v1.47.1 [INFO] [stderr] Checking tracing v0.1.41 [INFO] [stderr] Checking thiserror v1.0.69 [INFO] [stderr] Checking clap v4.5.48 [INFO] [stderr] Checking serde v1.0.228 [INFO] [stderr] Compiling whisper-rs-sys v0.14.1 (https://codeberg.org/madjinn/whisper-rs.git?branch=whisp-away#c80df5d5) [INFO] [stderr] Checking whisp-away v0.4.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `anyhow` [INFO] [stdout] --> src/helpers.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{anyhow, Result}; [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: `anyhow` [INFO] [stdout] --> src/helpers.rs:1:14 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::{anyhow, Result}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `check_daemon_process_status` and `check_daemon_status` are never used [INFO] [stdout] --> src/tray.rs:360:8 [INFO] [stdout] | [INFO] [stdout] 48 | impl VoiceInputTray { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 360 | fn check_daemon_process_status(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 380 | async fn check_daemon_status(&self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `type_text` is never used [INFO] [stdout] --> src/typing.rs:122:8 [INFO] [stdout] | [INFO] [stdout] 122 | pub fn type_text(text: &str, backend_name: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `write_config` is never used [INFO] [stdout] --> src/config.rs:73:8 [INFO] [stdout] | [INFO] [stdout] 73 | pub fn write_config(config: &Config) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/tray.rs:80:23 [INFO] [stdout] | [INFO] [stdout] 80 | .args(&["-f", "whisper_daemon.py"]) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `["-f", "whisper_daemon.py"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] = note: `#[warn(clippy::needless_borrows_for_generic_args)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/tray.rs:165:39 [INFO] [stdout] | [INFO] [stdout] 165 | ... .args(&[ [INFO] [stdout] | _____________________________^ [INFO] [stdout] 166 | | ... "Voice Input", [INFO] [stdout] 167 | | ... &format!("⚠️ Model {} not found. Please download it manually:\ndownload-whisper-model {}", model, model), [INFO] [stdout] 168 | | ... "-t", "10000", [INFO] [stdout] 169 | | ... "-u", "critical" [INFO] [stdout] 170 | | ... ]) [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 165 ~ .args([ [INFO] [stdout] 166 + "Voice Input", [INFO] [stdout] 167 ~ &format!("⚠️ Model {} not found. Please download it manually:\ndownload-whisper-model {}", model, model), [INFO] [stdout] 168 + "-t", "10000", [INFO] [stdout] 169 + "-u", "critical" [INFO] [stdout] 170 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/tray.rs:253:23 [INFO] [stdout] | [INFO] [stdout] 253 | .args(&[ [INFO] [stdout] | _______________________^ [INFO] [stdout] 254 | | "Voice Input", [INFO] [stdout] 255 | | &format!("✅ {} daemon started ({})", self.daemon_type, acceleration), [INFO] [stdout] 256 | | "-t", "3000", [INFO] [stdout] 257 | | ]) [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 253 ~ .args([ [INFO] [stdout] 254 + "Voice Input", [INFO] [stdout] 255 ~ &format!("✅ {} daemon started ({})", self.daemon_type, acceleration), [INFO] [stdout] 256 + "-t", "3000", [INFO] [stdout] 257 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/tray.rs:277:31 [INFO] [stdout] | [INFO] [stdout] 277 | .args(&["-f", "whisper_daemon.py"]) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `["-f", "whisper_daemon.py"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/tray.rs:282:31 [INFO] [stdout] | [INFO] [stdout] 282 | .args(&["-f", "/tmp/whisp-away-daemon.sock"]) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `["-f", "/tmp/whisp-away-daemon.sock"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/tray.rs:312:39 [INFO] [stdout] | [INFO] [stdout] 312 | ... .args(&["-9", "-f", "whisper_daemon.py"]) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `["-9", "-f", "whisper_daemon.py"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/tray.rs:321:39 [INFO] [stdout] | [INFO] [stdout] 321 | ... .args(&["-f", "whisper_daemon.py"]) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `["-f", "whisper_daemon.py"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` has identical blocks [INFO] [stdout] --> src/tray.rs:328:57 [INFO] [stdout] | [INFO] [stdout] 328 | if self.daemon_type == "faster-whisper" { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 329 | | std::fs::remove_file("/tmp/whisp-away-daemon.sock").ok(); [INFO] [stdout] 330 | | } else { [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] note: same as this [INFO] [stdout] --> src/tray.rs:330:24 [INFO] [stdout] | [INFO] [stdout] 330 | } else { [INFO] [stdout] | ________________________^ [INFO] [stdout] 331 | | std::fs::remove_file("/tmp/whisp-away-daemon.sock").ok(); [INFO] [stdout] 332 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stdout] = note: `#[warn(clippy::if_same_then_else)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/tray.rs:344:27 [INFO] [stdout] | [INFO] [stdout] 344 | .args(&[ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 345 | | "Voice Input", [INFO] [stdout] 346 | | &format!("⏹️ {} daemon stopped", self.daemon_type), [INFO] [stdout] 347 | | "-t", "3000", [INFO] [stdout] 348 | | ]) [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 344 ~ .args([ [INFO] [stdout] 345 + "Voice Input", [INFO] [stdout] 346 ~ &format!("⏹️ {} daemon stopped", self.daemon_type), [INFO] [stdout] 347 + "-t", "3000", [INFO] [stdout] 348 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/tray.rs:567:31 [INFO] [stdout] | [INFO] [stdout] 567 | .args(&[ [INFO] [stdout] | _______________________________^ [INFO] [stdout] 568 | | "Voice Input", [INFO] [stdout] 569 | | &format!("Output mode: {}", mode_text), [INFO] [stdout] 570 | | "-t", "2000", [INFO] [stdout] 571 | | ]) [INFO] [stdout] | |_________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 567 ~ .args([ [INFO] [stdout] 568 + "Voice Input", [INFO] [stdout] 569 + &format!("Output mode: {}", mode_text), [INFO] [stdout] 570 + "-t", "2000", [INFO] [stdout] 571 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/recording.rs:19:45 [INFO] [stdout] | [INFO] [stdout] 19 | if let Ok(pid_str) = fs::read_to_string(&pidfile) { [INFO] [stdout] | ^^^^^^^^ help: change this to: `pidfile` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/recording.rs:22:37 [INFO] [stdout] | [INFO] [stdout] 22 | let _ = fs::remove_file(&pidfile); [INFO] [stdout] | ^^^^^^^^ help: change this to: `pidfile` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/recording.rs:29:41 [INFO] [stdout] | [INFO] [stdout] 29 | let _ = fs::remove_file(&pidfile); [INFO] [stdout] | ^^^^^^^^ help: change this to: `pidfile` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/recording.rs:50:29 [INFO] [stdout] | [INFO] [stdout] 50 | let _ = fs::remove_file(&pidfile); [INFO] [stdout] | ^^^^^^^^ help: change this to: `pidfile` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/recording.rs:86:45 [INFO] [stdout] | [INFO] [stdout] 86 | if let Ok(pid_str) = fs::read_to_string(&pidfile) { [INFO] [stdout] | ^^^^^^^^ help: change this to: `pidfile` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/recording.rs:93:33 [INFO] [stdout] | [INFO] [stdout] 93 | let _ = fs::remove_file(&pidfile); [INFO] [stdout] | ^^^^^^^^ help: change this to: `pidfile` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/recording.rs:107:17 [INFO] [stdout] | [INFO] [stdout] 107 | / if name.starts_with("voice-recording-") && name.ends_with(".wav") { [INFO] [stdout] 108 | | if entry.path().to_str() != Some(&audio_file) { [INFO] [stdout] 109 | | let _ = fs::remove_file(entry.path()); [INFO] [stdout] 110 | | } [INFO] [stdout] 111 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] = note: `#[warn(clippy::collapsible_if)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 107 ~ if name.starts_with("voice-recording-") && name.ends_with(".wav") [INFO] [stdout] 108 ~ && entry.path().to_str() != Some(&audio_file) { [INFO] [stdout] 109 | let _ = fs::remove_file(entry.path()); [INFO] [stdout] 110 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/recording.rs:122:15 [INFO] [stdout] | [INFO] [stdout] 122 | .args(&[ [INFO] [stdout] | _______________^ [INFO] [stdout] 123 | | "--channels", "1", [INFO] [stdout] 124 | | "--rate", "16000", [INFO] [stdout] 125 | | "--format", "s16", [INFO] [stdout] 126 | | "--volume", "1.5", [INFO] [stdout] 127 | | &audio_file, [INFO] [stdout] 128 | | ]) [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 122 ~ .args([ [INFO] [stdout] 123 + "--channels", "1", [INFO] [stdout] 124 + "--rate", "16000", [INFO] [stdout] 125 + "--format", "s16", [INFO] [stdout] 126 + "--volume", "1.5", [INFO] [stdout] 127 + &audio_file, [INFO] [stdout] 128 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/recording.rs:132:15 [INFO] [stdout] | [INFO] [stdout] 132 | fs::write(&pidfile, child.id().to_string()) [INFO] [stdout] | ^^^^^^^^ help: change this to: `pidfile` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/recording.rs:141:15 [INFO] [stdout] | [INFO] [stdout] 141 | .args(&[ [INFO] [stdout] | _______________^ [INFO] [stdout] 142 | | "Voice Input", [INFO] [stdout] 143 | | &recording_msg, [INFO] [stdout] 144 | | "-t", "30000", [INFO] [stdout] 145 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 146 | | ]) [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 141 ~ .args([ [INFO] [stdout] 142 + "Voice Input", [INFO] [stdout] 143 + &recording_msg, [INFO] [stdout] 144 + "-t", "30000", [INFO] [stdout] 145 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 146 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/typing.rs:9:19 [INFO] [stdout] | [INFO] [stdout] 9 | .args(&[ [INFO] [stdout] | ___________________^ [INFO] [stdout] 10 | | "Voice Input", [INFO] [stdout] 11 | | &format!("⚠️ No speech detected\nBackend: {}", backend_name), [INFO] [stdout] 12 | | "-t", "2000", [INFO] [stdout] 13 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 14 | | ]) [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 9 ~ .args([ [INFO] [stdout] 10 + "Voice Input", [INFO] [stdout] 11 ~ &format!("⚠️ No speech detected\nBackend: {}", backend_name), [INFO] [stdout] 12 + "-t", "2000", [INFO] [stdout] 13 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 14 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/typing.rs:23:19 [INFO] [stdout] | [INFO] [stdout] 23 | .args(&[ [INFO] [stdout] | ___________________^ [INFO] [stdout] 24 | | "Voice Input", [INFO] [stdout] 25 | | &format!("✅ Copied to clipboard\nBackend: {}", backend_name), [INFO] [stdout] 26 | | "-t", "1000", [INFO] [stdout] 27 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 28 | | ]) [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 23 ~ .args([ [INFO] [stdout] 24 + "Voice Input", [INFO] [stdout] 25 ~ &format!("✅ Copied to clipboard\nBackend: {}", backend_name), [INFO] [stdout] 26 + "-t", "1000", [INFO] [stdout] 27 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 28 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/typing.rs:52:23 [INFO] [stdout] | [INFO] [stdout] 52 | .args(&[ [INFO] [stdout] | _______________________^ [INFO] [stdout] 53 | | "Voice Input", [INFO] [stdout] 54 | | &format!("✅ Transcribed\nBackend: {}", backend_name), [INFO] [stdout] 55 | | "-t", "1000", [INFO] [stdout] 56 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 57 | | ]) [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 52 ~ .args([ [INFO] [stdout] 53 + "Voice Input", [INFO] [stdout] 54 ~ &format!("✅ Transcribed\nBackend: {}", backend_name), [INFO] [stdout] 55 + "-t", "1000", [INFO] [stdout] 56 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 57 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/typing.rs:65:15 [INFO] [stdout] | [INFO] [stdout] 65 | .args(&["type", "--clearmodifiers", "--", text]) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `["type", "--clearmodifiers", "--", text]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/typing.rs:72:15 [INFO] [stdout] | [INFO] [stdout] 72 | .args(&[ [INFO] [stdout] | _______________^ [INFO] [stdout] 73 | | "Voice Input", [INFO] [stdout] 74 | | &format!("✅ Transcribed\nBackend: {}", backend_name), [INFO] [stdout] 75 | | "-t", "1000", [INFO] [stdout] 76 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 77 | | ]) [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 72 ~ .args([ [INFO] [stdout] 73 + "Voice Input", [INFO] [stdout] 74 ~ &format!("✅ Transcribed\nBackend: {}", backend_name), [INFO] [stdout] 75 + "-t", "1000", [INFO] [stdout] 76 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 77 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/typing.rs:105:15 [INFO] [stdout] | [INFO] [stdout] 105 | .args(&["-selection", "clipboard"]) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `["-selection", "clipboard"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/socket.rs:37:31 [INFO] [stdout] | [INFO] [stdout] 37 | .args(&[ [INFO] [stdout] | _______________________________^ [INFO] [stdout] 38 | | "Voice Input", [INFO] [stdout] 39 | | &format!("⚠️ Could not parse response\nBackend: {}", backend_name), [INFO] [stdout] 40 | | "-t", "2000", [INFO] [stdout] 41 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 42 | | ]) [INFO] [stdout] | |_________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 37 ~ .args([ [INFO] [stdout] 38 + "Voice Input", [INFO] [stdout] 39 ~ &format!("⚠️ Could not parse response\nBackend: {}", backend_name), [INFO] [stdout] 40 + "-t", "2000", [INFO] [stdout] 41 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 42 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/socket.rs:47:27 [INFO] [stdout] | [INFO] [stdout] 47 | .args(&[ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 48 | | "Voice Input", [INFO] [stdout] 49 | | &format!("❌ Transcription failed\nBackend: {}", backend_name), [INFO] [stdout] 50 | | "-t", "2000", [INFO] [stdout] 51 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 52 | | ]) [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 47 ~ .args([ [INFO] [stdout] 48 + "Voice Input", [INFO] [stdout] 49 ~ &format!("❌ Transcription failed\nBackend: {}", backend_name), [INFO] [stdout] 50 + "-t", "2000", [INFO] [stdout] 51 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 52 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: stripping a prefix manually [INFO] [stdout] --> src/socket.rs:72:32 [INFO] [stdout] | [INFO] [stdout] 72 | let text_content = &content_start[1..]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the prefix was tested here [INFO] [stdout] --> src/socket.rs:71:9 [INFO] [stdout] | [INFO] [stdout] 71 | if content_start.starts_with('"') { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_strip [INFO] [stdout] = note: `#[warn(clippy::manual_strip)]` on by default [INFO] [stdout] help: try using the `strip_prefix` method [INFO] [stdout] | [INFO] [stdout] 71 ~ if let Some(text_content) = content_start.strip_prefix('"') { [INFO] [stdout] 72 ~ if let Some(end_quote) = text_content.find('"') { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of `Option::map` [INFO] [stdout] --> src/socket.rs:73:13 [INFO] [stdout] | [INFO] [stdout] 73 | / if let Some(end_quote) = text_content.find('"') { [INFO] [stdout] 74 | | Some(text_content[..end_quote].to_string()) [INFO] [stdout] 75 | | } else { [INFO] [stdout] 76 | | None [INFO] [stdout] 77 | | } [INFO] [stdout] | |_____________^ help: try: `text_content.find('"').map(|end_quote| text_content[..end_quote].to_string())` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_map [INFO] [stdout] = note: `#[warn(clippy::manual_map)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/whisper_cpp/client.rs:13:23 [INFO] [stdout] | [INFO] [stdout] 13 | .args(&[ [INFO] [stdout] | _______________________^ [INFO] [stdout] 14 | | "Voice Input (whisper.cpp daemon)", [INFO] [stdout] 15 | | "❌ No recording found", [INFO] [stdout] 16 | | "-t", "2000", [INFO] [stdout] 17 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 18 | | ]) [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 13 ~ .args([ [INFO] [stdout] 14 + "Voice Input (whisper.cpp daemon)", [INFO] [stdout] 15 ~ "❌ No recording found", [INFO] [stdout] 16 + "-t", "2000", [INFO] [stdout] 17 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 18 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/whisper_cpp/client.rs:27:19 [INFO] [stdout] | [INFO] [stdout] 27 | .args(&[ [INFO] [stdout] | ___________________^ [INFO] [stdout] 28 | | "Voice Input (whisper.cpp daemon)", [INFO] [stdout] 29 | | "❌ No audio recorded", [INFO] [stdout] 30 | | "-t", "2000", [INFO] [stdout] 31 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 32 | | ]) [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 27 ~ .args([ [INFO] [stdout] 28 + "Voice Input (whisper.cpp daemon)", [INFO] [stdout] 29 ~ "❌ No audio recorded", [INFO] [stdout] 30 + "-t", "2000", [INFO] [stdout] 31 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 32 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/whisper_cpp/client.rs:40:23 [INFO] [stdout] | [INFO] [stdout] 40 | .args(&[ [INFO] [stdout] | _______________________^ [INFO] [stdout] 41 | | "Voice Input", [INFO] [stdout] 42 | | "❌ Audio file is empty\nBackend: whisper-cpp", [INFO] [stdout] 43 | | "-t", "2000", [INFO] [stdout] 44 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 45 | | ]) [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 40 ~ .args([ [INFO] [stdout] 41 + "Voice Input", [INFO] [stdout] 42 ~ "❌ Audio file is empty\nBackend: whisper-cpp", [INFO] [stdout] 43 + "-t", "2000", [INFO] [stdout] 44 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 45 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/whisper_cpp/client.rs:61:15 [INFO] [stdout] | [INFO] [stdout] 61 | .args(&[ [INFO] [stdout] | _______________^ [INFO] [stdout] 62 | | "Voice Input", [INFO] [stdout] 63 | | &transcribe_msg, [INFO] [stdout] 64 | | "-t", "2000", [INFO] [stdout] 65 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 66 | | ]) [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 61 ~ .args([ [INFO] [stdout] 62 + "Voice Input", [INFO] [stdout] 63 + &transcribe_msg, [INFO] [stdout] 64 + "-t", "2000", [INFO] [stdout] 65 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 66 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/whisper_cpp/client.rs:87:23 [INFO] [stdout] | [INFO] [stdout] 87 | .args(&[ [INFO] [stdout] | _______________________^ [INFO] [stdout] 88 | | "Voice Input", [INFO] [stdout] 89 | | &fallback_msg, [INFO] [stdout] 90 | | "-t", "2000", [INFO] [stdout] 91 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 92 | | ]) [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 87 ~ .args([ [INFO] [stdout] 88 + "Voice Input", [INFO] [stdout] 89 + &fallback_msg, [INFO] [stdout] 90 + "-t", "2000", [INFO] [stdout] 91 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 92 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/whisper_cpp/direct.rs:135:15 [INFO] [stdout] | [INFO] [stdout] 135 | .args(&[ [INFO] [stdout] | _______________^ [INFO] [stdout] 136 | | "Voice Input (whisper.cpp)", [INFO] [stdout] 137 | | &transcribe_msg, [INFO] [stdout] 138 | | "-t", "2000", [INFO] [stdout] 139 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 140 | | ]) [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 135 ~ .args([ [INFO] [stdout] 136 + "Voice Input (whisper.cpp)", [INFO] [stdout] 137 + &transcribe_msg, [INFO] [stdout] 138 + "-t", "2000", [INFO] [stdout] 139 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 140 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/whisper_cpp/direct.rs:148:15 [INFO] [stdout] | [INFO] [stdout] 148 | .args(&[ [INFO] [stdout] | _______________^ [INFO] [stdout] 149 | | "-m", &model_path, [INFO] [stdout] 150 | | "-f", audio_file, [INFO] [stdout] 151 | | "-t", "8", [INFO] [stdout] 152 | | "-np", [INFO] [stdout] 153 | | "-nt" [INFO] [stdout] 154 | | ]) [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 148 ~ .args([ [INFO] [stdout] 149 + "-m", &model_path, [INFO] [stdout] 150 + "-f", audio_file, [INFO] [stdout] 151 + "-t", "8", [INFO] [stdout] 152 + "-np", [INFO] [stdout] 153 + "-nt" [INFO] [stdout] 154 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/whisper_cpp/direct.rs:160:19 [INFO] [stdout] | [INFO] [stdout] 160 | .args(&[ [INFO] [stdout] | ___________________^ [INFO] [stdout] 161 | | "Voice Input (whisper.cpp)", [INFO] [stdout] 162 | | "❌ Transcription failed", [INFO] [stdout] 163 | | "-t", "2000", [INFO] [stdout] 164 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 165 | | ]) [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 160 ~ .args([ [INFO] [stdout] 161 + "Voice Input (whisper.cpp)", [INFO] [stdout] 162 ~ "❌ Transcription failed", [INFO] [stdout] 163 + "-t", "2000", [INFO] [stdout] 164 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 165 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/whisper_cpp/direct.rs:197:15 [INFO] [stdout] | [INFO] [stdout] 197 | .args(&[ [INFO] [stdout] | _______________^ [INFO] [stdout] 198 | | "Voice Input (whisper.cpp)", [INFO] [stdout] 199 | | &transcribe_msg, [INFO] [stdout] 200 | | "-t", "2000", [INFO] [stdout] 201 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 202 | | ]) [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 197 ~ .args([ [INFO] [stdout] 198 + "Voice Input (whisper.cpp)", [INFO] [stdout] 199 + &transcribe_msg, [INFO] [stdout] 200 + "-t", "2000", [INFO] [stdout] 201 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 202 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `check_daemon_process_status` and `check_daemon_status` are never used [INFO] [stdout] --> src/tray.rs:360:8 [INFO] [stdout] | [INFO] [stdout] 48 | impl VoiceInputTray { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 360 | fn check_daemon_process_status(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 380 | async fn check_daemon_status(&self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `type_text` is never used [INFO] [stdout] --> src/typing.rs:122:8 [INFO] [stdout] | [INFO] [stdout] 122 | pub fn type_text(text: &str, backend_name: &str) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/whisper_cpp/direct.rs:212:23 [INFO] [stdout] | [INFO] [stdout] 212 | .args(&[ [INFO] [stdout] | _______________________^ [INFO] [stdout] 213 | | "Voice Input (whisper.cpp)", [INFO] [stdout] 214 | | "❌ Model file not found", [INFO] [stdout] 215 | | "-t", "2000", [INFO] [stdout] 216 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 217 | | ]) [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 212 ~ .args([ [INFO] [stdout] 213 + "Voice Input (whisper.cpp)", [INFO] [stdout] 214 ~ "❌ Model file not found", [INFO] [stdout] 215 + "-t", "2000", [INFO] [stdout] 216 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 217 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `write_config` is never used [INFO] [stdout] --> src/config.rs:73:8 [INFO] [stdout] | [INFO] [stdout] 73 | pub fn write_config(config: &Config) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/faster_whisper/client.rs:13:23 [INFO] [stdout] | [INFO] [stdout] 13 | .args(&[ [INFO] [stdout] | _______________________^ [INFO] [stdout] 14 | | "Voice Input (daemon)", [INFO] [stdout] 15 | | "❌ No recording found", [INFO] [stdout] 16 | | "-t", "2000", [INFO] [stdout] 17 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 18 | | ]) [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 13 ~ .args([ [INFO] [stdout] 14 + "Voice Input (daemon)", [INFO] [stdout] 15 ~ "❌ No recording found", [INFO] [stdout] 16 + "-t", "2000", [INFO] [stdout] 17 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 18 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/faster_whisper/client.rs:27:23 [INFO] [stdout] | [INFO] [stdout] 27 | .args(&[ [INFO] [stdout] | _______________________^ [INFO] [stdout] 28 | | "Voice Input", [INFO] [stdout] 29 | | "❌ No audio recorded\nBackend: faster-whisper", [INFO] [stdout] 30 | | "-t", "2000", [INFO] [stdout] 31 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 32 | | ]) [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 27 ~ .args([ [INFO] [stdout] 28 + "Voice Input", [INFO] [stdout] 29 ~ "❌ No audio recorded\nBackend: faster-whisper", [INFO] [stdout] 30 + "-t", "2000", [INFO] [stdout] 31 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 32 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/faster_whisper/client.rs:40:23 [INFO] [stdout] | [INFO] [stdout] 40 | .args(&[ [INFO] [stdout] | _______________________^ [INFO] [stdout] 41 | | "Voice Input", [INFO] [stdout] 42 | | "❌ Audio file is empty\nBackend: faster-whisper", [INFO] [stdout] 43 | | "-t", "2000", [INFO] [stdout] 44 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 45 | | ]) [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 40 ~ .args([ [INFO] [stdout] 41 + "Voice Input", [INFO] [stdout] 42 ~ "❌ Audio file is empty\nBackend: faster-whisper", [INFO] [stdout] 43 + "-t", "2000", [INFO] [stdout] 44 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 45 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/faster_whisper/client.rs:58:15 [INFO] [stdout] | [INFO] [stdout] 58 | .args(&[ [INFO] [stdout] | _______________^ [INFO] [stdout] 59 | | "Voice Input", [INFO] [stdout] 60 | | &transcribe_msg, [INFO] [stdout] 61 | | "-t", "2000", [INFO] [stdout] 62 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 63 | | ]) [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 58 ~ .args([ [INFO] [stdout] 59 + "Voice Input", [INFO] [stdout] 60 + &transcribe_msg, [INFO] [stdout] 61 + "-t", "2000", [INFO] [stdout] 62 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 63 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/faster_whisper/client.rs:72:23 [INFO] [stdout] | [INFO] [stdout] 72 | .args(&[ [INFO] [stdout] | _______________________^ [INFO] [stdout] 73 | | "Voice Input (daemon)", [INFO] [stdout] 74 | | "⚠️ Daemon not running, using direct mode", [INFO] [stdout] 75 | | "-t", "2000", [INFO] [stdout] 76 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 77 | | ]) [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 72 ~ .args([ [INFO] [stdout] 73 + "Voice Input (daemon)", [INFO] [stdout] 74 ~ "⚠️ Daemon not running, using direct mode", [INFO] [stdout] 75 + "-t", "2000", [INFO] [stdout] 76 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 77 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/faster_whisper/direct.rs:11:15 [INFO] [stdout] | [INFO] [stdout] 11 | .args(&[ [INFO] [stdout] | _______________^ [INFO] [stdout] 12 | | "Voice Input (faster-whisper)", [INFO] [stdout] 13 | | &transcribe_msg, [INFO] [stdout] 14 | | "-t", "2000", [INFO] [stdout] 15 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 16 | | ]) [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 11 ~ .args([ [INFO] [stdout] 12 + "Voice Input (faster-whisper)", [INFO] [stdout] 13 + &transcribe_msg, [INFO] [stdout] 14 + "-t", "2000", [INFO] [stdout] 15 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 16 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/faster_whisper/direct.rs:28:15 [INFO] [stdout] | [INFO] [stdout] 28 | .args(&[audio_file, model]) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: change this to: `[audio_file, model]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/faster_whisper/direct.rs:40:29 [INFO] [stdout] | [INFO] [stdout] 40 | typing::output_text(&clean_text, use_clipboard, "faster-whisper")?; [INFO] [stdout] | ^^^^^^^^^^^ help: change this to: `clean_text` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/faster_whisper/direct.rs:43:19 [INFO] [stdout] | [INFO] [stdout] 43 | .args(&[ [INFO] [stdout] | ___________________^ [INFO] [stdout] 44 | | "Voice Input (faster-whisper)", [INFO] [stdout] 45 | | "❌ Transcription failed", [INFO] [stdout] 46 | | "-t", "2000", [INFO] [stdout] 47 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 48 | | ]) [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 43 ~ .args([ [INFO] [stdout] 44 + "Voice Input (faster-whisper)", [INFO] [stdout] 45 ~ "❌ Transcription failed", [INFO] [stdout] 46 + "-t", "2000", [INFO] [stdout] 47 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 48 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/tray.rs:80:23 [INFO] [stdout] | [INFO] [stdout] 80 | .args(&["-f", "whisper_daemon.py"]) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `["-f", "whisper_daemon.py"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] = note: `#[warn(clippy::needless_borrows_for_generic_args)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/tray.rs:165:39 [INFO] [stdout] | [INFO] [stdout] 165 | ... .args(&[ [INFO] [stdout] | _____________________________^ [INFO] [stdout] 166 | | ... "Voice Input", [INFO] [stdout] 167 | | ... &format!("⚠️ Model {} not found. Please download it manually:\ndownload-whisper-model {}", model, model), [INFO] [stdout] 168 | | ... "-t", "10000", [INFO] [stdout] 169 | | ... "-u", "critical" [INFO] [stdout] 170 | | ... ]) [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 165 ~ .args([ [INFO] [stdout] 166 + "Voice Input", [INFO] [stdout] 167 ~ &format!("⚠️ Model {} not found. Please download it manually:\ndownload-whisper-model {}", model, model), [INFO] [stdout] 168 + "-t", "10000", [INFO] [stdout] 169 + "-u", "critical" [INFO] [stdout] 170 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/tray.rs:253:23 [INFO] [stdout] | [INFO] [stdout] 253 | .args(&[ [INFO] [stdout] | _______________________^ [INFO] [stdout] 254 | | "Voice Input", [INFO] [stdout] 255 | | &format!("✅ {} daemon started ({})", self.daemon_type, acceleration), [INFO] [stdout] 256 | | "-t", "3000", [INFO] [stdout] 257 | | ]) [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 253 ~ .args([ [INFO] [stdout] 254 + "Voice Input", [INFO] [stdout] 255 ~ &format!("✅ {} daemon started ({})", self.daemon_type, acceleration), [INFO] [stdout] 256 + "-t", "3000", [INFO] [stdout] 257 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/tray.rs:277:31 [INFO] [stdout] | [INFO] [stdout] 277 | .args(&["-f", "whisper_daemon.py"]) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `["-f", "whisper_daemon.py"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/tray.rs:282:31 [INFO] [stdout] | [INFO] [stdout] 282 | .args(&["-f", "/tmp/whisp-away-daemon.sock"]) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `["-f", "/tmp/whisp-away-daemon.sock"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/tray.rs:312:39 [INFO] [stdout] | [INFO] [stdout] 312 | ... .args(&["-9", "-f", "whisper_daemon.py"]) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `["-9", "-f", "whisper_daemon.py"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/tray.rs:321:39 [INFO] [stdout] | [INFO] [stdout] 321 | ... .args(&["-f", "whisper_daemon.py"]) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `["-f", "whisper_daemon.py"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` has identical blocks [INFO] [stdout] --> src/tray.rs:328:57 [INFO] [stdout] | [INFO] [stdout] 328 | if self.daemon_type == "faster-whisper" { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 329 | | std::fs::remove_file("/tmp/whisp-away-daemon.sock").ok(); [INFO] [stdout] 330 | | } else { [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] note: same as this [INFO] [stdout] --> src/tray.rs:330:24 [INFO] [stdout] | [INFO] [stdout] 330 | } else { [INFO] [stdout] | ________________________^ [INFO] [stdout] 331 | | std::fs::remove_file("/tmp/whisp-away-daemon.sock").ok(); [INFO] [stdout] 332 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stdout] = note: `#[warn(clippy::if_same_then_else)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/tray.rs:344:27 [INFO] [stdout] | [INFO] [stdout] 344 | .args(&[ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 345 | | "Voice Input", [INFO] [stdout] 346 | | &format!("⏹️ {} daemon stopped", self.daemon_type), [INFO] [stdout] 347 | | "-t", "3000", [INFO] [stdout] 348 | | ]) [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 344 ~ .args([ [INFO] [stdout] 345 + "Voice Input", [INFO] [stdout] 346 ~ &format!("⏹️ {} daemon stopped", self.daemon_type), [INFO] [stdout] 347 + "-t", "3000", [INFO] [stdout] 348 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/tray.rs:567:31 [INFO] [stdout] | [INFO] [stdout] 567 | .args(&[ [INFO] [stdout] | _______________________________^ [INFO] [stdout] 568 | | "Voice Input", [INFO] [stdout] 569 | | &format!("Output mode: {}", mode_text), [INFO] [stdout] 570 | | "-t", "2000", [INFO] [stdout] 571 | | ]) [INFO] [stdout] | |_________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 567 ~ .args([ [INFO] [stdout] 568 + "Voice Input", [INFO] [stdout] 569 + &format!("Output mode: {}", mode_text), [INFO] [stdout] 570 + "-t", "2000", [INFO] [stdout] 571 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/tray.rs:705:5 [INFO] [stdout] | [INFO] [stdout] 705 | service.run(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 705 | let _ = service.run(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/recording.rs:19:45 [INFO] [stdout] | [INFO] [stdout] 19 | if let Ok(pid_str) = fs::read_to_string(&pidfile) { [INFO] [stdout] | ^^^^^^^^ help: change this to: `pidfile` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/recording.rs:22:37 [INFO] [stdout] | [INFO] [stdout] 22 | let _ = fs::remove_file(&pidfile); [INFO] [stdout] | ^^^^^^^^ help: change this to: `pidfile` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/recording.rs:29:41 [INFO] [stdout] | [INFO] [stdout] 29 | let _ = fs::remove_file(&pidfile); [INFO] [stdout] | ^^^^^^^^ help: change this to: `pidfile` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/recording.rs:50:29 [INFO] [stdout] | [INFO] [stdout] 50 | let _ = fs::remove_file(&pidfile); [INFO] [stdout] | ^^^^^^^^ help: change this to: `pidfile` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/recording.rs:86:45 [INFO] [stdout] | [INFO] [stdout] 86 | if let Ok(pid_str) = fs::read_to_string(&pidfile) { [INFO] [stdout] | ^^^^^^^^ help: change this to: `pidfile` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/recording.rs:93:33 [INFO] [stdout] | [INFO] [stdout] 93 | let _ = fs::remove_file(&pidfile); [INFO] [stdout] | ^^^^^^^^ help: change this to: `pidfile` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/recording.rs:107:17 [INFO] [stdout] | [INFO] [stdout] 107 | / if name.starts_with("voice-recording-") && name.ends_with(".wav") { [INFO] [stdout] 108 | | if entry.path().to_str() != Some(&audio_file) { [INFO] [stdout] 109 | | let _ = fs::remove_file(entry.path()); [INFO] [stdout] 110 | | } [INFO] [stdout] 111 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] = note: `#[warn(clippy::collapsible_if)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 107 ~ if name.starts_with("voice-recording-") && name.ends_with(".wav") [INFO] [stdout] 108 ~ && entry.path().to_str() != Some(&audio_file) { [INFO] [stdout] 109 | let _ = fs::remove_file(entry.path()); [INFO] [stdout] 110 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/recording.rs:122:15 [INFO] [stdout] | [INFO] [stdout] 122 | .args(&[ [INFO] [stdout] | _______________^ [INFO] [stdout] 123 | | "--channels", "1", [INFO] [stdout] 124 | | "--rate", "16000", [INFO] [stdout] 125 | | "--format", "s16", [INFO] [stdout] 126 | | "--volume", "1.5", [INFO] [stdout] 127 | | &audio_file, [INFO] [stdout] 128 | | ]) [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 122 ~ .args([ [INFO] [stdout] 123 + "--channels", "1", [INFO] [stdout] 124 + "--rate", "16000", [INFO] [stdout] 125 + "--format", "s16", [INFO] [stdout] 126 + "--volume", "1.5", [INFO] [stdout] 127 + &audio_file, [INFO] [stdout] 128 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/recording.rs:132:15 [INFO] [stdout] | [INFO] [stdout] 132 | fs::write(&pidfile, child.id().to_string()) [INFO] [stdout] | ^^^^^^^^ help: change this to: `pidfile` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/recording.rs:141:15 [INFO] [stdout] | [INFO] [stdout] 141 | .args(&[ [INFO] [stdout] | _______________^ [INFO] [stdout] 142 | | "Voice Input", [INFO] [stdout] 143 | | &recording_msg, [INFO] [stdout] 144 | | "-t", "30000", [INFO] [stdout] 145 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 146 | | ]) [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 141 ~ .args([ [INFO] [stdout] 142 + "Voice Input", [INFO] [stdout] 143 + &recording_msg, [INFO] [stdout] 144 + "-t", "30000", [INFO] [stdout] 145 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 146 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/typing.rs:9:19 [INFO] [stdout] | [INFO] [stdout] 9 | .args(&[ [INFO] [stdout] | ___________________^ [INFO] [stdout] 10 | | "Voice Input", [INFO] [stdout] 11 | | &format!("⚠️ No speech detected\nBackend: {}", backend_name), [INFO] [stdout] 12 | | "-t", "2000", [INFO] [stdout] 13 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 14 | | ]) [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 9 ~ .args([ [INFO] [stdout] 10 + "Voice Input", [INFO] [stdout] 11 ~ &format!("⚠️ No speech detected\nBackend: {}", backend_name), [INFO] [stdout] 12 + "-t", "2000", [INFO] [stdout] 13 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 14 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/typing.rs:23:19 [INFO] [stdout] | [INFO] [stdout] 23 | .args(&[ [INFO] [stdout] | ___________________^ [INFO] [stdout] 24 | | "Voice Input", [INFO] [stdout] 25 | | &format!("✅ Copied to clipboard\nBackend: {}", backend_name), [INFO] [stdout] 26 | | "-t", "1000", [INFO] [stdout] 27 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 28 | | ]) [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 23 ~ .args([ [INFO] [stdout] 24 + "Voice Input", [INFO] [stdout] 25 ~ &format!("✅ Copied to clipboard\nBackend: {}", backend_name), [INFO] [stdout] 26 + "-t", "1000", [INFO] [stdout] 27 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 28 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/typing.rs:52:23 [INFO] [stdout] | [INFO] [stdout] 52 | .args(&[ [INFO] [stdout] | _______________________^ [INFO] [stdout] 53 | | "Voice Input", [INFO] [stdout] 54 | | &format!("✅ Transcribed\nBackend: {}", backend_name), [INFO] [stdout] 55 | | "-t", "1000", [INFO] [stdout] 56 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 57 | | ]) [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 52 ~ .args([ [INFO] [stdout] 53 + "Voice Input", [INFO] [stdout] 54 ~ &format!("✅ Transcribed\nBackend: {}", backend_name), [INFO] [stdout] 55 + "-t", "1000", [INFO] [stdout] 56 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 57 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/typing.rs:65:15 [INFO] [stdout] | [INFO] [stdout] 65 | .args(&["type", "--clearmodifiers", "--", text]) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `["type", "--clearmodifiers", "--", text]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/typing.rs:72:15 [INFO] [stdout] | [INFO] [stdout] 72 | .args(&[ [INFO] [stdout] | _______________^ [INFO] [stdout] 73 | | "Voice Input", [INFO] [stdout] 74 | | &format!("✅ Transcribed\nBackend: {}", backend_name), [INFO] [stdout] 75 | | "-t", "1000", [INFO] [stdout] 76 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 77 | | ]) [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 72 ~ .args([ [INFO] [stdout] 73 + "Voice Input", [INFO] [stdout] 74 ~ &format!("✅ Transcribed\nBackend: {}", backend_name), [INFO] [stdout] 75 + "-t", "1000", [INFO] [stdout] 76 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 77 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/typing.rs:105:15 [INFO] [stdout] | [INFO] [stdout] 105 | .args(&["-selection", "clipboard"]) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `["-selection", "clipboard"]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/socket.rs:37:31 [INFO] [stdout] | [INFO] [stdout] 37 | .args(&[ [INFO] [stdout] | _______________________________^ [INFO] [stdout] 38 | | "Voice Input", [INFO] [stdout] 39 | | &format!("⚠️ Could not parse response\nBackend: {}", backend_name), [INFO] [stdout] 40 | | "-t", "2000", [INFO] [stdout] 41 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 42 | | ]) [INFO] [stdout] | |_________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 37 ~ .args([ [INFO] [stdout] 38 + "Voice Input", [INFO] [stdout] 39 ~ &format!("⚠️ Could not parse response\nBackend: {}", backend_name), [INFO] [stdout] 40 + "-t", "2000", [INFO] [stdout] 41 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 42 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/socket.rs:47:27 [INFO] [stdout] | [INFO] [stdout] 47 | .args(&[ [INFO] [stdout] | ___________________________^ [INFO] [stdout] 48 | | "Voice Input", [INFO] [stdout] 49 | | &format!("❌ Transcription failed\nBackend: {}", backend_name), [INFO] [stdout] 50 | | "-t", "2000", [INFO] [stdout] 51 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 52 | | ]) [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 47 ~ .args([ [INFO] [stdout] 48 + "Voice Input", [INFO] [stdout] 49 ~ &format!("❌ Transcription failed\nBackend: {}", backend_name), [INFO] [stdout] 50 + "-t", "2000", [INFO] [stdout] 51 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 52 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: stripping a prefix manually [INFO] [stdout] --> src/socket.rs:72:32 [INFO] [stdout] | [INFO] [stdout] 72 | let text_content = &content_start[1..]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the prefix was tested here [INFO] [stdout] --> src/socket.rs:71:9 [INFO] [stdout] | [INFO] [stdout] 71 | if content_start.starts_with('"') { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_strip [INFO] [stdout] = note: `#[warn(clippy::manual_strip)]` on by default [INFO] [stdout] help: try using the `strip_prefix` method [INFO] [stdout] | [INFO] [stdout] 71 ~ if let Some(text_content) = content_start.strip_prefix('"') { [INFO] [stdout] 72 ~ if let Some(end_quote) = text_content.find('"') { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of `Option::map` [INFO] [stdout] --> src/socket.rs:73:13 [INFO] [stdout] | [INFO] [stdout] 73 | / if let Some(end_quote) = text_content.find('"') { [INFO] [stdout] 74 | | Some(text_content[..end_quote].to_string()) [INFO] [stdout] 75 | | } else { [INFO] [stdout] 76 | | None [INFO] [stdout] 77 | | } [INFO] [stdout] | |_____________^ help: try: `text_content.find('"').map(|end_quote| text_content[..end_quote].to_string())` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_map [INFO] [stdout] = note: `#[warn(clippy::manual_map)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/whisper_cpp/client.rs:13:23 [INFO] [stdout] | [INFO] [stdout] 13 | .args(&[ [INFO] [stdout] | _______________________^ [INFO] [stdout] 14 | | "Voice Input (whisper.cpp daemon)", [INFO] [stdout] 15 | | "❌ No recording found", [INFO] [stdout] 16 | | "-t", "2000", [INFO] [stdout] 17 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 18 | | ]) [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 13 ~ .args([ [INFO] [stdout] 14 + "Voice Input (whisper.cpp daemon)", [INFO] [stdout] 15 ~ "❌ No recording found", [INFO] [stdout] 16 + "-t", "2000", [INFO] [stdout] 17 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 18 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/whisper_cpp/client.rs:27:19 [INFO] [stdout] | [INFO] [stdout] 27 | .args(&[ [INFO] [stdout] | ___________________^ [INFO] [stdout] 28 | | "Voice Input (whisper.cpp daemon)", [INFO] [stdout] 29 | | "❌ No audio recorded", [INFO] [stdout] 30 | | "-t", "2000", [INFO] [stdout] 31 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 32 | | ]) [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 27 ~ .args([ [INFO] [stdout] 28 + "Voice Input (whisper.cpp daemon)", [INFO] [stdout] 29 ~ "❌ No audio recorded", [INFO] [stdout] 30 + "-t", "2000", [INFO] [stdout] 31 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 32 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/whisper_cpp/client.rs:40:23 [INFO] [stdout] | [INFO] [stdout] 40 | .args(&[ [INFO] [stdout] | _______________________^ [INFO] [stdout] 41 | | "Voice Input", [INFO] [stdout] 42 | | "❌ Audio file is empty\nBackend: whisper-cpp", [INFO] [stdout] 43 | | "-t", "2000", [INFO] [stdout] 44 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 45 | | ]) [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 40 ~ .args([ [INFO] [stdout] 41 + "Voice Input", [INFO] [stdout] 42 ~ "❌ Audio file is empty\nBackend: whisper-cpp", [INFO] [stdout] 43 + "-t", "2000", [INFO] [stdout] 44 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 45 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/whisper_cpp/client.rs:61:15 [INFO] [stdout] | [INFO] [stdout] 61 | .args(&[ [INFO] [stdout] | _______________^ [INFO] [stdout] 62 | | "Voice Input", [INFO] [stdout] 63 | | &transcribe_msg, [INFO] [stdout] 64 | | "-t", "2000", [INFO] [stdout] 65 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 66 | | ]) [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 61 ~ .args([ [INFO] [stdout] 62 + "Voice Input", [INFO] [stdout] 63 + &transcribe_msg, [INFO] [stdout] 64 + "-t", "2000", [INFO] [stdout] 65 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 66 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/whisper_cpp/client.rs:87:23 [INFO] [stdout] | [INFO] [stdout] 87 | .args(&[ [INFO] [stdout] | _______________________^ [INFO] [stdout] 88 | | "Voice Input", [INFO] [stdout] 89 | | &fallback_msg, [INFO] [stdout] 90 | | "-t", "2000", [INFO] [stdout] 91 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 92 | | ]) [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 87 ~ .args([ [INFO] [stdout] 88 + "Voice Input", [INFO] [stdout] 89 + &fallback_msg, [INFO] [stdout] 90 + "-t", "2000", [INFO] [stdout] 91 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 92 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/whisper_cpp/direct.rs:135:15 [INFO] [stdout] | [INFO] [stdout] 135 | .args(&[ [INFO] [stdout] | _______________^ [INFO] [stdout] 136 | | "Voice Input (whisper.cpp)", [INFO] [stdout] 137 | | &transcribe_msg, [INFO] [stdout] 138 | | "-t", "2000", [INFO] [stdout] 139 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 140 | | ]) [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 135 ~ .args([ [INFO] [stdout] 136 + "Voice Input (whisper.cpp)", [INFO] [stdout] 137 + &transcribe_msg, [INFO] [stdout] 138 + "-t", "2000", [INFO] [stdout] 139 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 140 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/whisper_cpp/direct.rs:148:15 [INFO] [stdout] | [INFO] [stdout] 148 | .args(&[ [INFO] [stdout] | _______________^ [INFO] [stdout] 149 | | "-m", &model_path, [INFO] [stdout] 150 | | "-f", audio_file, [INFO] [stdout] 151 | | "-t", "8", [INFO] [stdout] 152 | | "-np", [INFO] [stdout] 153 | | "-nt" [INFO] [stdout] 154 | | ]) [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 148 ~ .args([ [INFO] [stdout] 149 + "-m", &model_path, [INFO] [stdout] 150 + "-f", audio_file, [INFO] [stdout] 151 + "-t", "8", [INFO] [stdout] 152 + "-np", [INFO] [stdout] 153 + "-nt" [INFO] [stdout] 154 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/whisper_cpp/direct.rs:160:19 [INFO] [stdout] | [INFO] [stdout] 160 | .args(&[ [INFO] [stdout] | ___________________^ [INFO] [stdout] 161 | | "Voice Input (whisper.cpp)", [INFO] [stdout] 162 | | "❌ Transcription failed", [INFO] [stdout] 163 | | "-t", "2000", [INFO] [stdout] 164 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 165 | | ]) [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 160 ~ .args([ [INFO] [stdout] 161 + "Voice Input (whisper.cpp)", [INFO] [stdout] 162 ~ "❌ Transcription failed", [INFO] [stdout] 163 + "-t", "2000", [INFO] [stdout] 164 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 165 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/whisper_cpp/direct.rs:197:15 [INFO] [stdout] | [INFO] [stdout] 197 | .args(&[ [INFO] [stdout] | _______________^ [INFO] [stdout] 198 | | "Voice Input (whisper.cpp)", [INFO] [stdout] 199 | | &transcribe_msg, [INFO] [stdout] 200 | | "-t", "2000", [INFO] [stdout] 201 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 202 | | ]) [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 197 ~ .args([ [INFO] [stdout] 198 + "Voice Input (whisper.cpp)", [INFO] [stdout] 199 + &transcribe_msg, [INFO] [stdout] 200 + "-t", "2000", [INFO] [stdout] 201 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 202 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/whisper_cpp/direct.rs:212:23 [INFO] [stdout] | [INFO] [stdout] 212 | .args(&[ [INFO] [stdout] | _______________________^ [INFO] [stdout] 213 | | "Voice Input (whisper.cpp)", [INFO] [stdout] 214 | | "❌ Model file not found", [INFO] [stdout] 215 | | "-t", "2000", [INFO] [stdout] 216 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 217 | | ]) [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 212 ~ .args([ [INFO] [stdout] 213 + "Voice Input (whisper.cpp)", [INFO] [stdout] 214 ~ "❌ Model file not found", [INFO] [stdout] 215 + "-t", "2000", [INFO] [stdout] 216 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 217 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/faster_whisper/client.rs:13:23 [INFO] [stdout] | [INFO] [stdout] 13 | .args(&[ [INFO] [stdout] | _______________________^ [INFO] [stdout] 14 | | "Voice Input (daemon)", [INFO] [stdout] 15 | | "❌ No recording found", [INFO] [stdout] 16 | | "-t", "2000", [INFO] [stdout] 17 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 18 | | ]) [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 13 ~ .args([ [INFO] [stdout] 14 + "Voice Input (daemon)", [INFO] [stdout] 15 ~ "❌ No recording found", [INFO] [stdout] 16 + "-t", "2000", [INFO] [stdout] 17 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 18 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/faster_whisper/client.rs:27:23 [INFO] [stdout] | [INFO] [stdout] 27 | .args(&[ [INFO] [stdout] | _______________________^ [INFO] [stdout] 28 | | "Voice Input", [INFO] [stdout] 29 | | "❌ No audio recorded\nBackend: faster-whisper", [INFO] [stdout] 30 | | "-t", "2000", [INFO] [stdout] 31 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 32 | | ]) [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 27 ~ .args([ [INFO] [stdout] 28 + "Voice Input", [INFO] [stdout] 29 ~ "❌ No audio recorded\nBackend: faster-whisper", [INFO] [stdout] 30 + "-t", "2000", [INFO] [stdout] 31 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 32 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/faster_whisper/client.rs:40:23 [INFO] [stdout] | [INFO] [stdout] 40 | .args(&[ [INFO] [stdout] | _______________________^ [INFO] [stdout] 41 | | "Voice Input", [INFO] [stdout] 42 | | "❌ Audio file is empty\nBackend: faster-whisper", [INFO] [stdout] 43 | | "-t", "2000", [INFO] [stdout] 44 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 45 | | ]) [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 40 ~ .args([ [INFO] [stdout] 41 + "Voice Input", [INFO] [stdout] 42 ~ "❌ Audio file is empty\nBackend: faster-whisper", [INFO] [stdout] 43 + "-t", "2000", [INFO] [stdout] 44 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 45 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/faster_whisper/client.rs:58:15 [INFO] [stdout] | [INFO] [stdout] 58 | .args(&[ [INFO] [stdout] | _______________^ [INFO] [stdout] 59 | | "Voice Input", [INFO] [stdout] 60 | | &transcribe_msg, [INFO] [stdout] 61 | | "-t", "2000", [INFO] [stdout] 62 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 63 | | ]) [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 58 ~ .args([ [INFO] [stdout] 59 + "Voice Input", [INFO] [stdout] 60 + &transcribe_msg, [INFO] [stdout] 61 + "-t", "2000", [INFO] [stdout] 62 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 63 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/faster_whisper/client.rs:72:23 [INFO] [stdout] | [INFO] [stdout] 72 | .args(&[ [INFO] [stdout] | _______________________^ [INFO] [stdout] 73 | | "Voice Input (daemon)", [INFO] [stdout] 74 | | "⚠️ Daemon not running, using direct mode", [INFO] [stdout] 75 | | "-t", "2000", [INFO] [stdout] 76 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 77 | | ]) [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 72 ~ .args([ [INFO] [stdout] 73 + "Voice Input (daemon)", [INFO] [stdout] 74 ~ "⚠️ Daemon not running, using direct mode", [INFO] [stdout] 75 + "-t", "2000", [INFO] [stdout] 76 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 77 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/faster_whisper/direct.rs:11:15 [INFO] [stdout] | [INFO] [stdout] 11 | .args(&[ [INFO] [stdout] | _______________^ [INFO] [stdout] 12 | | "Voice Input (faster-whisper)", [INFO] [stdout] 13 | | &transcribe_msg, [INFO] [stdout] 14 | | "-t", "2000", [INFO] [stdout] 15 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 16 | | ]) [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 11 ~ .args([ [INFO] [stdout] 12 + "Voice Input (faster-whisper)", [INFO] [stdout] 13 + &transcribe_msg, [INFO] [stdout] 14 + "-t", "2000", [INFO] [stdout] 15 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 16 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/faster_whisper/direct.rs:28:15 [INFO] [stdout] | [INFO] [stdout] 28 | .args(&[audio_file, model]) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: change this to: `[audio_file, model]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/faster_whisper/direct.rs:40:29 [INFO] [stdout] | [INFO] [stdout] 40 | typing::output_text(&clean_text, use_clipboard, "faster-whisper")?; [INFO] [stdout] | ^^^^^^^^^^^ help: change this to: `clean_text` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/faster_whisper/direct.rs:43:19 [INFO] [stdout] | [INFO] [stdout] 43 | .args(&[ [INFO] [stdout] | ___________________^ [INFO] [stdout] 44 | | "Voice Input (faster-whisper)", [INFO] [stdout] 45 | | "❌ Transcription failed", [INFO] [stdout] 46 | | "-t", "2000", [INFO] [stdout] 47 | | "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 48 | | ]) [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 43 ~ .args([ [INFO] [stdout] 44 + "Voice Input (faster-whisper)", [INFO] [stdout] 45 ~ "❌ Transcription failed", [INFO] [stdout] 46 + "-t", "2000", [INFO] [stdout] 47 + "-h", "string:x-canonical-private-synchronous:voice" [INFO] [stdout] 48 ~ ]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/tray.rs:705:5 [INFO] [stdout] | [INFO] [stdout] 705 | service.run(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 705 | let _ = service.run(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 31s [INFO] running `Command { std: "docker" "inspect" "0a8f331e34100617df81823518344d5b0407bd0cdf443712cbb7516f140d2b1d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0a8f331e34100617df81823518344d5b0407bd0cdf443712cbb7516f140d2b1d", kill_on_drop: false }` [INFO] [stdout] 0a8f331e34100617df81823518344d5b0407bd0cdf443712cbb7516f140d2b1d