[INFO] fetching crate rustisan 0.0.1...
[INFO] checking rustisan-0.0.1 against master#779e19d8baa3e3625bd4fc5c85cbb2ad47b43155 for pr-147589-1
[INFO] extracting crate rustisan 0.0.1 into /workspace/builds/worker-4-tc1/source
[INFO] started tweaking crates.io crate rustisan 0.0.1
[INFO] finished tweaking crates.io crate rustisan 0.0.1
[INFO] tweaked toml for crates.io crate rustisan 0.0.1 written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate rustisan 0.0.1 on toolchain 779e19d8baa3e3625bd4fc5c85cbb2ad47b43155
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate rustisan 0.0.1 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" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] dff53960b071b1b5f9940e81b40e27f9c02aaa1f8609f7d7e9d1194e56062269
[INFO] running `Command { std: "docker" "start" "-a" "dff53960b071b1b5f9940e81b40e27f9c02aaa1f8609f7d7e9d1194e56062269", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "dff53960b071b1b5f9940e81b40e27f9c02aaa1f8609f7d7e9d1194e56062269", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "dff53960b071b1b5f9940e81b40e27f9c02aaa1f8609f7d7e9d1194e56062269", kill_on_drop: false }`
[INFO] [stdout] dff53960b071b1b5f9940e81b40e27f9c02aaa1f8609f7d7e9d1194e56062269
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] bba54168243f5ff9ad3695410eb27dc6cfe66f4cd1c6f068eaa5ed96bb02d042
[INFO] running `Command { std: "docker" "start" "-a" "bba54168243f5ff9ad3695410eb27dc6cfe66f4cd1c6f068eaa5ed96bb02d042", kill_on_drop: false }`
[INFO] [stderr]    Compiling cc v1.2.29
[INFO] [stderr]    Compiling syn v2.0.104
[INFO] [stderr]     Checking parking_lot_core v0.9.11
[INFO] [stderr]     Checking indexmap v2.10.0
[INFO] [stderr]     Checking rustix v1.0.8
[INFO] [stderr]     Checking regex-automata v0.4.9
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]     Checking winnow v0.7.12
[INFO] [stderr]     Checking console v0.15.11
[INFO] [stderr]     Checking float-cmp v0.10.0
[INFO] [stderr]     Checking colored v2.2.0
[INFO] [stderr]     Checking wait-timeout v0.2.1
[INFO] [stderr]     Checking parking_lot v0.12.4
[INFO] [stderr]     Checking indicatif v0.17.11
[INFO] [stderr]    Compiling openssl-sys v0.9.109
[INFO] [stderr]     Checking xattr v1.5.1
[INFO] [stderr]     Checking tempfile v3.20.0
[INFO] [stderr]     Checking tar v0.4.44
[INFO] [stderr]    Compiling openssl v0.10.73
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]     Checking which v4.4.2
[INFO] [stderr]     Checking regex v1.11.1
[INFO] [stderr]     Checking bstr v1.12.0
[INFO] [stderr]     Checking predicates v3.1.3
[INFO] [stderr]     Checking assert_cmd v2.0.17
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.1
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling thiserror-impl v2.0.12
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling clap_derive v4.5.41
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.0
[INFO] [stderr]     Checking tokio v1.46.1
[INFO] [stderr]    Compiling thiserror v2.0.12
[INFO] [stderr]    Compiling pest v2.8.1
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking yoke v0.8.0
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking zerovec v0.11.2
[INFO] [stderr]     Checking zerotrie v0.2.2
[INFO] [stderr]     Checking clap v4.5.41
[INFO] [stderr]    Compiling pest_meta v2.8.1
[INFO] [stderr]     Checking serde v1.0.219
[INFO] [stderr]     Checking tinystr v0.8.1
[INFO] [stderr]     Checking potential_utf v0.1.2
[INFO] [stderr]     Checking icu_collections v2.0.0
[INFO] [stderr]     Checking icu_locale_core v2.0.0
[INFO] [stderr]    Compiling pest_generator v2.8.1
[INFO] [stderr]     Checking icu_provider v2.0.0
[INFO] [stderr]     Checking icu_properties v2.0.1
[INFO] [stderr]     Checking icu_normalizer v2.0.0
[INFO] [stderr]    Compiling pest_derive v2.8.1
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.0.3
[INFO] [stderr]     Checking url v2.5.4
[INFO] [stderr]     Checking toml_datetime v0.6.11
[INFO] [stderr]     Checking serde_spanned v0.6.9
[INFO] [stderr]     Checking serde_json v1.0.140
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking chrono v0.4.41
[INFO] [stderr]     Checking tokio-util v0.7.15
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking toml_edit v0.22.27
[INFO] [stderr]     Checking h2 v0.3.27
[INFO] [stderr]     Checking handlebars v4.5.0
[INFO] [stderr]     Checking toml v0.8.23
[INFO] [stderr]     Checking hyper v0.14.32
[INFO] [stderr]     Checking hyper-tls v0.5.0
[INFO] [stderr]     Checking reqwest v0.11.27
[INFO] [stderr]     Checking rustisan v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: named argument `name` is not used by name
[INFO] [stdout]    --> src/commands/migrate.rs:111:9
[INFO] [stdout]     |
[INFO] [stdout]  89 |         r#"//! Migration: {}
[INFO] [stdout]     |                           -- this formatting argument uses named argument `name` by position
[INFO] [stdout] ...
[INFO] [stdout] 111 |         name = name,
[INFO] [stdout]     |         ^^^^ this named argument is referred to by position in formatting string
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(named_arguments_used_positionally)]` on by default
[INFO] [stdout] help: use the named argument by name to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout]  89 |         r#"//! Migration: {name}
[INFO] [stdout]     |                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: named argument `migration_class` is not used by name
[INFO] [stdout]    --> src/commands/migrate.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout]  90 | //! Created: {}
[INFO] [stdout]     |              -- this formatting argument uses named argument `migration_class` by position
[INFO] [stdout] ...
[INFO] [stdout] 112 |         migration_class = CommandUtils::to_pascal_case(&name),
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ this named argument is referred to by position in formatting string
[INFO] [stdout]     |
[INFO] [stdout] help: use the named argument by name to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout]  90 | //! Created: {migration_class}
[INFO] [stdout]     |               +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GeneratorOptions`
[INFO] [stdout]   --> src/commands/make.rs:10:42
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::generators::{TemplateManager, GeneratorOptions};
[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: `std::thread`
[INFO] [stdout]  --> src/commands/serve.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::thread;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `colored::*`
[INFO] [stdout]  --> src/commands/seed.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use colored::*;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `colored::*`
[INFO] [stdout]  --> src/commands/cache.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use colored::*;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `colored::*`
[INFO] [stdout]  --> src/commands/deploy.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use colored::*;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `colored::*`
[INFO] [stdout]  --> src/commands/dev.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use colored::*;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CacheCommands`, `ConfigCommands`, `DbCommands`, `DevCommands`, `MakeCommands`, `MigrateCommands`, `PackageCommands`, `QueueCommands`, and `RouteCommands`
[INFO] [stdout]   --> src/commands/mod.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     DbCommands, MakeCommands, MigrateCommands, RouteCommands,
[INFO] [stdout]    |     ^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 26 |     CacheCommands, QueueCommands, ConfigCommands,
[INFO] [stdout]    |     ^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 27 |     PackageCommands, DevCommands
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `colored::*`
[INFO] [stdout]  --> src/utils.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use colored::*;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `commands::*`
[INFO] [stdout]   --> src/main.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | use commands::*;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: named argument `name` is not used by name
[INFO] [stdout]    --> src/commands/migrate.rs:111:9
[INFO] [stdout]     |
[INFO] [stdout]  89 |         r#"//! Migration: {}
[INFO] [stdout]     |                           -- this formatting argument uses named argument `name` by position
[INFO] [stdout] ...
[INFO] [stdout] 111 |         name = name,
[INFO] [stdout]     |         ^^^^ this named argument is referred to by position in formatting string
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(named_arguments_used_positionally)]` on by default
[INFO] [stdout] help: use the named argument by name to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout]  89 |         r#"//! Migration: {name}
[INFO] [stdout]     |                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: named argument `migration_class` is not used by name
[INFO] [stdout]    --> src/commands/migrate.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout]  90 | //! Created: {}
[INFO] [stdout]     |              -- this formatting argument uses named argument `migration_class` by position
[INFO] [stdout] ...
[INFO] [stdout] 112 |         migration_class = CommandUtils::to_pascal_case(&name),
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ this named argument is referred to by position in formatting string
[INFO] [stdout]     |
[INFO] [stdout] help: use the named argument by name to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout]  90 | //! Created: {migration_class}
[INFO] [stdout]     |               +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GeneratorOptions`
[INFO] [stdout]   --> src/commands/make.rs:10:42
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::generators::{TemplateManager, GeneratorOptions};
[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: `std::thread`
[INFO] [stdout]  --> src/commands/serve.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::thread;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `colored::*`
[INFO] [stdout]  --> src/commands/seed.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use colored::*;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `colored::*`
[INFO] [stdout]  --> src/commands/cache.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use colored::*;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `colored::*`
[INFO] [stdout]  --> src/commands/deploy.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use colored::*;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `colored::*`
[INFO] [stdout]  --> src/commands/dev.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use colored::*;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CacheCommands`, `ConfigCommands`, `DbCommands`, `DevCommands`, `MakeCommands`, `MigrateCommands`, `PackageCommands`, `QueueCommands`, and `RouteCommands`
[INFO] [stdout]   --> src/commands/mod.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 |     DbCommands, MakeCommands, MigrateCommands, RouteCommands,
[INFO] [stdout]    |     ^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 26 |     CacheCommands, QueueCommands, ConfigCommands,
[INFO] [stdout]    |     ^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 27 |     PackageCommands, DevCommands
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `colored::*`
[INFO] [stdout]  --> src/utils.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use colored::*;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `commands::*`
[INFO] [stdout]   --> src/main.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | use commands::*;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `class_name`
[INFO] [stdout]   --> src/commands/make.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 71 |     let class_name = CommandUtils::to_pascal_case(&name);
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_class_name`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `create`
[INFO] [stdout]    --> src/commands/make.rs:148:39
[INFO] [stdout]     |
[INFO] [stdout] 148 | async fn make_migration(name: String, create: Option<String>, table: Option<String>) -> Result<()> {
[INFO] [stdout]     |                                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_create`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `table`
[INFO] [stdout]    --> src/commands/make.rs:148:63
[INFO] [stdout]     |
[INFO] [stdout] 148 | async fn make_migration(name: String, create: Option<String>, table: Option<String>) -> Result<()> {
[INFO] [stdout]     |                                                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `event`
[INFO] [stdout]    --> src/commands/make.rs:500:38
[INFO] [stdout]     |
[INFO] [stdout] 500 | async fn make_listener(name: String, event: Option<String>) -> Result<()> {
[INFO] [stdout]     |                                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]    --> src/commands/make.rs:512:36
[INFO] [stdout]     |
[INFO] [stdout] 512 | async fn make_policy(name: String, model: Option<String>) -> Result<()> {
[INFO] [stdout]     |                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `template_vars`
[INFO] [stdout]    --> src/commands/make.rs:529:9
[INFO] [stdout]     |
[INFO] [stdout] 529 |     let template_vars = serde_json::json!({
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_template_vars`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `module_dir`
[INFO] [stdout]    --> src/commands/make.rs:612:23
[INFO] [stdout]     |
[INFO] [stdout] 612 | fn update_module_file(module_dir: &str, component_name: &str) -> Result<()> {
[INFO] [stdout]     |                       ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_module_dir`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `component_name`
[INFO] [stdout]    --> src/commands/make.rs:612:41
[INFO] [stdout]     |
[INFO] [stdout] 612 | fn update_module_file(module_dir: &str, component_name: &str) -> Result<()> {
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_component_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `host`
[INFO] [stdout]    --> src/commands/db.rs:307:35
[INFO] [stdout]     |
[INFO] [stdout] 307 | async fn test_postgres_connection(host: &str, port: &str, database: &str) -> Result<()> {
[INFO] [stdout]     |                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_host`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `port`
[INFO] [stdout]    --> src/commands/db.rs:307:47
[INFO] [stdout]     |
[INFO] [stdout] 307 | async fn test_postgres_connection(host: &str, port: &str, database: &str) -> Result<()> {
[INFO] [stdout]     |                                               ^^^^ help: if this is intentional, prefix it with an underscore: `_port`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `database`
[INFO] [stdout]    --> src/commands/db.rs:307:59
[INFO] [stdout]     |
[INFO] [stdout] 307 | async fn test_postgres_connection(host: &str, port: &str, database: &str) -> Result<()> {
[INFO] [stdout]     |                                                           ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_database`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db_name`
[INFO] [stdout]    --> src/commands/db.rs:293:35
[INFO] [stdout]     |
[INFO] [stdout] 293 | async fn create_postgres_database(db_name: &str) -> Result<()> {
[INFO] [stdout]     |                                   ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_db_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db_name`
[INFO] [stdout]    --> src/commands/db.rs:300:33
[INFO] [stdout]     |
[INFO] [stdout] 300 | async fn drop_postgres_database(db_name: &str) -> Result<()> {
[INFO] [stdout]     |                                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_db_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `job`
[INFO] [stdout]    --> src/commands/queue.rs:235:22
[INFO] [stdout]     |
[INFO] [stdout] 235 | async fn process_job(job: &Job) -> Result<()> {
[INFO] [stdout]     |                      ^^^ help: if this is intentional, prefix it with an underscore: `_job`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `job`
[INFO] [stdout]    --> src/commands/queue.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 | async fn mark_job_as_failed(job: &Job, error: &str) -> Result<()> {
[INFO] [stdout]     |                             ^^^ help: if this is intentional, prefix it with an underscore: `_job`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `error`
[INFO] [stdout]    --> src/commands/queue.rs:248:40
[INFO] [stdout]     |
[INFO] [stdout] 248 | async fn mark_job_as_failed(job: &Job, error: &str) -> Result<()> {
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_error`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `class_name`
[INFO] [stdout]   --> src/commands/make.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 71 |     let class_name = CommandUtils::to_pascal_case(&name);
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_class_name`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `create`
[INFO] [stdout]    --> src/commands/make.rs:148:39
[INFO] [stdout]     |
[INFO] [stdout] 148 | async fn make_migration(name: String, create: Option<String>, table: Option<String>) -> Result<()> {
[INFO] [stdout]     |                                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_create`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `table`
[INFO] [stdout]    --> src/commands/make.rs:148:63
[INFO] [stdout]     |
[INFO] [stdout] 148 | async fn make_migration(name: String, create: Option<String>, table: Option<String>) -> Result<()> {
[INFO] [stdout]     |                                                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `event`
[INFO] [stdout]    --> src/commands/make.rs:500:38
[INFO] [stdout]     |
[INFO] [stdout] 500 | async fn make_listener(name: String, event: Option<String>) -> Result<()> {
[INFO] [stdout]     |                                      ^^^^^ help: if this is intentional, prefix it with an underscore: `_event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]    --> src/commands/make.rs:512:36
[INFO] [stdout]     |
[INFO] [stdout] 512 | async fn make_policy(name: String, model: Option<String>) -> Result<()> {
[INFO] [stdout]     |                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `template_vars`
[INFO] [stdout]    --> src/commands/make.rs:529:9
[INFO] [stdout]     |
[INFO] [stdout] 529 |     let template_vars = serde_json::json!({
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_template_vars`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `module_dir`
[INFO] [stdout]    --> src/commands/make.rs:612:23
[INFO] [stdout]     |
[INFO] [stdout] 612 | fn update_module_file(module_dir: &str, component_name: &str) -> Result<()> {
[INFO] [stdout]     |                       ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_module_dir`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `component_name`
[INFO] [stdout]    --> src/commands/make.rs:612:41
[INFO] [stdout]     |
[INFO] [stdout] 612 | fn update_module_file(module_dir: &str, component_name: &str) -> Result<()> {
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_component_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/commands/deploy.rs:288:21
[INFO] [stdout]     |
[INFO] [stdout] 288 | async fn deploy_aws(config: &DeploymentConfig, dry_run: bool) -> Result<()> {
[INFO] [stdout]     |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/commands/deploy.rs:305:21
[INFO] [stdout]     |
[INFO] [stdout] 305 | async fn deploy_gcp(config: &DeploymentConfig, dry_run: bool) -> Result<()> {
[INFO] [stdout]     |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/commands/deploy.rs:322:23
[INFO] [stdout]     |
[INFO] [stdout] 322 | async fn deploy_azure(config: &DeploymentConfig, dry_run: bool) -> Result<()> {
[INFO] [stdout]     |                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `host`
[INFO] [stdout]    --> src/commands/db.rs:307:35
[INFO] [stdout]     |
[INFO] [stdout] 307 | async fn test_postgres_connection(host: &str, port: &str, database: &str) -> Result<()> {
[INFO] [stdout]     |                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_host`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `port`
[INFO] [stdout]    --> src/commands/db.rs:307:47
[INFO] [stdout]     |
[INFO] [stdout] 307 | async fn test_postgres_connection(host: &str, port: &str, database: &str) -> Result<()> {
[INFO] [stdout]     |                                               ^^^^ help: if this is intentional, prefix it with an underscore: `_port`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `database`
[INFO] [stdout]    --> src/commands/db.rs:307:59
[INFO] [stdout]     |
[INFO] [stdout] 307 | async fn test_postgres_connection(host: &str, port: &str, database: &str) -> Result<()> {
[INFO] [stdout]     |                                                           ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_database`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db_name`
[INFO] [stdout]    --> src/commands/db.rs:293:35
[INFO] [stdout]     |
[INFO] [stdout] 293 | async fn create_postgres_database(db_name: &str) -> Result<()> {
[INFO] [stdout]     |                                   ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_db_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `db_name`
[INFO] [stdout]    --> src/commands/db.rs:300:33
[INFO] [stdout]     |
[INFO] [stdout] 300 | async fn drop_postgres_database(db_name: &str) -> Result<()> {
[INFO] [stdout]     |                                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_db_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `name`
[INFO] [stdout]    --> src/commands/package.rs:192:33
[INFO] [stdout]     |
[INFO] [stdout] 192 | fn add_dependency_to_cargo_toml(name: &str, version: &str) -> Result<()> {
[INFO] [stdout]     |                                 ^^^^ help: if this is intentional, prefix it with an underscore: `_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `version`
[INFO] [stdout]    --> src/commands/package.rs:192:45
[INFO] [stdout]     |
[INFO] [stdout] 192 | fn add_dependency_to_cargo_toml(name: &str, version: &str) -> Result<()> {
[INFO] [stdout]     |                                             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_version`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `name`
[INFO] [stdout]    --> src/commands/package.rs:198:38
[INFO] [stdout]     |
[INFO] [stdout] 198 | fn remove_dependency_from_cargo_toml(name: &str) -> Result<()> {
[INFO] [stdout]     |                                      ^^^^ help: if this is intentional, prefix it with an underscore: `_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `server_command`
[INFO] [stdout]   --> src/commands/dev.rs:41:13
[INFO] [stdout]    |
[INFO] [stdout] 41 |         let server_command = format!("cargo run -- serve --host {} --port {} --reload", host, port);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_server_command`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `job`
[INFO] [stdout]    --> src/commands/queue.rs:235:22
[INFO] [stdout]     |
[INFO] [stdout] 235 | async fn process_job(job: &Job) -> Result<()> {
[INFO] [stdout]     |                      ^^^ help: if this is intentional, prefix it with an underscore: `_job`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `job`
[INFO] [stdout]    --> src/commands/queue.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 | async fn mark_job_as_failed(job: &Job, error: &str) -> Result<()> {
[INFO] [stdout]     |                             ^^^ help: if this is intentional, prefix it with an underscore: `_job`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `error`
[INFO] [stdout]    --> src/commands/queue.rs:248:40
[INFO] [stdout]     |
[INFO] [stdout] 248 | async fn mark_job_as_failed(job: &Job, error: &str) -> Result<()> {
[INFO] [stdout]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_error`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/commands/deploy.rs:288:21
[INFO] [stdout]     |
[INFO] [stdout] 288 | async fn deploy_aws(config: &DeploymentConfig, dry_run: bool) -> Result<()> {
[INFO] [stdout]     |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/commands/deploy.rs:305:21
[INFO] [stdout]     |
[INFO] [stdout] 305 | async fn deploy_gcp(config: &DeploymentConfig, dry_run: bool) -> Result<()> {
[INFO] [stdout]     |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/commands/deploy.rs:322:23
[INFO] [stdout]     |
[INFO] [stdout] 322 | async fn deploy_azure(config: &DeploymentConfig, dry_run: bool) -> Result<()> {
[INFO] [stdout]     |                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `name`
[INFO] [stdout]    --> src/commands/package.rs:192:33
[INFO] [stdout]     |
[INFO] [stdout] 192 | fn add_dependency_to_cargo_toml(name: &str, version: &str) -> Result<()> {
[INFO] [stdout]     |                                 ^^^^ help: if this is intentional, prefix it with an underscore: `_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `version`
[INFO] [stdout]    --> src/commands/package.rs:192:45
[INFO] [stdout]     |
[INFO] [stdout] 192 | fn add_dependency_to_cargo_toml(name: &str, version: &str) -> Result<()> {
[INFO] [stdout]     |                                             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_version`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `name`
[INFO] [stdout]    --> src/commands/package.rs:198:38
[INFO] [stdout]     |
[INFO] [stdout] 198 | fn remove_dependency_from_cargo_toml(name: &str) -> Result<()> {
[INFO] [stdout]     |                                      ^^^^ help: if this is intentional, prefix it with an underscore: `_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `server_command`
[INFO] [stdout]   --> src/commands/dev.rs:41:13
[INFO] [stdout]    |
[INFO] [stdout] 41 |         let server_command = format!("cargo run -- serve --host {} --port {} --reload", host, port);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_server_command`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `execute_command` is never used
[INFO] [stdout]   --> src/commands/mod.rs:53:12
[INFO] [stdout]    |
[INFO] [stdout] 37 | impl CommandUtils {
[INFO] [stdout]    | ----------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub fn execute_command(cmd: &str, args: &[&str]) -> 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 `check_server_health` is never used
[INFO] [stdout]    --> src/commands/serve.rs:195:14
[INFO] [stdout]     |
[INFO] [stdout] 195 | pub async fn check_server_health(host: &str, port: u16) -> bool {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `wait_for_server` is never used
[INFO] [stdout]    --> src/commands/serve.rs:205:14
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub async fn wait_for_server(host: &str, port: u16, timeout_seconds: u64) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `display_server_info` is never used
[INFO] [stdout]    --> src/commands/serve.rs:220:8
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub fn display_server_info(host: &str, port: u16) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_local_ip` is never used
[INFO] [stdout]    --> src/commands/serve.rs:238:4
[INFO] [stdout]     |
[INFO] [stdout] 238 | fn get_local_ip() -> Result<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `job_type`, `payload`, `queue`, and `attempts` are never read
[INFO] [stdout]    --> src/commands/queue.rs:202:5
[INFO] [stdout]     |
[INFO] [stdout] 200 | struct Job {
[INFO] [stdout]     |        --- fields in this struct
[INFO] [stdout] 201 |     id: String,
[INFO] [stdout] 202 |     job_type: String,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 203 |     payload: String,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 204 |     queue: String,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 205 |     attempts: u32,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Job` 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 `payload` is never read
[INFO] [stdout]    --> src/commands/queue.rs:212:5
[INFO] [stdout]     |
[INFO] [stdout] 209 | struct FailedJob {
[INFO] [stdout]     |        --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 212 |     payload: String,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FailedJob` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_unit_tests` is never used
[INFO] [stdout]    --> src/commands/test.rs:167:14
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub async fn run_unit_tests() -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_integration_tests` is never used
[INFO] [stdout]    --> src/commands/test.rs:183:14
[INFO] [stdout]     |
[INFO] [stdout] 183 | pub async fn run_integration_tests() -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_benchmark_tests` is never used
[INFO] [stdout]    --> src/commands/test.rs:199:14
[INFO] [stdout]     |
[INFO] [stdout] 199 | pub async fn run_benchmark_tests() -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `watch_tests` is never used
[INFO] [stdout]    --> src/commands/test.rs:216:14
[INFO] [stdout]     |
[INFO] [stdout] 216 | pub async fn watch_tests() -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `build_production` is never used
[INFO] [stdout]    --> src/commands/build.rs:281:14
[INFO] [stdout]     |
[INFO] [stdout] 281 | pub async fn build_production() -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `build_development` is never used
[INFO] [stdout]    --> src/commands/build.rs:286:14
[INFO] [stdout]     |
[INFO] [stdout] 286 | pub async fn build_development() -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `build_target` is never used
[INFO] [stdout]    --> src/commands/build.rs:291:14
[INFO] [stdout]     |
[INFO] [stdout] 291 | pub async fn build_target(target: &str) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `port` is never read
[INFO] [stdout]   --> src/commands/deploy.rs:71:5
[INFO] [stdout]    |
[INFO] [stdout] 68 | struct DeploymentConfig {
[INFO] [stdout]    |        ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 71 |     port: Option<u16>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DeploymentConfig` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_deployment_config` is never used
[INFO] [stdout]    --> src/commands/deploy.rs:392:14
[INFO] [stdout]     |
[INFO] [stdout] 392 | pub async fn create_deployment_config(target: &str) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `description` is never read
[INFO] [stdout]    --> src/commands/package.rs:170:5
[INFO] [stdout]     |
[INFO] [stdout] 166 | struct PackageInfo {
[INFO] [stdout]     |        ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 170 |     description: Option<String>,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PackageInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `search_packages` is never used
[INFO] [stdout]    --> src/commands/package.rs:320:14
[INFO] [stdout]     |
[INFO] [stdout] 320 | pub async fn search_packages(query: &str) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_outdated` is never used
[INFO] [stdout]    --> src/commands/package.rs:339:14
[INFO] [stdout]     |
[INFO] [stdout] 339 | pub async fn check_outdated() -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_all_checks` is never used
[INFO] [stdout]    --> src/commands/dev.rs:173:14
[INFO] [stdout]     |
[INFO] [stdout] 173 | pub async fn run_all_checks() -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_tests` is never used
[INFO] [stdout]    --> src/commands/dev.rs:193:10
[INFO] [stdout]     |
[INFO] [stdout] 193 | async fn run_tests() -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `setup_dev_environment` is never used
[INFO] [stdout]    --> src/commands/dev.rs:209:14
[INFO] [stdout]     |
[INFO] [stdout] 209 | pub async fn setup_dev_environment() -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_dev_config_files` is never used
[INFO] [stdout]    --> src/commands/dev.rs:242:10
[INFO] [stdout]     |
[INFO] [stdout] 242 | async fn create_dev_config_files() -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `profile_app` is never used
[INFO] [stdout]    --> src/commands/dev.rs:303:14
[INFO] [stdout]     |
[INFO] [stdout] 303 | pub async fn profile_app() -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `benchmark` is never used
[INFO] [stdout]    --> src/commands/dev.rs:343:14
[INFO] [stdout]     |
[INFO] [stdout] 343 | pub async fn benchmark() -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Generator` is never used
[INFO] [stdout]   --> src/generators/mod.rs:30:11
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub trait Generator {
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GeneratorOptions` is never constructed
[INFO] [stdout]   --> src/generators/mod.rs:52:12
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub struct GeneratorOptions {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `has_template` is never used
[INFO] [stdout]   --> src/generators/mod.rs:98:12
[INFO] [stdout]    |
[INFO] [stdout] 74 | impl TemplateManager {
[INFO] [stdout]    | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 98 |     pub fn has_template(&self, name: &str) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GeneratorUtils` is never constructed
[INFO] [stdout]    --> src/generators/mod.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout] 110 | pub struct GeneratorUtils;
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `name_variations`, `check_file_exists`, `ensure_directory`, `write_file`, and `update_module_file` are never used
[INFO] [stdout]    --> src/generators/mod.rs:114:12
[INFO] [stdout]     |
[INFO] [stdout] 112 | impl GeneratorUtils {
[INFO] [stdout]     | ------------------- associated functions in this implementation
[INFO] [stdout] 113 |     /// Convert name to various cases
[INFO] [stdout] 114 |     pub fn name_variations(name: &str) -> HashMap<String, String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 130 |     pub fn check_file_exists(path: &Path, force: bool) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     pub fn ensure_directory(path: &Path) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 149 |     pub fn write_file(path: &Path, content: &str) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |     pub fn update_module_file(module_dir: &Path, component_name: &str) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_camel_case` is never used
[INFO] [stdout]    --> src/generators/mod.rs:174:4
[INFO] [stdout]     |
[INFO] [stdout] 174 | fn to_camel_case(input: &str) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_kebab_case` is never used
[INFO] [stdout]    --> src/generators/mod.rs:184:4
[INFO] [stdout]     |
[INFO] [stdout] 184 | fn to_kebab_case(input: &str) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_title_case` is never used
[INFO] [stdout]    --> src/generators/mod.rs:189:4
[INFO] [stdout]     |
[INFO] [stdout] 189 | fn to_title_case(input: &str) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pluralize` is never used
[INFO] [stdout]    --> src/generators/mod.rs:204:4
[INFO] [stdout]     |
[INFO] [stdout] 204 | fn pluralize(input: &str) -> String {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `singularize` is never used
[INFO] [stdout]    --> src/generators/mod.rs:221:4
[INFO] [stdout]     |
[INFO] [stdout] 221 | fn singularize(input: &str) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FileUtils` is never constructed
[INFO] [stdout]   --> src/utils.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct FileUtils;
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated functions are never used
[INFO] [stdout]   --> src/utils.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl FileUtils {
[INFO] [stdout]    | -------------- associated functions in this implementation
[INFO] [stdout] 15 |     /// Check if a file exists
[INFO] [stdout] 16 |     pub fn exists<P: AsRef<Path>>(path: P) -> bool {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn ensure_dir<P: AsRef<Path>>(path: P) -> Result<()> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub fn copy_file<P: AsRef<Path>, Q: AsRef<Path>>(from: P, to: Q) -> Result<()> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn write_file<P: AsRef<Path>>(path: P, content: &str) -> Result<()> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     pub fn read_file<P: AsRef<Path>>(path: P) -> Result<String> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub fn find_files_with_extension<P: AsRef<Path>>(dir: P, extension: &str) -> Result<Vec<PathBuf>> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 78 |     pub fn file_stem<P: AsRef<Path>>(path: P) -> Option<String> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProcessUtils` is never constructed
[INFO] [stdout]   --> src/utils.rs:87:12
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub struct ProcessUtils;
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `command_exists`, `execute`, and `execute_with_output` are never used
[INFO] [stdout]    --> src/utils.rs:91:12
[INFO] [stdout]     |
[INFO] [stdout]  89 | impl ProcessUtils {
[INFO] [stdout]     | ----------------- associated functions in this implementation
[INFO] [stdout]  90 |     /// Check if a command exists in PATH
[INFO] [stdout]  91 |     pub fn command_exists(command: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub fn execute(command: &str, args: &[&str]) -> Result<bool> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub fn execute_with_output(command: &str, args: &[&str]) -> Result<(bool, String, String)> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TextUtils` is never constructed
[INFO] [stdout]    --> src/utils.rs:122:12
[INFO] [stdout]     |
[INFO] [stdout] 122 | pub struct TextUtils;
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `capitalize` is never used
[INFO] [stdout]    --> src/utils.rs:126:12
[INFO] [stdout]     |
[INFO] [stdout] 124 | impl TextUtils {
[INFO] [stdout]     | -------------- associated function in this implementation
[INFO] [stdout] 125 |     /// Capitalize first letter
[INFO] [stdout] 126 |     pub fn capitalize(s: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `execute_command` is never used
[INFO] [stdout]   --> src/commands/mod.rs:53:12
[INFO] [stdout]    |
[INFO] [stdout] 37 | impl CommandUtils {
[INFO] [stdout]    | ----------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub fn execute_command(cmd: &str, args: &[&str]) -> 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 `check_server_health` is never used
[INFO] [stdout]    --> src/commands/serve.rs:195:14
[INFO] [stdout]     |
[INFO] [stdout] 195 | pub async fn check_server_health(host: &str, port: u16) -> bool {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `wait_for_server` is never used
[INFO] [stdout]    --> src/commands/serve.rs:205:14
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub async fn wait_for_server(host: &str, port: u16, timeout_seconds: u64) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `display_server_info` is never used
[INFO] [stdout]    --> src/commands/serve.rs:220:8
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub fn display_server_info(host: &str, port: u16) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_local_ip` is never used
[INFO] [stdout]    --> src/commands/serve.rs:238:4
[INFO] [stdout]     |
[INFO] [stdout] 238 | fn get_local_ip() -> Result<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `job_type`, `payload`, `queue`, and `attempts` are never read
[INFO] [stdout]    --> src/commands/queue.rs:202:5
[INFO] [stdout]     |
[INFO] [stdout] 200 | struct Job {
[INFO] [stdout]     |        --- fields in this struct
[INFO] [stdout] 201 |     id: String,
[INFO] [stdout] 202 |     job_type: String,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 203 |     payload: String,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 204 |     queue: String,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 205 |     attempts: u32,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Job` 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 `payload` is never read
[INFO] [stdout]    --> src/commands/queue.rs:212:5
[INFO] [stdout]     |
[INFO] [stdout] 209 | struct FailedJob {
[INFO] [stdout]     |        --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 212 |     payload: String,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FailedJob` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_unit_tests` is never used
[INFO] [stdout]    --> src/commands/test.rs:167:14
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub async fn run_unit_tests() -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_integration_tests` is never used
[INFO] [stdout]    --> src/commands/test.rs:183:14
[INFO] [stdout]     |
[INFO] [stdout] 183 | pub async fn run_integration_tests() -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_benchmark_tests` is never used
[INFO] [stdout]    --> src/commands/test.rs:199:14
[INFO] [stdout]     |
[INFO] [stdout] 199 | pub async fn run_benchmark_tests() -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `watch_tests` is never used
[INFO] [stdout]    --> src/commands/test.rs:216:14
[INFO] [stdout]     |
[INFO] [stdout] 216 | pub async fn watch_tests() -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `build_production` is never used
[INFO] [stdout]    --> src/commands/build.rs:281:14
[INFO] [stdout]     |
[INFO] [stdout] 281 | pub async fn build_production() -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `build_development` is never used
[INFO] [stdout]    --> src/commands/build.rs:286:14
[INFO] [stdout]     |
[INFO] [stdout] 286 | pub async fn build_development() -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `build_target` is never used
[INFO] [stdout]    --> src/commands/build.rs:291:14
[INFO] [stdout]     |
[INFO] [stdout] 291 | pub async fn build_target(target: &str) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `port` is never read
[INFO] [stdout]   --> src/commands/deploy.rs:71:5
[INFO] [stdout]    |
[INFO] [stdout] 68 | struct DeploymentConfig {
[INFO] [stdout]    |        ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 71 |     port: Option<u16>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DeploymentConfig` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_deployment_config` is never used
[INFO] [stdout]    --> src/commands/deploy.rs:392:14
[INFO] [stdout]     |
[INFO] [stdout] 392 | pub async fn create_deployment_config(target: &str) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `description` is never read
[INFO] [stdout]    --> src/commands/package.rs:170:5
[INFO] [stdout]     |
[INFO] [stdout] 166 | struct PackageInfo {
[INFO] [stdout]     |        ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 170 |     description: Option<String>,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PackageInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `search_packages` is never used
[INFO] [stdout]    --> src/commands/package.rs:320:14
[INFO] [stdout]     |
[INFO] [stdout] 320 | pub async fn search_packages(query: &str) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_outdated` is never used
[INFO] [stdout]    --> src/commands/package.rs:339:14
[INFO] [stdout]     |
[INFO] [stdout] 339 | pub async fn check_outdated() -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_all_checks` is never used
[INFO] [stdout]    --> src/commands/dev.rs:173:14
[INFO] [stdout]     |
[INFO] [stdout] 173 | pub async fn run_all_checks() -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_tests` is never used
[INFO] [stdout]    --> src/commands/dev.rs:193:10
[INFO] [stdout]     |
[INFO] [stdout] 193 | async fn run_tests() -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `setup_dev_environment` is never used
[INFO] [stdout]    --> src/commands/dev.rs:209:14
[INFO] [stdout]     |
[INFO] [stdout] 209 | pub async fn setup_dev_environment() -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_dev_config_files` is never used
[INFO] [stdout]    --> src/commands/dev.rs:242:10
[INFO] [stdout]     |
[INFO] [stdout] 242 | async fn create_dev_config_files() -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `profile_app` is never used
[INFO] [stdout]    --> src/commands/dev.rs:303:14
[INFO] [stdout]     |
[INFO] [stdout] 303 | pub async fn profile_app() -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `benchmark` is never used
[INFO] [stdout]    --> src/commands/dev.rs:343:14
[INFO] [stdout]     |
[INFO] [stdout] 343 | pub async fn benchmark() -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Generator` is never used
[INFO] [stdout]   --> src/generators/mod.rs:30:11
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub trait Generator {
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GeneratorOptions` is never constructed
[INFO] [stdout]   --> src/generators/mod.rs:52:12
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub struct GeneratorOptions {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `has_template` is never used
[INFO] [stdout]   --> src/generators/mod.rs:98:12
[INFO] [stdout]    |
[INFO] [stdout] 74 | impl TemplateManager {
[INFO] [stdout]    | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 98 |     pub fn has_template(&self, name: &str) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GeneratorUtils` is never constructed
[INFO] [stdout]    --> src/generators/mod.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout] 110 | pub struct GeneratorUtils;
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `name_variations`, `check_file_exists`, `ensure_directory`, `write_file`, and `update_module_file` are never used
[INFO] [stdout]    --> src/generators/mod.rs:114:12
[INFO] [stdout]     |
[INFO] [stdout] 112 | impl GeneratorUtils {
[INFO] [stdout]     | ------------------- associated functions in this implementation
[INFO] [stdout] 113 |     /// Convert name to various cases
[INFO] [stdout] 114 |     pub fn name_variations(name: &str) -> HashMap<String, String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 130 |     pub fn check_file_exists(path: &Path, force: bool) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     pub fn ensure_directory(path: &Path) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 149 |     pub fn write_file(path: &Path, content: &str) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |     pub fn update_module_file(module_dir: &Path, component_name: &str) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_camel_case` is never used
[INFO] [stdout]    --> src/generators/mod.rs:174:4
[INFO] [stdout]     |
[INFO] [stdout] 174 | fn to_camel_case(input: &str) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_kebab_case` is never used
[INFO] [stdout]    --> src/generators/mod.rs:184:4
[INFO] [stdout]     |
[INFO] [stdout] 184 | fn to_kebab_case(input: &str) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_title_case` is never used
[INFO] [stdout]    --> src/generators/mod.rs:189:4
[INFO] [stdout]     |
[INFO] [stdout] 189 | fn to_title_case(input: &str) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pluralize` is never used
[INFO] [stdout]    --> src/generators/mod.rs:204:4
[INFO] [stdout]     |
[INFO] [stdout] 204 | fn pluralize(input: &str) -> String {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `singularize` is never used
[INFO] [stdout]    --> src/generators/mod.rs:221:4
[INFO] [stdout]     |
[INFO] [stdout] 221 | fn singularize(input: &str) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FileUtils` is never constructed
[INFO] [stdout]   --> src/utils.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct FileUtils;
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated functions are never used
[INFO] [stdout]   --> src/utils.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl FileUtils {
[INFO] [stdout]    | -------------- associated functions in this implementation
[INFO] [stdout] 15 |     /// Check if a file exists
[INFO] [stdout] 16 |     pub fn exists<P: AsRef<Path>>(path: P) -> bool {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn ensure_dir<P: AsRef<Path>>(path: P) -> Result<()> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub fn copy_file<P: AsRef<Path>, Q: AsRef<Path>>(from: P, to: Q) -> Result<()> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn write_file<P: AsRef<Path>>(path: P, content: &str) -> Result<()> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     pub fn read_file<P: AsRef<Path>>(path: P) -> Result<String> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub fn find_files_with_extension<P: AsRef<Path>>(dir: P, extension: &str) -> Result<Vec<PathBuf>> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 78 |     pub fn file_stem<P: AsRef<Path>>(path: P) -> Option<String> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProcessUtils` is never constructed
[INFO] [stdout]   --> src/utils.rs:87:12
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub struct ProcessUtils;
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `command_exists`, `execute`, and `execute_with_output` are never used
[INFO] [stdout]    --> src/utils.rs:91:12
[INFO] [stdout]     |
[INFO] [stdout]  89 | impl ProcessUtils {
[INFO] [stdout]     | ----------------- associated functions in this implementation
[INFO] [stdout]  90 |     /// Check if a command exists in PATH
[INFO] [stdout]  91 |     pub fn command_exists(command: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub fn execute(command: &str, args: &[&str]) -> Result<bool> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub fn execute_with_output(command: &str, args: &[&str]) -> Result<(bool, String, String)> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TextUtils` is never constructed
[INFO] [stdout]    --> src/utils.rs:122:12
[INFO] [stdout]     |
[INFO] [stdout] 122 | pub struct TextUtils;
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `capitalize` is never used
[INFO] [stdout]    --> src/utils.rs:126:12
[INFO] [stdout]     |
[INFO] [stdout] 124 | impl TextUtils {
[INFO] [stdout]     | -------------- associated function in this implementation
[INFO] [stdout] 125 |     /// Capitalize first letter
[INFO] [stdout] 126 |     pub fn capitalize(s: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 25.62s
[INFO] running `Command { std: "docker" "inspect" "bba54168243f5ff9ad3695410eb27dc6cfe66f4cd1c6f068eaa5ed96bb02d042", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bba54168243f5ff9ad3695410eb27dc6cfe66f4cd1c6f068eaa5ed96bb02d042", kill_on_drop: false }`
[INFO] [stdout] bba54168243f5ff9ad3695410eb27dc6cfe66f4cd1c6f068eaa5ed96bb02d042
