[INFO] cloning repository https://github.com/jwliles/smv
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jwliles/smv" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjwliles%2Fsmv", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjwliles%2Fsmv'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 2f362a8a1b1d20e6bfa776604aee639133c75ea2
[INFO] checking jwliles/smv against eca445e5ae4a6679cc27d3a09106ce245e13a5a6 for pr-162478
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjwliles%2Fsmv" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/jwliles/smv
[INFO] finished tweaking git repo https://github.com/jwliles/smv
[INFO] tweaked toml for git repo https://github.com/jwliles/smv written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/jwliles/smv on toolchain eca445e5ae4a6679cc27d3a09106ce245e13a5a6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/jwliles/smv 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" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: explicit `package.readme` can be inferred
[INFO] [stderr]   --> Cargo.toml:48:1
[INFO] [stderr]    |
[INFO] [stderr] 48 | readme = "README.md"
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::manual_readme` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.readme`
[INFO] [stderr] warning: `smv` (manifest) generated 1 warning
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded timer v0.2.0
[INFO] [stderr]   Downloaded defer-drop v1.3.0
[INFO] [stderr]   Downloaded skim v0.10.4
[INFO] [stderr]   Downloaded fd-lock v3.0.13
[INFO] [stderr]   Downloaded tuikit v0.5.0
[INFO] [stderr]   Downloaded rustyline v12.0.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 6253cd8ff98032340595baab159cb0eb68a6c07cf5d32487be6f650ef36ebac3
[INFO] running `Command { std: "docker" "start" "6253cd8ff98032340595baab159cb0eb68a6c07cf5d32487be6f650ef36ebac3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6253cd8ff98032340595baab159cb0eb68a6c07cf5d32487be6f650ef36ebac3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "6253cd8ff98032340595baab159cb0eb68a6c07cf5d32487be6f650ef36ebac3" "/opt/rustwide/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6253cd8ff98032340595baab159cb0eb68a6c07cf5d32487be6f650ef36ebac3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "6253cd8ff98032340595baab159cb0eb68a6c07cf5d32487be6f650ef36ebac3" "/opt/rustwide/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: explicit `package.readme` can be inferred
[INFO] [stderr]   --> Cargo.toml:48:1
[INFO] [stderr]    |
[INFO] [stderr] 48 | readme = "README.md"
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::manual_readme` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.readme`
[INFO] [stderr] warning: `smv` (manifest) generated 1 warning
[INFO] [stderr]    Compiling libc v0.2.183
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling strsim v0.10.0
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]    Compiling memoffset v0.6.5
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]     Checking os_str_bytes v6.6.1
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]    Compiling vte_generate_state_changes v0.1.2
[INFO] [stderr]     Checking castaway v0.2.4
[INFO] [stderr]     Checking crossbeam-queue v0.3.12
[INFO] [stderr]     Checking itertools v0.13.0
[INFO] [stderr]     Checking textwrap v0.16.2
[INFO] [stderr]     Checking compact_str v0.7.1
[INFO] [stderr]     Checking time v0.3.47
[INFO] [stderr]     Checking crossbeam v0.8.4
[INFO] [stderr]     Checking fuzzy-matcher v0.3.7
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]     Checking defer-drop v1.3.0
[INFO] [stderr]    Compiling stability v0.2.1
[INFO] [stderr]     Checking beef v0.5.2
[INFO] [stderr]     Checking shlex v1.3.0
[INFO] [stderr]     Checking vte v0.11.1
[INFO] [stderr]     Checking serde_json v1.0.149
[INFO] [stderr]     Checking colored v2.2.0
[INFO] [stderr]     Checking clap_lex v0.2.4
[INFO] [stderr]     Checking deunicode v1.6.2
[INFO] [stderr]    Compiling assert_cmd v2.2.0
[INFO] [stderr]     Checking predicates v3.1.4
[INFO] [stderr]     Checking float-cmp v0.9.0
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking unicode-truncate v1.1.0
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking strum v0.26.3
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking dirs-sys-next v0.1.2
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking mio v0.8.11
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking nix v0.24.3
[INFO] [stderr]     Checking dirs-sys v0.4.1
[INFO] [stderr]     Checking nix v0.26.4
[INFO] [stderr]     Checking nix v0.25.1
[INFO] [stderr]     Checking wait-timeout v0.2.1
[INFO] [stderr]     Checking getrandom v0.4.2
[INFO] [stderr]     Checking dirs-next v2.0.0
[INFO] [stderr]     Checking clap v3.2.25
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking dirs v5.0.1
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking fd-lock v3.0.13
[INFO] [stderr]     Checking term v0.7.0
[INFO] [stderr]     Checking tempfile v3.27.0
[INFO] [stderr]     Checking signal-hook v0.3.18
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]     Checking bstr v1.12.1
[INFO] [stderr]     Checking signal-hook-mio v0.2.5
[INFO] [stderr]     Checking crossterm v0.27.0
[INFO] [stderr]     Checking env_logger v0.9.3
[INFO] [stderr]     Checking predicates v2.1.5
[INFO] [stderr]     Checking chrono v0.4.44
[INFO] [stderr]     Checking serde_yaml v0.9.34+deprecated
[INFO] [stderr]     Checking rustyline v12.0.0
[INFO] [stderr]     Checking tuikit v0.5.0
[INFO] [stderr]     Checking ratatui v0.26.3
[INFO] [stderr]    Compiling darling_core v0.14.4
[INFO] [stderr]     Checking timer v0.2.0
[INFO] [stderr]    Compiling darling_macro v0.14.4
[INFO] [stderr]    Compiling darling v0.14.4
[INFO] [stderr]    Compiling derive_builder_core v0.11.2
[INFO] [stderr]    Compiling derive_builder_macro v0.11.2
[INFO] [stderr]     Checking derive_builder v0.11.2
[INFO] [stderr]     Checking skim v0.10.4
[INFO] [stderr]     Checking smv v0.5.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: variable `letter_count` is assigned to, but never used
[INFO] [stdout]    --> src/transformers.rs:404:9
[INFO] [stdout]     |
[INFO] [stdout] 404 |     let mut letter_count = 0;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_letter_count` instead
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `letter_count` is never read
[INFO] [stdout]    --> src/transformers.rs:415:13
[INFO] [stdout]     |
[INFO] [stdout] 415 |             letter_count += 1;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `letter_count` is assigned to, but never used
[INFO] [stdout]    --> src/transformers.rs:404:9
[INFO] [stdout]     |
[INFO] [stdout] 404 |     let mut letter_count = 0;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_letter_count` instead
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `letter_count` is never read
[INFO] [stdout]    --> src/transformers.rs:415:13
[INFO] [stdout]     |
[INFO] [stdout] 415 |             letter_count += 1;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `is_screaming`, `is_title_case`, `is_sentence_case`, and `is_start_case` are never used
[INFO] [stdout]    --> src/transformers.rs:167:8
[INFO] [stdout]     |
[INFO] [stdout]  66 | impl CaseStyle {
[INFO] [stdout]     | -------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 167 |     fn is_screaming(words: &[String]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 174 |     fn is_title_case(words: &[String]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 186 |     fn is_sentence_case(words: &[String]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 |     fn is_start_case(words: &[String]) -> bool {
[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 `title_case` is never used
[INFO] [stdout]    --> src/transformers.rs:813:4
[INFO] [stdout]     |
[INFO] [stdout] 813 | fn title_case(name: &str) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_title` is never used
[INFO] [stdout]    --> src/transformers.rs:998:4
[INFO] [stdout]     |
[INFO] [stdout] 998 | fn format_title(tokens: &[String]) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Action` is never used
[INFO] [stdout]  --> src/ui/input/keymap.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub enum Action {
[INFO] [stdout]   |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `KeyMap` is never constructed
[INFO] [stdout]   --> src/ui/input/keymap.rs:50:12
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub struct KeyMap {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_normal_action`, `get_visual_action`, and `get_command_action` are never used
[INFO] [stdout]    --> src/ui/input/keymap.rs:203:12
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl KeyMap {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] 202 |     /// Get the action for a key event in normal mode
[INFO] [stdout] 203 |     pub fn get_normal_action(&self, key: KeyEvent) -> Option<&Action> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 208 |     pub fn get_visual_action(&self, key: KeyEvent) -> Option<&Action> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 213 |     pub fn get_command_action(&self, key: KeyEvent) -> Option<&Action> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Motion` is never used
[INFO] [stdout]  --> src/ui/input/vim.rs:3:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub enum Motion {
[INFO] [stdout]   |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Operator` is never used
[INFO] [stdout]   --> src/ui/input/vim.rs:32:10
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub enum Operator {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `TextObject` is never used
[INFO] [stdout]   --> src/ui/input/vim.rs:43:10
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub enum TextObject {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CommandState` is never constructed
[INFO] [stdout]   --> src/ui/input/vim.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct CommandState {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/ui/input/vim.rs:77:12
[INFO] [stdout]     |
[INFO] [stdout]  75 | impl CommandState {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout]  76 |     /// Create a new command state
[INFO] [stdout]  77 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  87 |     pub fn get_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  92 |     pub fn parse_count(&mut self, c: char) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  99 |     pub fn has_count(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub fn set_operator(&mut self, operator: Operator) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub fn get_operator(&self) -> Option<Operator> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |     pub fn set_motion(&mut self, motion: Motion) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn get_motion(&self) -> Option<Motion> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 124 |     pub fn set_text_object(&mut self, text_object: TextObject) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 129 |     pub fn get_text_object(&self) -> Option<TextObject> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub fn clear(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `queue_view` and `theme` are never read
[INFO] [stdout]    --> src/ui/terminal/app.rs:108:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | pub struct App {
[INFO] [stdout]     |            --- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 108 |     queue_view: QueueView,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 112 |     theme: Theme,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `render_app` is never used
[INFO] [stdout]     --> src/ui/terminal/app.rs:1156:8
[INFO] [stdout]      |
[INFO] [stdout]  127 | impl App {
[INFO] [stdout]      | -------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1156 |     fn render_app(&self, _frame: &mut Frame) -> anyhow::Result<()> {
[INFO] [stdout]      |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `source` and `destination` are never read
[INFO] [stdout]   --> src/ui/terminal/views/preview_view.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct PreviewOperation {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 20 |     /// Source path
[INFO] [stdout] 21 |     pub source: PathBuf,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 22 |     /// Destination path
[INFO] [stdout] 23 |     pub destination: PathBuf,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FileItemWidget` is never constructed
[INFO] [stdout]   --> src/ui/terminal/widgets/file_item_widget.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct FileItemWidget<'a> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `block`, and `visual_selection` are never used
[INFO] [stdout]   --> src/ui/terminal/widgets/file_item_widget.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl<'a> FileItemWidget<'a> {
[INFO] [stdout]    | --------------------------- associated items in this implementation
[INFO] [stdout] 21 |     pub fn new(theme: &'a Theme) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn block(mut self, block: Block<'a>) -> Self {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub fn visual_selection(mut self, active: bool) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `is_screaming`, `is_title_case`, `is_sentence_case`, and `is_start_case` are never used
[INFO] [stdout]    --> src/transformers.rs:167:8
[INFO] [stdout]     |
[INFO] [stdout]  66 | impl CaseStyle {
[INFO] [stdout]     | -------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 167 |     fn is_screaming(words: &[String]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 174 |     fn is_title_case(words: &[String]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 186 |     fn is_sentence_case(words: &[String]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 |     fn is_start_case(words: &[String]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Action` is never used
[INFO] [stdout]  --> src/ui/input/keymap.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub enum Action {
[INFO] [stdout]   |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `KeyMap` is never constructed
[INFO] [stdout]   --> src/ui/input/keymap.rs:50:12
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub struct KeyMap {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_normal_action`, `get_visual_action`, and `get_command_action` are never used
[INFO] [stdout]    --> src/ui/input/keymap.rs:203:12
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl KeyMap {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] 202 |     /// Get the action for a key event in normal mode
[INFO] [stdout] 203 |     pub fn get_normal_action(&self, key: KeyEvent) -> Option<&Action> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 208 |     pub fn get_visual_action(&self, key: KeyEvent) -> Option<&Action> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 213 |     pub fn get_command_action(&self, key: KeyEvent) -> Option<&Action> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Motion` is never used
[INFO] [stdout]  --> src/ui/input/vim.rs:3:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub enum Motion {
[INFO] [stdout]   |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Operator` is never used
[INFO] [stdout]   --> src/ui/input/vim.rs:32:10
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub enum Operator {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `TextObject` is never used
[INFO] [stdout]   --> src/ui/input/vim.rs:43:10
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub enum TextObject {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CommandState` is never constructed
[INFO] [stdout]   --> src/ui/input/vim.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct CommandState {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/ui/input/vim.rs:77:12
[INFO] [stdout]     |
[INFO] [stdout]  75 | impl CommandState {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout]  76 |     /// Create a new command state
[INFO] [stdout]  77 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  87 |     pub fn get_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  92 |     pub fn parse_count(&mut self, c: char) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  99 |     pub fn has_count(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub fn set_operator(&mut self, operator: Operator) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub fn get_operator(&self) -> Option<Operator> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |     pub fn set_motion(&mut self, motion: Motion) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn get_motion(&self) -> Option<Motion> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 124 |     pub fn set_text_object(&mut self, text_object: TextObject) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 129 |     pub fn get_text_object(&self) -> Option<TextObject> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub fn clear(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `queue_view` and `theme` are never read
[INFO] [stdout]    --> src/ui/terminal/app.rs:108:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | pub struct App {
[INFO] [stdout]     |            --- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 108 |     queue_view: QueueView,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 112 |     theme: Theme,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `render_app` is never used
[INFO] [stdout]     --> src/ui/terminal/app.rs:1156:8
[INFO] [stdout]      |
[INFO] [stdout]  127 | impl App {
[INFO] [stdout]      | -------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1156 |     fn render_app(&self, _frame: &mut Frame) -> anyhow::Result<()> {
[INFO] [stdout]      |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `source` and `destination` are never read
[INFO] [stdout]   --> src/ui/terminal/views/preview_view.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct PreviewOperation {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 20 |     /// Source path
[INFO] [stdout] 21 |     pub source: PathBuf,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 22 |     /// Destination path
[INFO] [stdout] 23 |     pub destination: PathBuf,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FileItemWidget` is never constructed
[INFO] [stdout]   --> src/ui/terminal/widgets/file_item_widget.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct FileItemWidget<'a> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `block`, and `visual_selection` are never used
[INFO] [stdout]   --> src/ui/terminal/widgets/file_item_widget.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl<'a> FileItemWidget<'a> {
[INFO] [stdout]    | --------------------------- associated items in this implementation
[INFO] [stdout] 21 |     pub fn new(theme: &'a Theme) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn block(mut self, block: Block<'a>) -> Self {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub fn visual_selection(mut self, active: bool) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source`
[INFO] [stdout]    --> src/file_ops.rs:518:21
[INFO] [stdout]     |
[INFO] [stdout] 518 | fn prompt_overwrite(source: &Path, destination: &Path) -> Result<bool, Box<dyn Error>> {
[INFO] [stdout]     |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_source`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `letter_count` is assigned to, but never used
[INFO] [stdout]    --> src/transformers.rs:404:9
[INFO] [stdout]     |
[INFO] [stdout] 404 |     let mut letter_count = 0;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_letter_count` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `letter_count` is never read
[INFO] [stdout]    --> src/transformers.rs:415:13
[INFO] [stdout]     |
[INFO] [stdout] 415 |             letter_count += 1;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source`
[INFO] [stdout]    --> src/file_ops.rs:518:21
[INFO] [stdout]     |
[INFO] [stdout] 518 | fn prompt_overwrite(source: &Path, destination: &Path) -> Result<bool, Box<dyn Error>> {
[INFO] [stdout]     |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_source`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `remove_cmd`
[INFO] [stdout]     --> src/main.rs:1983:17
[INFO] [stdout]      |
[INFO] [stdout] 1983 |     if let Some(ref remove_cmd) = cnp_command.remove_command {
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_remove_cmd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `letter_count` is assigned to, but never used
[INFO] [stdout]    --> src/transformers.rs:404:9
[INFO] [stdout]     |
[INFO] [stdout] 404 |     let mut letter_count = 0;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_letter_count` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `letter_count` is never read
[INFO] [stdout]    --> src/transformers.rs:415:13
[INFO] [stdout]     |
[INFO] [stdout] 415 |             letter_count += 1;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `skipped` is never read
[INFO] [stdout]    --> src/main.rs:200:5
[INFO] [stdout]     |
[INFO] [stdout] 196 | struct Stats {
[INFO] [stdout]     |        ----- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 200 |     skipped: u32,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Stats` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `ByType`, `ByDate`, and `BySize` are never constructed
[INFO] [stdout]    --> src/main.rs:295:5
[INFO] [stdout]     |
[INFO] [stdout] 292 | enum SortMethod {
[INFO] [stdout]     |      ---------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 295 |     ByType,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 296 |     ByDate,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 297 |     BySize,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SortMethod` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `command_type` and `preview` are never read
[INFO] [stdout]   --> src/cnp_grammar.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct RemoveCommand {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 27 |     pub command_type: String, // "rm"
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 28 |     pub preview: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RemoveCommand` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Where` is never constructed
[INFO] [stdout]   --> src/cnp_grammar.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub enum Filter {
[INFO] [stdout]    |          ------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 46 |     Where(Vec<Filter>),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Filter` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `follow_symlinks` is never read
[INFO] [stdout]   --> src/file_ops.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct FileOpConfig {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub follow_symlinks: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FileOpConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `CaseStyle` is never used
[INFO] [stdout]   --> src/transformers.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub enum CaseStyle {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `DelimiterStyle` is never used
[INFO] [stdout]   --> src/transformers.rs:38:10
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub enum DelimiterStyle {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `TransformError` is never used
[INFO] [stdout]   --> src/transformers.rs:55:10
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub enum TransformError {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/transformers.rs:71:12
[INFO] [stdout]     |
[INFO] [stdout]  66 | impl CaseStyle {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  71 |     pub fn default_delimiter(&self) -> DelimiterStyle {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  85 |     pub fn detect_from_input(input: &str) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |     fn is_camel_case(words: &[String]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 157 |     fn is_pascal_case(words: &[String]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 167 |     fn is_screaming(words: &[String]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 174 |     fn is_title_case(words: &[String]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 186 |     fn is_sentence_case(words: &[String]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 |     fn is_start_case(words: &[String]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 209 |     fn is_studly_case(words: &[String]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `detect_from_input` and `as_str` are never used
[INFO] [stdout]    --> src/transformers.rs:233:12
[INFO] [stdout]     |
[INFO] [stdout] 228 | impl DelimiterStyle {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 233 |     pub fn detect_from_input(input: &str) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 250 |     pub fn as_str(&self) -> &'static str {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_valid_combination` is never used
[INFO] [stdout]    --> src/transformers.rs:266:8
[INFO] [stdout]     |
[INFO] [stdout] 266 | pub fn is_valid_combination(case: &CaseStyle, delimiter: &DelimiterStyle) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `transform_with_pipeline` is never used
[INFO] [stdout]    --> src/transformers.rs:288:8
[INFO] [stdout]     |
[INFO] [stdout] 288 | pub fn transform_with_pipeline(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `apply_case_style` is never used
[INFO] [stdout]    --> src/transformers.rs:347:4
[INFO] [stdout]     |
[INFO] [stdout] 347 | fn apply_case_style(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `join_with_delimiter` is never used
[INFO] [stdout]    --> src/transformers.rs:397:4
[INFO] [stdout]     |
[INFO] [stdout] 397 | fn join_with_delimiter(tokens: &[String], delimiter_style: &DelimiterStyle) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `apply_studly_caps` is never used
[INFO] [stdout]    --> src/transformers.rs:402:4
[INFO] [stdout]     |
[INFO] [stdout] 402 | fn apply_studly_caps(input: &str, start_with_upper: bool) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `transform_title_snake` is never used
[INFO] [stdout]    --> src/transformers.rs:428:8
[INFO] [stdout]     |
[INFO] [stdout] 428 | pub fn transform_title_snake(name: &str) -> Result<String, TransformError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `transform_lower_kebab` is never used
[INFO] [stdout]    --> src/transformers.rs:434:8
[INFO] [stdout]     |
[INFO] [stdout] 434 | pub fn transform_lower_kebab(name: &str) -> Result<String, TransformError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `transform_pascal_dot` is never used
[INFO] [stdout]    --> src/transformers.rs:440:8
[INFO] [stdout]     |
[INFO] [stdout] 440 | pub fn transform_pascal_dot(name: &str) -> Result<String, TransformError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `transform_screaming_snake` is never used
[INFO] [stdout]    --> src/transformers.rs:446:8
[INFO] [stdout]     |
[INFO] [stdout] 446 | pub fn transform_screaming_snake(name: &str) -> Result<String, TransformError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `transform_studly_dot` is never used
[INFO] [stdout]    --> src/transformers.rs:452:8
[INFO] [stdout]     |
[INFO] [stdout] 452 | pub fn transform_studly_dot(name: &str) -> Result<String, TransformError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `legacy_transform_to_pipeline` is never used
[INFO] [stdout]    --> src/transformers.rs:460:8
[INFO] [stdout]     |
[INFO] [stdout] 460 | pub fn legacy_transform_to_pipeline(transform_type: &TransformType, name: &str) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `title_case` is never used
[INFO] [stdout]    --> src/transformers.rs:813:4
[INFO] [stdout]     |
[INFO] [stdout] 813 | fn title_case(name: &str) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_title` is never used
[INFO] [stdout]    --> src/transformers.rs:998:4
[INFO] [stdout]     |
[INFO] [stdout] 998 | fn format_title(tokens: &[String]) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `open_directory` is never used
[INFO] [stdout]   --> src/ui/mod.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub trait UserInterface {
[INFO] [stdout]    |           ------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 18 |     fn open_directory(&mut self, path: PathBuf) -> Result<(), Box<dyn Error>>;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Exit` and `ShowHelp` are never constructed
[INFO] [stdout]   --> src/ui/mod.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub enum UiAction {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 26 |     Exit,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     ShowHelp,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Action` is never used
[INFO] [stdout]  --> src/ui/input/keymap.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub enum Action {
[INFO] [stdout]   |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `KeyMap` is never constructed
[INFO] [stdout]   --> src/ui/input/keymap.rs:50:12
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub struct KeyMap {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_normal_action`, `get_visual_action`, and `get_command_action` are never used
[INFO] [stdout]    --> src/ui/input/keymap.rs:203:12
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl KeyMap {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] 202 |     /// Get the action for a key event in normal mode
[INFO] [stdout] 203 |     pub fn get_normal_action(&self, key: KeyEvent) -> Option<&Action> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 208 |     pub fn get_visual_action(&self, key: KeyEvent) -> Option<&Action> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 213 |     pub fn get_command_action(&self, key: KeyEvent) -> Option<&Action> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Motion` is never used
[INFO] [stdout]  --> src/ui/input/vim.rs:3:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub enum Motion {
[INFO] [stdout]   |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Operator` is never used
[INFO] [stdout]   --> src/ui/input/vim.rs:32:10
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub enum Operator {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `TextObject` is never used
[INFO] [stdout]   --> src/ui/input/vim.rs:43:10
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub enum TextObject {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CommandState` is never constructed
[INFO] [stdout]   --> src/ui/input/vim.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct CommandState {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/ui/input/vim.rs:77:12
[INFO] [stdout]     |
[INFO] [stdout]  75 | impl CommandState {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout]  76 |     /// Create a new command state
[INFO] [stdout]  77 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  87 |     pub fn get_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  92 |     pub fn parse_count(&mut self, c: char) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  99 |     pub fn has_count(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub fn set_operator(&mut self, operator: Operator) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub fn get_operator(&self) -> Option<Operator> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |     pub fn set_motion(&mut self, motion: Motion) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn get_motion(&self) -> Option<Motion> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 124 |     pub fn set_text_object(&mut self, text_object: TextObject) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 129 |     pub fn get_text_object(&self) -> Option<TextObject> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub fn clear(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/ui/terminal/mod.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 |     Resize(u16, u16),
[INFO] [stdout]    |     ------ ^^^  ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]    |
[INFO] [stdout] 16 -     Resize(u16, u16),
[INFO] [stdout] 16 +     Resize((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `queue_view` and `theme` are never read
[INFO] [stdout]    --> src/ui/terminal/app.rs:108:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | pub struct App {
[INFO] [stdout]     |            --- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 108 |     queue_view: QueueView,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 112 |     theme: Theme,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `render_app` is never used
[INFO] [stdout]     --> src/ui/terminal/app.rs:1156:8
[INFO] [stdout]      |
[INFO] [stdout]  127 | impl App {
[INFO] [stdout]      | -------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1156 |     fn render_app(&self, _frame: &mut Frame) -> anyhow::Result<()> {
[INFO] [stdout]      |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `is_symlink` and `size` are never read
[INFO] [stdout]   --> src/ui/terminal/views/file_explorer.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct FileItem {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub is_symlink: bool,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 24 |     /// Size in bytes
[INFO] [stdout] 25 |     pub size: u64,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FileItem` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `current_dir` is never used
[INFO] [stdout]    --> src/ui/terminal/views/file_explorer.rs:149:12
[INFO] [stdout]     |
[INFO] [stdout]  46 | impl FileExplorer {
[INFO] [stdout]     | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 149 |     pub fn current_dir(&self) -> &PathBuf {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `source` and `destination` are never read
[INFO] [stdout]   --> src/ui/terminal/views/preview_view.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct PreviewOperation {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 20 |     /// Source path
[INFO] [stdout] 21 |     pub source: PathBuf,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 22 |     /// Destination path
[INFO] [stdout] 23 |     pub destination: PathBuf,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `preview_transform` is never used
[INFO] [stdout]    --> src/ui/terminal/views/preview_view.rs:154:12
[INFO] [stdout]     |
[INFO] [stdout]  38 | impl PreviewView {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 154 |     pub fn preview_transform(&self, filename: &str, transform_type: TransformType) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FileItemWidget` is never constructed
[INFO] [stdout]   --> src/ui/terminal/widgets/file_item_widget.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct FileItemWidget<'a> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `block`, and `visual_selection` are never used
[INFO] [stdout]   --> src/ui/terminal/widgets/file_item_widget.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl<'a> FileItemWidget<'a> {
[INFO] [stdout]    | --------------------------- associated items in this implementation
[INFO] [stdout] 21 |     pub fn new(theme: &'a Theme) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn block(mut self, block: Block<'a>) -> Self {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub fn visual_selection(mut self, active: bool) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/ui/theme.rs:5:9
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub struct Theme {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout]  5 |     pub app_background: Color,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]  6 |     pub app_foreground: Color,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  9 |     pub explorer_normal: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 10 |     pub explorer_selected: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 11 |     pub explorer_highlight: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 12 |     pub explorer_directory: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 13 |     pub explorer_file: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub queue_normal: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 17 |     pub queue_selected: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 18 |     pub queue_title: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 19 |     pub queue_empty: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub preview_title: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 23 |     pub preview_normal: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 24 |     pub preview_before: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 25 |     pub preview_after: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 26 |     pub preview_conflict: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub statusbar_normal: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 30 |     pub statusbar_mode: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 31 |     pub statusbar_info: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 32 |     pub statusbar_error: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub help_normal: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 36 |     pub help_key: Style,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 37 |     pub help_title: Style,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `remove_cmd`
[INFO] [stdout]     --> src/main.rs:1983:17
[INFO] [stdout]      |
[INFO] [stdout] 1983 |     if let Some(ref remove_cmd) = cnp_command.remove_command {
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_remove_cmd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `skipped` is never read
[INFO] [stdout]    --> src/main.rs:200:5
[INFO] [stdout]     |
[INFO] [stdout] 196 | struct Stats {
[INFO] [stdout]     |        ----- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 200 |     skipped: u32,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Stats` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `ByType`, `ByDate`, and `BySize` are never constructed
[INFO] [stdout]    --> src/main.rs:295:5
[INFO] [stdout]     |
[INFO] [stdout] 292 | enum SortMethod {
[INFO] [stdout]     |      ---------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 295 |     ByType,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 296 |     ByDate,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 297 |     BySize,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SortMethod` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `command_type` and `preview` are never read
[INFO] [stdout]   --> src/cnp_grammar.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct RemoveCommand {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 27 |     pub command_type: String, // "rm"
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 28 |     pub preview: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RemoveCommand` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Where` is never constructed
[INFO] [stdout]   --> src/cnp_grammar.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub enum Filter {
[INFO] [stdout]    |          ------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 46 |     Where(Vec<Filter>),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Filter` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `follow_symlinks` is never read
[INFO] [stdout]   --> src/file_ops.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct FileOpConfig {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub follow_symlinks: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FileOpConfig` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `StudlyReverse` is never constructed
[INFO] [stdout]   --> src/transformers.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub enum CaseStyle {
[INFO] [stdout]    |          --------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 20 |     StudlyReverse,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CaseStyle` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `InvalidRegex` and `DetectionFailed` are never constructed
[INFO] [stdout]   --> src/transformers.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub enum TransformError {
[INFO] [stdout]    |          -------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 59 |     InvalidRegex(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     DetectionFailed(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TransformError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `is_screaming`, `is_title_case`, `is_sentence_case`, and `is_start_case` are never used
[INFO] [stdout]    --> src/transformers.rs:167:8
[INFO] [stdout]     |
[INFO] [stdout]  66 | impl CaseStyle {
[INFO] [stdout]     | -------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 167 |     fn is_screaming(words: &[String]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 174 |     fn is_title_case(words: &[String]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 186 |     fn is_sentence_case(words: &[String]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 |     fn is_start_case(words: &[String]) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `open_directory` is never used
[INFO] [stdout]   --> src/ui/mod.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub trait UserInterface {
[INFO] [stdout]    |           ------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 18 |     fn open_directory(&mut self, path: PathBuf) -> Result<(), Box<dyn Error>>;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Exit` and `ShowHelp` are never constructed
[INFO] [stdout]   --> src/ui/mod.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub enum UiAction {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 26 |     Exit,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     ShowHelp,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Action` is never used
[INFO] [stdout]  --> src/ui/input/keymap.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub enum Action {
[INFO] [stdout]   |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `KeyMap` is never constructed
[INFO] [stdout]   --> src/ui/input/keymap.rs:50:12
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub struct KeyMap {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_normal_action`, `get_visual_action`, and `get_command_action` are never used
[INFO] [stdout]    --> src/ui/input/keymap.rs:203:12
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl KeyMap {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] 202 |     /// Get the action for a key event in normal mode
[INFO] [stdout] 203 |     pub fn get_normal_action(&self, key: KeyEvent) -> Option<&Action> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 208 |     pub fn get_visual_action(&self, key: KeyEvent) -> Option<&Action> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 213 |     pub fn get_command_action(&self, key: KeyEvent) -> Option<&Action> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Motion` is never used
[INFO] [stdout]  --> src/ui/input/vim.rs:3:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub enum Motion {
[INFO] [stdout]   |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Operator` is never used
[INFO] [stdout]   --> src/ui/input/vim.rs:32:10
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub enum Operator {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `TextObject` is never used
[INFO] [stdout]   --> src/ui/input/vim.rs:43:10
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub enum TextObject {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CommandState` is never constructed
[INFO] [stdout]   --> src/ui/input/vim.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct CommandState {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/ui/input/vim.rs:77:12
[INFO] [stdout]     |
[INFO] [stdout]  75 | impl CommandState {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout]  76 |     /// Create a new command state
[INFO] [stdout]  77 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  87 |     pub fn get_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  92 |     pub fn parse_count(&mut self, c: char) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  99 |     pub fn has_count(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub fn set_operator(&mut self, operator: Operator) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub fn get_operator(&self) -> Option<Operator> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |     pub fn set_motion(&mut self, motion: Motion) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn get_motion(&self) -> Option<Motion> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 124 |     pub fn set_text_object(&mut self, text_object: TextObject) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 129 |     pub fn get_text_object(&self) -> Option<TextObject> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub fn clear(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/ui/terminal/mod.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 |     Resize(u16, u16),
[INFO] [stdout]    |     ------ ^^^  ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]    |
[INFO] [stdout] 16 -     Resize(u16, u16),
[INFO] [stdout] 16 +     Resize((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `queue_view` and `theme` are never read
[INFO] [stdout]    --> src/ui/terminal/app.rs:108:5
[INFO] [stdout]     |
[INFO] [stdout]  96 | pub struct App {
[INFO] [stdout]     |            --- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 108 |     queue_view: QueueView,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 112 |     theme: Theme,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `render_app` is never used
[INFO] [stdout]     --> src/ui/terminal/app.rs:1156:8
[INFO] [stdout]      |
[INFO] [stdout]  127 | impl App {
[INFO] [stdout]      | -------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1156 |     fn render_app(&self, _frame: &mut Frame) -> anyhow::Result<()> {
[INFO] [stdout]      |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `is_symlink` and `size` are never read
[INFO] [stdout]   --> src/ui/terminal/views/file_explorer.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct FileItem {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub is_symlink: bool,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 24 |     /// Size in bytes
[INFO] [stdout] 25 |     pub size: u64,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FileItem` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `current_dir` is never used
[INFO] [stdout]    --> src/ui/terminal/views/file_explorer.rs:149:12
[INFO] [stdout]     |
[INFO] [stdout]  46 | impl FileExplorer {
[INFO] [stdout]     | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 149 |     pub fn current_dir(&self) -> &PathBuf {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `source` and `destination` are never read
[INFO] [stdout]   --> src/ui/terminal/views/preview_view.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct PreviewOperation {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 20 |     /// Source path
[INFO] [stdout] 21 |     pub source: PathBuf,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 22 |     /// Destination path
[INFO] [stdout] 23 |     pub destination: PathBuf,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `preview_transform` is never used
[INFO] [stdout]    --> src/ui/terminal/views/preview_view.rs:154:12
[INFO] [stdout]     |
[INFO] [stdout]  38 | impl PreviewView {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 154 |     pub fn preview_transform(&self, filename: &str, transform_type: TransformType) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FileItemWidget` is never constructed
[INFO] [stdout]   --> src/ui/terminal/widgets/file_item_widget.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct FileItemWidget<'a> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `block`, and `visual_selection` are never used
[INFO] [stdout]   --> src/ui/terminal/widgets/file_item_widget.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl<'a> FileItemWidget<'a> {
[INFO] [stdout]    | --------------------------- associated items in this implementation
[INFO] [stdout] 21 |     pub fn new(theme: &'a Theme) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn block(mut self, block: Block<'a>) -> Self {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub fn visual_selection(mut self, active: bool) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/ui/theme.rs:5:9
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub struct Theme {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout]  5 |     pub app_background: Color,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]  6 |     pub app_foreground: Color,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  9 |     pub explorer_normal: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 10 |     pub explorer_selected: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 11 |     pub explorer_highlight: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub queue_normal: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 17 |     pub queue_selected: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 18 |     pub queue_title: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 19 |     pub queue_empty: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub preview_title: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 23 |     pub preview_normal: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 24 |     pub preview_before: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 25 |     pub preview_after: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 26 |     pub preview_conflict: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub statusbar_normal: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 30 |     pub statusbar_mode: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 31 |     pub statusbar_info: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 32 |     pub statusbar_error: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub help_normal: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 36 |     pub help_key: Style,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 37 |     pub help_title: Style,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: unused dependency `serde_yaml`
[INFO] [stderr]   --> Cargo.toml:18:1
[INFO] [stderr]    |
[INFO] [stderr] 18 | serde_yaml = "0.9"
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `serde_yaml`
[INFO] [stderr] warning: unused dependency `thiserror`
[INFO] [stderr]   --> Cargo.toml:20:1
[INFO] [stderr]    |
[INFO] [stderr] 20 | thiserror = "1.0"
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: consider removing the dependency on `thiserror`
[INFO] [stderr] warning: `smv` (manifest) generated 2 warnings
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 22.93s
[INFO] running `Command { std: "docker" "inspect" "6253cd8ff98032340595baab159cb0eb68a6c07cf5d32487be6f650ef36ebac3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6253cd8ff98032340595baab159cb0eb68a6c07cf5d32487be6f650ef36ebac3", kill_on_drop: false }`
[INFO] [stdout] 6253cd8ff98032340595baab159cb0eb68a6c07cf5d32487be6f650ef36ebac3
