[INFO] fetching crate kybercheck 1.8.0... [INFO] checking kybercheck-1.8.0 against master#bbe853615821442ef11d6cd42a30a73432b38d89 for pr-154205 [INFO] extracting crate kybercheck 1.8.0 into /workspace/builds/worker-7-tc1/source [INFO] started tweaking crates.io crate kybercheck 1.8.0 [INFO] finished tweaking crates.io crate kybercheck 1.8.0 [INFO] tweaked toml for crates.io crate kybercheck 1.8.0 written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate kybercheck 1.8.0 on toolchain bbe853615821442ef11d6cd42a30a73432b38d89 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bbe853615821442ef11d6cd42a30a73432b38d89" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate kybercheck 1.8.0 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" "+bbe853615821442ef11d6cd42a30a73432b38d89" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded signal-hook-registry v1.4.7 [INFO] [stderr] Downloaded assert_cmd v2.1.1 [INFO] [stderr] Downloaded pest_meta v2.8.4 [INFO] [stderr] Downloaded pest_derive v2.8.4 [INFO] [stderr] Downloaded tracing-core v0.1.35 [INFO] [stderr] Downloaded tree-sitter v0.20.10 [INFO] [stderr] Downloaded tracing v0.1.43 [INFO] [stderr] Downloaded tree-sitter-go v0.20.0 [INFO] [stderr] Downloaded pest v2.8.4 [INFO] [stderr] Downloaded tree-sitter-python v0.20.4 [INFO] [stderr] Downloaded tree-sitter-java v0.20.2 [INFO] [stderr] Downloaded tree-sitter-javascript v0.20.4 [INFO] [stderr] Downloaded cc v1.0.106 [INFO] [stderr] Downloaded pest_generator v2.8.4 [INFO] [stderr] Downloaded tree-sitter-c v0.20.8 [INFO] [stderr] Downloaded tree-sitter-rust v0.20.4 [INFO] [stderr] Downloaded tree-sitter-php v0.20.0 [INFO] [stderr] Downloaded tree-sitter-bash v0.20.5 [INFO] [stderr] Downloaded tree-sitter-ruby v0.20.1 [INFO] [stderr] Downloaded libssh2-sys v0.3.1 [INFO] [stderr] Downloaded tree-sitter-c-sharp v0.20.0 [INFO] [stderr] Downloaded tree-sitter-cpp v0.20.5 [INFO] [stderr] Downloaded tree-sitter-typescript v0.20.5 [INFO] [stderr] Downloaded ring v0.17.9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+bbe853615821442ef11d6cd42a30a73432b38d89" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] e2f8885f417517e8af8b5e419705e5e687d300092fd9bd5f5d562eacf61ca62d [INFO] running `Command { std: "docker" "start" "-a" "e2f8885f417517e8af8b5e419705e5e687d300092fd9bd5f5d562eacf61ca62d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e2f8885f417517e8af8b5e419705e5e687d300092fd9bd5f5d562eacf61ca62d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e2f8885f417517e8af8b5e419705e5e687d300092fd9bd5f5d562eacf61ca62d", kill_on_drop: false }` [INFO] [stdout] e2f8885f417517e8af8b5e419705e5e687d300092fd9bd5f5d562eacf61ca62d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+bbe853615821442ef11d6cd42a30a73432b38d89" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d6dfbb7b521f2dd93ba2c27b3c7c13186149480e07bfec2c41a5f3c907170e4d [INFO] running `Command { std: "docker" "start" "-a" "d6dfbb7b521f2dd93ba2c27b3c7c13186149480e07bfec2c41a5f3c907170e4d", kill_on_drop: false }` [INFO] [stderr] Compiling once_cell v1.21.3 [INFO] [stderr] Checking regex-syntax v0.8.8 [INFO] [stderr] Compiling libc v0.2.178 [INFO] [stderr] Checking aho-corasick v1.1.4 [INFO] [stderr] Checking getrandom v0.2.16 [INFO] [stderr] Checking mio v1.1.1 [INFO] [stderr] Checking signal-hook-registry v1.4.7 [INFO] [stderr] Checking socket2 v0.6.1 [INFO] [stderr] Checking tracing-core v0.1.35 [INFO] [stderr] Checking parking_lot_core v0.9.12 [INFO] [stderr] Compiling syn v2.0.111 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Checking indexmap v2.12.1 [INFO] [stderr] Compiling memchr v2.7.6 [INFO] [stderr] Checking http v0.2.12 [INFO] [stderr] Compiling rustls v0.21.12 [INFO] [stderr] Checking futures-task v0.3.31 [INFO] [stderr] Checking generic-array v0.14.7 [INFO] [stderr] Checking ahash v0.7.8 [INFO] [stderr] Compiling serde_json v1.0.145 [INFO] [stderr] Checking parking_lot v0.12.5 [INFO] [stderr] Checking slab v0.4.11 [INFO] [stderr] Checking hashbrown v0.12.3 [INFO] [stderr] Checking socket2 v0.5.10 [INFO] [stderr] Compiling rustix v1.1.2 [INFO] [stderr] Checking futures-util v0.3.31 [INFO] [stderr] Checking pest v2.8.4 [INFO] [stderr] Checking getrandom v0.3.4 [INFO] [stderr] Checking predicates-core v1.0.9 [INFO] [stderr] Checking winnow v0.7.14 [INFO] [stderr] Checking ordered-multimap v0.4.3 [INFO] [stderr] Checking toml_write v0.1.2 [INFO] [stderr] Checking dirs-sys v0.4.1 [INFO] [stderr] Checking http-body v0.4.6 [INFO] [stderr] Checking console v0.15.11 [INFO] [stderr] Checking nom v7.1.3 [INFO] [stderr] Checking tracing-log v0.2.0 [INFO] [stderr] Checking rust-ini v0.18.0 [INFO] [stderr] Compiling jobserver v0.1.34 [INFO] [stderr] Checking float-cmp v0.10.0 [INFO] [stderr] Checking number_prefix v0.4.0 [INFO] [stderr] Checking normalize-line-endings v0.3.0 [INFO] [stderr] Checking block-buffer v0.10.4 [INFO] [stderr] Checking crypto-common v0.1.7 [INFO] [stderr] Checking webpki-roots v0.25.4 [INFO] [stderr] Checking termtree v0.5.1 [INFO] [stderr] Compiling assert_cmd v2.1.1 [INFO] [stderr] Checking difflib v0.4.0 [INFO] [stderr] Checking ipnet v2.11.0 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Checking iana-time-zone v0.1.64 [INFO] [stderr] Checking rayon v1.11.0 [INFO] [stderr] Checking predicates-tree v1.0.12 [INFO] [stderr] Checking indicatif v0.17.11 [INFO] [stderr] Checking directories v5.0.1 [INFO] [stderr] Checking uuid v1.19.0 [INFO] [stderr] Checking colored v2.2.0 [INFO] [stderr] Compiling cc v1.0.106 [INFO] [stderr] Checking sha2 v0.10.9 [INFO] [stderr] Checking regex-automata v0.4.13 [INFO] [stderr] Checking wait-timeout v0.2.1 [INFO] [stderr] Compiling pest_meta v2.8.4 [INFO] [stderr] Compiling tree-sitter v0.20.10 [INFO] [stderr] Compiling ring v0.17.9 [INFO] [stderr] Compiling openssl-sys v0.9.111 [INFO] [stderr] Compiling libz-sys v1.1.23 [INFO] [stderr] Compiling libssh2-sys v0.3.1 [INFO] [stderr] Compiling libgit2-sys v0.16.2+1.7.2 [INFO] [stderr] Compiling tree-sitter-rust v0.20.4 [INFO] [stderr] Compiling tree-sitter-ruby v0.20.1 [INFO] [stderr] Compiling tree-sitter-bash v0.20.5 [INFO] [stderr] Compiling tree-sitter-java v0.20.2 [INFO] [stderr] Compiling tree-sitter-typescript v0.20.5 [INFO] [stderr] Compiling tree-sitter-go v0.20.0 [INFO] [stderr] Compiling tree-sitter-php v0.20.0 [INFO] [stderr] Compiling tree-sitter-c-sharp v0.20.0 [INFO] [stderr] Compiling tree-sitter-python v0.20.4 [INFO] [stderr] Compiling tree-sitter-c v0.20.8 [INFO] [stderr] Compiling tree-sitter-javascript v0.20.4 [INFO] [stderr] Compiling tree-sitter-cpp v0.20.5 [INFO] [stderr] Checking regex v1.12.2 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling pest_generator v2.8.4 [INFO] [stderr] Checking bstr v1.12.1 [INFO] [stderr] Checking matchers v0.2.0 [INFO] [stderr] Checking predicates v3.1.3 [INFO] [stderr] Checking tempfile v3.23.0 [INFO] [stderr] Checking globset v0.4.18 [INFO] [stderr] Checking ignore v0.4.25 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.1 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling zerovec-derive v0.11.2 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling tokio-macros v2.6.0 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling pest_derive v2.8.4 [INFO] [stderr] Checking tokio v1.48.0 [INFO] [stderr] Checking zerofrom v0.1.6 [INFO] [stderr] Compiling clap_derive v4.5.49 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Checking yoke v0.8.1 [INFO] [stderr] Checking zerovec v0.11.5 [INFO] [stderr] Checking zerotrie v0.2.3 [INFO] [stderr] Checking tracing v0.1.43 [INFO] [stderr] Checking tinystr v0.8.2 [INFO] [stderr] Checking potential_utf v0.1.4 [INFO] [stderr] Checking icu_collections v2.1.1 [INFO] [stderr] Checking icu_locale_core v2.1.1 [INFO] [stderr] Checking tracing-subscriber v0.3.22 [INFO] [stderr] Checking thiserror v1.0.69 [INFO] [stderr] Checking icu_provider v2.1.1 [INFO] [stderr] Checking icu_normalizer v2.1.1 [INFO] [stderr] Checking icu_properties v2.1.2 [INFO] [stderr] Checking sct v0.7.1 [INFO] [stderr] Checking rustls-webpki v0.101.7 [INFO] [stderr] Checking serde v1.0.228 [INFO] [stderr] Checking clap v4.5.53 [INFO] [stderr] Checking toml_datetime v0.6.11 [INFO] [stderr] Checking serde_spanned v0.6.9 [INFO] [stderr] Checking json5 v0.4.1 [INFO] [stderr] Checking toml v0.5.11 [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Checking toml_edit v0.22.27 [INFO] [stderr] Checking ron v0.7.1 [INFO] [stderr] Checking chrono v0.4.42 [INFO] [stderr] Checking idna_adapter v1.2.1 [INFO] [stderr] Checking idna v1.1.0 [INFO] [stderr] Checking config v0.13.4 [INFO] [stderr] Checking url v2.5.7 [INFO] [stderr] Checking toml v0.8.23 [INFO] [stderr] Checking tokio-util v0.7.17 [INFO] [stderr] Checking tokio-rustls v0.24.1 [INFO] [stderr] Checking h2 v0.3.27 [INFO] [stderr] Checking git2 v0.18.3 [INFO] [stderr] Checking hyper v0.14.32 [INFO] [stderr] Checking hyper-rustls v0.24.2 [INFO] [stderr] Checking reqwest v0.11.27 [INFO] [stderr] Checking kybercheck v1.8.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `RulePattern` [INFO] [stdout] --> src/analyzers/mod.rs:5:41 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::rules::{get_all_rules, Rule, RulePattern}; [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 imports: `Language`, `Location`, and `MigrationImpact` [INFO] [stdout] --> src/analyzers/mod.rs:6:20 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::types::{Language, Location, MigrationImpact, Severity, Vulnerability}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `uuid::Uuid` [INFO] [stdout] --> src/analyzers/mod.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use uuid::Uuid; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/analyzers/languages/javascript.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/analyzers/languages/python.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/analyzers/languages/go.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/analyzers/languages/java.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/analyzers/languages/rust.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/analyzers/languages/cpp.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/analyzers/languages/csharp.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/analyzers/languages/php.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/analyzers/languages/ruby.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/analyzers/languages/shell.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/analyzers/languages/lua.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Language` [INFO] [stdout] --> src/analyzers/languages/kotlin.rs:16:20 [INFO] [stdout] | [INFO] [stdout] 16 | use crate::types::{Language, Location, Severity, Vulnerability, VulnerabilityType}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `kotlin::KotlinAnalyzer` [INFO] [stdout] --> src/analyzers/languages/mod.rs:48:9 [INFO] [stdout] | [INFO] [stdout] 48 | pub use kotlin::KotlinAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `swift::SwiftAnalyzer` [INFO] [stdout] --> src/analyzers/languages/mod.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | pub use swift::SwiftAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `dart::DartAnalyzer` [INFO] [stdout] --> src/analyzers/languages/mod.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | pub use dart::DartAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `scala::ScalaAnalyzer` [INFO] [stdout] --> src/analyzers/languages/mod.rs:51:9 [INFO] [stdout] | [INFO] [stdout] 51 | pub use scala::ScalaAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `perl::PerlAnalyzer` [INFO] [stdout] --> src/analyzers/languages/mod.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | pub use perl::PerlAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `objective_c::ObjectiveCAnalyzer` [INFO] [stdout] --> src/analyzers/languages/mod.rs:53:9 [INFO] [stdout] | [INFO] [stdout] 53 | pub use objective_c::ObjectiveCAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `haskell::HaskellAnalyzer` [INFO] [stdout] --> src/analyzers/languages/mod.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 54 | pub use haskell::HaskellAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `elixir::ElixirAnalyzer` [INFO] [stdout] --> src/analyzers/languages/mod.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | pub use elixir::ElixirAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `r::RAnalyzer` [INFO] [stdout] --> src/analyzers/languages/mod.rs:56:9 [INFO] [stdout] | [INFO] [stdout] 56 | pub use r::RAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `groovy::GroovyAnalyzer` [INFO] [stdout] --> src/analyzers/languages/mod.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | pub use groovy::GroovyAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fsharp::FSharpAnalyzer` [INFO] [stdout] --> src/analyzers/languages/mod.rs:58:9 [INFO] [stdout] | [INFO] [stdout] 58 | pub use fsharp::FSharpAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `clojure::ClojureAnalyzer` [INFO] [stdout] --> src/analyzers/languages/mod.rs:59:9 [INFO] [stdout] | [INFO] [stdout] 59 | pub use clojure::ClojureAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `solidity::SolidityAnalyzer` [INFO] [stdout] --> src/analyzers/languages/mod.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 60 | pub use solidity::SolidityAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `dependency_rules::DependencyRule` [INFO] [stdout] --> src/rules/mod.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub use dependency_rules::DependencyRule; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `get_parser_for_file` [INFO] [stdout] --> src/scanner.rs:17:22 [INFO] [stdout] | [INFO] [stdout] 17 | use crate::parsers::{get_parser_for_file, parse_file}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `RulePattern` [INFO] [stdout] --> src/analyzers/mod.rs:5:41 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::rules::{get_all_rules, Rule, RulePattern}; [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 imports: `Language`, `Location`, and `MigrationImpact` [INFO] [stdout] --> src/analyzers/mod.rs:6:20 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::types::{Language, Location, MigrationImpact, Severity, Vulnerability}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `uuid::Uuid` [INFO] [stdout] --> src/analyzers/mod.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use uuid::Uuid; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/analyzers/languages/javascript.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/analyzers/languages/python.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/analyzers/languages/go.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/analyzers/languages/java.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/analyzers/languages/rust.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/analyzers/languages/cpp.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/analyzers/languages/csharp.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/analyzers/languages/php.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/analyzers/languages/ruby.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/analyzers/languages/shell.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `anyhow::Result` [INFO] [stdout] --> src/analyzers/languages/lua.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use anyhow::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Language` [INFO] [stdout] --> src/analyzers/languages/kotlin.rs:16:20 [INFO] [stdout] | [INFO] [stdout] 16 | use crate::types::{Language, Location, Severity, Vulnerability, VulnerabilityType}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `kotlin::KotlinAnalyzer` [INFO] [stdout] --> src/analyzers/languages/mod.rs:48:9 [INFO] [stdout] | [INFO] [stdout] 48 | pub use kotlin::KotlinAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `swift::SwiftAnalyzer` [INFO] [stdout] --> src/analyzers/languages/mod.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | pub use swift::SwiftAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `dart::DartAnalyzer` [INFO] [stdout] --> src/analyzers/languages/mod.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | pub use dart::DartAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `scala::ScalaAnalyzer` [INFO] [stdout] --> src/analyzers/languages/mod.rs:51:9 [INFO] [stdout] | [INFO] [stdout] 51 | pub use scala::ScalaAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `perl::PerlAnalyzer` [INFO] [stdout] --> src/analyzers/languages/mod.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | pub use perl::PerlAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `objective_c::ObjectiveCAnalyzer` [INFO] [stdout] --> src/analyzers/languages/mod.rs:53:9 [INFO] [stdout] | [INFO] [stdout] 53 | pub use objective_c::ObjectiveCAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `haskell::HaskellAnalyzer` [INFO] [stdout] --> src/analyzers/languages/mod.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 54 | pub use haskell::HaskellAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `elixir::ElixirAnalyzer` [INFO] [stdout] --> src/analyzers/languages/mod.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | pub use elixir::ElixirAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `r::RAnalyzer` [INFO] [stdout] --> src/analyzers/languages/mod.rs:56:9 [INFO] [stdout] | [INFO] [stdout] 56 | pub use r::RAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `groovy::GroovyAnalyzer` [INFO] [stdout] --> src/analyzers/languages/mod.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | pub use groovy::GroovyAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fsharp::FSharpAnalyzer` [INFO] [stdout] --> src/analyzers/languages/mod.rs:58:9 [INFO] [stdout] | [INFO] [stdout] 58 | pub use fsharp::FSharpAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `clojure::ClojureAnalyzer` [INFO] [stdout] --> src/analyzers/languages/mod.rs:59:9 [INFO] [stdout] | [INFO] [stdout] 59 | pub use clojure::ClojureAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `solidity::SolidityAnalyzer` [INFO] [stdout] --> src/analyzers/languages/mod.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 60 | pub use solidity::SolidityAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `dependency_rules::DependencyRule` [INFO] [stdout] --> src/rules/mod.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub use dependency_rules::DependencyRule; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `get_parser_for_file` [INFO] [stdout] --> src/scanner.rs:17:22 [INFO] [stdout] | [INFO] [stdout] 17 | use crate::parsers::{get_parser_for_file, parse_file}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `tempfile::TempDir::into_path`: use TempDir::keep() [INFO] [stdout] --> src/main.rs:780:34 [INFO] [stdout] | [INFO] [stdout] 780 | let kept_path = temp_dir.into_path(); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `tempfile::TempDir::into_path`: use TempDir::keep() [INFO] [stdout] --> src/main.rs:780:34 [INFO] [stdout] | [INFO] [stdout] 780 | let kept_path = temp_dir.into_path(); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `node` [INFO] [stdout] --> src/analyzers/ast_analyzer.rs:200:9 [INFO] [stdout] | [INFO] [stdout] 200 | node: &Node, [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/analyzers/pattern_matcher.rs:2038:13 [INFO] [stdout] | [INFO] [stdout] 2038 | let mut in_java_string = false; // "..." [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/analyzers/pattern_matcher.rs:2039:13 [INFO] [stdout] | [INFO] [stdout] 2039 | let mut in_lua_multiline = false; // [[ ... ]] [INFO] [stdout] | ----^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `in_java_string` [INFO] [stdout] --> src/analyzers/pattern_matcher.rs:2038:13 [INFO] [stdout] | [INFO] [stdout] 2038 | let mut in_java_string = false; // "..." [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_in_java_string` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `in_lua_multiline` [INFO] [stdout] --> src/analyzers/pattern_matcher.rs:2039:13 [INFO] [stdout] | [INFO] [stdout] 2039 | let mut in_lua_multiline = false; // [[ ... ]] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_in_lua_multiline` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `last_char` is assigned to, but never used [INFO] [stdout] --> src/analyzers/pattern_matcher.rs:2043:13 [INFO] [stdout] | [INFO] [stdout] 2043 | let mut last_char = ' '; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_last_char` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `last_char` is never read [INFO] [stdout] --> src/analyzers/pattern_matcher.rs:2081:13 [INFO] [stdout] | [INFO] [stdout] 2081 | last_char = ch; [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: unreachable pattern [INFO] [stdout] --> src/analyzers/pattern_matcher.rs:2135:13 [INFO] [stdout] | [INFO] [stdout] 2135 | _ => (&["//", "#"], &[], &[]) // Default fallback includes both // and # [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/analyzers/pattern_matcher.rs:2135:13 [INFO] [stdout] | [INFO] [stdout] 2094 | / Language::JavaScript | Language::TypeScript | Language::Java | Language::Rust | [INFO] [stdout] 2095 | | Language::C | Language::Cpp | Language::CSharp | Language::Go | Language::Kotlin | [INFO] [stdout] 2096 | | Language::Scala | Language::Swift | Language::Dart | Language::Groovy | [INFO] [stdout] 2097 | | Language::ObjectiveC | Language::Php | Language::Solidity => { [INFO] [stdout] | |_____________________________________________________________________- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 2100 | Language::Python => { [INFO] [stdout] | ---------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 2103 | Language::Ruby => { [INFO] [stdout] | -------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 2108 | Language::Shell | Language::Perl | Language::R => { [INFO] [stdout] | ---------------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 2135 | _ => (&["//", "#"], &[], &[]) // Default fallback includes both // and # [INFO] [stdout] | ^ ...and 6 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/analyzers/languages/javascript.rs:358:13 [INFO] [stdout] | [INFO] [stdout] 120 | "call_expression" => { [INFO] [stdout] | ----------------- matches all the relevant values [INFO] [stdout] ... [INFO] [stdout] 358 | "call_expression" if node_text.contains("require(") => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `node` [INFO] [stdout] --> src/analyzers/ast_analyzer.rs:200:9 [INFO] [stdout] | [INFO] [stdout] 200 | node: &Node, [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/analyzers/pattern_matcher.rs:2038:13 [INFO] [stdout] | [INFO] [stdout] 2038 | let mut in_java_string = false; // "..." [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/analyzers/pattern_matcher.rs:2039:13 [INFO] [stdout] | [INFO] [stdout] 2039 | let mut in_lua_multiline = false; // [[ ... ]] [INFO] [stdout] | ----^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `in_java_string` [INFO] [stdout] --> src/analyzers/pattern_matcher.rs:2038:13 [INFO] [stdout] | [INFO] [stdout] 2038 | let mut in_java_string = false; // "..." [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_in_java_string` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `in_lua_multiline` [INFO] [stdout] --> src/analyzers/pattern_matcher.rs:2039:13 [INFO] [stdout] | [INFO] [stdout] 2039 | let mut in_lua_multiline = false; // [[ ... ]] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_in_lua_multiline` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `last_char` is assigned to, but never used [INFO] [stdout] --> src/analyzers/pattern_matcher.rs:2043:13 [INFO] [stdout] | [INFO] [stdout] 2043 | let mut last_char = ' '; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_last_char` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `last_char` is never read [INFO] [stdout] --> src/analyzers/pattern_matcher.rs:2081:13 [INFO] [stdout] | [INFO] [stdout] 2081 | last_char = ch; [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: unreachable pattern [INFO] [stdout] --> src/analyzers/pattern_matcher.rs:2135:13 [INFO] [stdout] | [INFO] [stdout] 2135 | _ => (&["//", "#"], &[], &[]) // Default fallback includes both // and # [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/analyzers/pattern_matcher.rs:2135:13 [INFO] [stdout] | [INFO] [stdout] 2094 | / Language::JavaScript | Language::TypeScript | Language::Java | Language::Rust | [INFO] [stdout] 2095 | | Language::C | Language::Cpp | Language::CSharp | Language::Go | Language::Kotlin | [INFO] [stdout] 2096 | | Language::Scala | Language::Swift | Language::Dart | Language::Groovy | [INFO] [stdout] 2097 | | Language::ObjectiveC | Language::Php | Language::Solidity => { [INFO] [stdout] | |_____________________________________________________________________- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 2100 | Language::Python => { [INFO] [stdout] | ---------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 2103 | Language::Ruby => { [INFO] [stdout] | -------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 2108 | Language::Shell | Language::Perl | Language::R => { [INFO] [stdout] | ---------------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 2135 | _ => (&["//", "#"], &[], &[]) // Default fallback includes both // and # [INFO] [stdout] | ^ ...and 6 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/analyzers/languages/javascript.rs:358:13 [INFO] [stdout] | [INFO] [stdout] 120 | "call_expression" => { [INFO] [stdout] | ----------------- matches all the relevant values [INFO] [stdout] ... [INFO] [stdout] 358 | "call_expression" if node_text.contains("require(") => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `language` [INFO] [stdout] --> src/rules/mod.rs:86:31 [INFO] [stdout] | [INFO] [stdout] 86 | pub fn get_rules_for_language(language: &crate::types::Language) -> Vec { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_language` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `language` [INFO] [stdout] --> src/rules/mod.rs:86:31 [INFO] [stdout] | [INFO] [stdout] 86 | pub fn get_rules_for_language(language: &crate::types::Language) -> Vec { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_language` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/types.rs:334:13 [INFO] [stdout] | [INFO] [stdout] 334 | let mut by_language: HashMap = HashMap::new(); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `extract_snippet` is never used [INFO] [stdout] --> src/analyzers/mod.rs:95:8 [INFO] [stdout] | [INFO] [stdout] 95 | pub fn extract_snippet(source: &str, line: usize, context_lines: usize) -> Option { [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 `offset_to_position` is never used [INFO] [stdout] --> src/analyzers/mod.rs:115:8 [INFO] [stdout] | [INFO] [stdout] 115 | pub fn offset_to_position(source: &str, offset: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `libraries` is never read [INFO] [stdout] --> src/analyzers/library_detector.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 27 | pub struct LibraryDetector { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 28 | libraries: Vec, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LuaAnalyzer` is never constructed [INFO] [stdout] --> src/analyzers/languages/lua.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct LuaAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `check_lua_import` are never used [INFO] [stdout] --> src/analyzers/languages/lua.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl LuaAnalyzer { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 13 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 17 | fn check_lua_import( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SwiftAnalyzer` is never constructed [INFO] [stdout] --> src/analyzers/languages/swift.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct SwiftAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SwiftPattern` is never constructed [INFO] [stdout] --> src/analyzers/languages/swift.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct SwiftPattern { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `compile_patterns`, `analyze`, `is_in_comment`, `offset_to_position`, and `extract_snippet` are never used [INFO] [stdout] --> src/analyzers/languages/swift.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl SwiftAnalyzer { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 23 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn compile_patterns() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | pub fn analyze(&self, source: &str, file_path: &Path) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 91 | fn is_in_comment(&self, source: &str, offset: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | fn offset_to_position(&self, source: &str, offset: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 110 | fn extract_snippet(&self, source: &str, line: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DartAnalyzer` is never constructed [INFO] [stdout] --> src/analyzers/languages/dart.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct DartAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DartPattern` is never constructed [INFO] [stdout] --> src/analyzers/languages/dart.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct DartPattern { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `compile_patterns`, `analyze`, `is_in_comment`, `offset_to_position`, and `extract_snippet` are never used [INFO] [stdout] --> src/analyzers/languages/dart.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl DartAnalyzer { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 23 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn compile_patterns() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | pub fn analyze(&self, source: &str, file_path: &Path) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 89 | fn is_in_comment(&self, source: &str, offset: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | fn offset_to_position(&self, source: &str, offset: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 108 | fn extract_snippet(&self, source: &str, line: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ScalaAnalyzer` is never constructed [INFO] [stdout] --> src/analyzers/languages/scala.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct ScalaAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ScalaPattern` is never constructed [INFO] [stdout] --> src/analyzers/languages/scala.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct ScalaPattern { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `compile_patterns`, `analyze`, `is_in_comment`, `offset_to_position`, and `extract_snippet` are never used [INFO] [stdout] --> src/analyzers/languages/scala.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl ScalaAnalyzer { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 23 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn compile_patterns() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 83 | pub fn analyze(&self, source: &str, file_path: &Path) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | fn is_in_comment(&self, source: &str, offset: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 111 | fn offset_to_position(&self, source: &str, offset: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 120 | fn extract_snippet(&self, source: &str, line: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PerlAnalyzer` is never constructed [INFO] [stdout] --> src/analyzers/languages/perl.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct PerlAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PerlPattern` is never constructed [INFO] [stdout] --> src/analyzers/languages/perl.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct PerlPattern { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `compile_patterns`, `analyze`, `is_in_comment`, `offset_to_position`, and `extract_snippet` are never used [INFO] [stdout] --> src/analyzers/languages/perl.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl PerlAnalyzer { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 23 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn compile_patterns() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 78 | pub fn analyze(&self, source: &str, file_path: &Path) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 96 | fn is_in_comment(&self, source: &str, offset: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 105 | fn offset_to_position(&self, source: &str, offset: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | fn extract_snippet(&self, source: &str, line: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ObjectiveCAnalyzer` is never constructed [INFO] [stdout] --> src/analyzers/languages/objective_c.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct ObjectiveCAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ObjCPattern` is never constructed [INFO] [stdout] --> src/analyzers/languages/objective_c.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct ObjCPattern { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `compile_patterns`, `analyze`, `is_in_comment`, `offset_to_position`, and `extract_snippet` are never used [INFO] [stdout] --> src/analyzers/languages/objective_c.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl ObjectiveCAnalyzer { [INFO] [stdout] | ----------------------- associated items in this implementation [INFO] [stdout] 23 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn compile_patterns() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | pub fn analyze(&self, source: &str, file_path: &Path) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | fn is_in_comment(&self, source: &str, offset: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 105 | fn offset_to_position(&self, source: &str, offset: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | fn extract_snippet(&self, source: &str, line: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `HaskellAnalyzer` is never constructed [INFO] [stdout] --> src/analyzers/languages/haskell.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct HaskellAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `HaskellPattern` is never constructed [INFO] [stdout] --> src/analyzers/languages/haskell.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct HaskellPattern { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `compile_patterns`, `analyze`, `is_in_comment`, `offset_to_position`, and `extract_snippet` are never used [INFO] [stdout] --> src/analyzers/languages/haskell.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl HaskellAnalyzer { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] 23 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn compile_patterns() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | pub fn analyze(&self, source: &str, file_path: &Path) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 102 | fn is_in_comment(&self, source: &str, offset: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | fn offset_to_position(&self, source: &str, offset: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 123 | fn extract_snippet(&self, source: &str, line: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ElixirAnalyzer` is never constructed [INFO] [stdout] --> src/analyzers/languages/elixir.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct ElixirAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ElixirPattern` is never constructed [INFO] [stdout] --> src/analyzers/languages/elixir.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct ElixirPattern { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `compile_patterns`, `analyze`, `is_in_comment`, `offset_to_position`, and `extract_snippet` are never used [INFO] [stdout] --> src/analyzers/languages/elixir.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl ElixirAnalyzer { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 23 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn compile_patterns() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 79 | pub fn analyze(&self, source: &str, file_path: &Path) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 97 | fn is_in_comment(&self, source: &str, offset: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | fn offset_to_position(&self, source: &str, offset: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 115 | fn extract_snippet(&self, source: &str, line: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RAnalyzer` is never constructed [INFO] [stdout] --> src/analyzers/languages/r.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct RAnalyzer { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RPattern` is never constructed [INFO] [stdout] --> src/analyzers/languages/r.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct RPattern { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `compile_patterns`, `analyze`, `is_in_comment`, `offset_to_position`, and `extract_snippet` are never used [INFO] [stdout] --> src/analyzers/languages/r.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl RAnalyzer { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 23 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn compile_patterns() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | pub fn analyze(&self, source: &str, file_path: &Path) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 91 | fn is_in_comment(&self, source: &str, offset: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 100 | fn offset_to_position(&self, source: &str, offset: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 109 | fn extract_snippet(&self, source: &str, line: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GroovyAnalyzer` is never constructed [INFO] [stdout] --> src/analyzers/languages/groovy.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct GroovyAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GroovyPattern` is never constructed [INFO] [stdout] --> src/analyzers/languages/groovy.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct GroovyPattern { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `compile_patterns`, `analyze`, `is_in_comment`, `offset_to_position`, and `extract_snippet` are never used [INFO] [stdout] --> src/analyzers/languages/groovy.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl GroovyAnalyzer { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 23 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn compile_patterns() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 70 | pub fn analyze(&self, source: &str, file_path: &Path) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 88 | fn is_in_comment(&self, source: &str, offset: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 98 | fn offset_to_position(&self, source: &str, offset: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | fn extract_snippet(&self, source: &str, line: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FSharpAnalyzer` is never constructed [INFO] [stdout] --> src/analyzers/languages/fsharp.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct FSharpAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FSharpPattern` is never constructed [INFO] [stdout] --> src/analyzers/languages/fsharp.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct FSharpPattern { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `compile_patterns`, `analyze`, `is_in_comment`, `offset_to_position`, and `extract_snippet` are never used [INFO] [stdout] --> src/analyzers/languages/fsharp.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl FSharpAnalyzer { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 23 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn compile_patterns() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 68 | pub fn analyze(&self, source: &str, file_path: &Path) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | fn is_in_comment(&self, source: &str, offset: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 96 | fn offset_to_position(&self, source: &str, offset: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 105 | fn extract_snippet(&self, source: &str, line: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ClojureAnalyzer` is never constructed [INFO] [stdout] --> src/analyzers/languages/clojure.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct ClojureAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ClojurePattern` is never constructed [INFO] [stdout] --> src/analyzers/languages/clojure.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct ClojurePattern { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `compile_patterns`, `analyze`, `is_in_comment`, `offset_to_position`, and `extract_snippet` are never used [INFO] [stdout] --> src/analyzers/languages/clojure.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl ClojureAnalyzer { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] 23 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn compile_patterns() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 72 | pub fn analyze(&self, source: &str, file_path: &Path) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | fn is_in_comment(&self, source: &str, offset: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | fn offset_to_position(&self, source: &str, offset: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 108 | fn extract_snippet(&self, source: &str, line: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SolidityAnalyzer` is never constructed [INFO] [stdout] --> src/analyzers/languages/solidity.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct SolidityAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SolidityPattern` is never constructed [INFO] [stdout] --> src/analyzers/languages/solidity.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct SolidityPattern { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `compile_patterns`, `analyze`, `is_in_comment`, `offset_to_position`, and `extract_snippet` are never used [INFO] [stdout] --> src/analyzers/languages/solidity.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl SolidityAnalyzer { [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] 23 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn compile_patterns() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 62 | pub fn analyze(&self, source: &str, file_path: &Path) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | fn is_in_comment(&self, source: &str, offset: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | fn offset_to_position(&self, source: &str, offset: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | fn extract_snippet(&self, source: &str, line: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_tree_sitter_language` is never used [INFO] [stdout] --> src/parsers/mod.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 37 | pub trait LanguageParser { [INFO] [stdout] | -------------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 40 | fn get_tree_sitter_language(&self) -> tree_sitter::Language; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_parser` is never used [INFO] [stdout] --> src/parsers/mod.rs:91:4 [INFO] [stdout] | [INFO] [stdout] 91 | fn create_parser(language: tree_sitter::Language) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TsxParser` is never constructed [INFO] [stdout] --> src/parsers/javascript.rs:70:12 [INFO] [stdout] | [INFO] [stdout] 70 | pub struct TsxParser { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/parsers/javascript.rs:75:12 [INFO] [stdout] | [INFO] [stdout] 74 | impl TsxParser { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 75 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `compact` is never used [INFO] [stdout] --> src/reporters/json.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl JsonReporter { [INFO] [stdout] | ----------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 16 | pub fn compact() -> Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `id` and `name` are never read [INFO] [stdout] --> src/rules/mod.rs:12:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct Rule { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 12 | pub id: String, [INFO] [stdout] | ^^ [INFO] [stdout] 13 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Rule` 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 `module` is never read [INFO] [stdout] --> src/rules/mod.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 27 | FunctionCall { [INFO] [stdout] | ------------ field in this variant [INFO] [stdout] 28 | names: Vec, [INFO] [stdout] 29 | module: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RulePattern` 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 `object_type` is never read [INFO] [stdout] --> src/rules/mod.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 37 | MethodCall { [INFO] [stdout] | ---------- field in this variant [INFO] [stdout] 38 | object_type: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RulePattern` 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 `Regex` and `AstNode` are never constructed [INFO] [stdout] --> src/rules/mod.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 25 | pub enum RulePattern { [INFO] [stdout] | ----------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 46 | Regex { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | AstNode { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RulePattern` 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 `get_rules_for_language` is never used [INFO] [stdout] --> src/rules/mod.rs:86:8 [INFO] [stdout] | [INFO] [stdout] 86 | pub fn get_rules_for_language(language: &crate::types::Language) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `CryptoRule` is never used [INFO] [stdout] --> src/rules/crypto_rules.rs:429:11 [INFO] [stdout] | [INFO] [stdout] 429 | pub trait CryptoRule { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RuleContext` is never constructed [INFO] [stdout] --> src/rules/crypto_rules.rs:435:12 [INFO] [stdout] | [INFO] [stdout] 435 | pub struct RuleContext<'a> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RuleMatch` is never constructed [INFO] [stdout] --> src/rules/crypto_rules.rs:444:12 [INFO] [stdout] | [INFO] [stdout] 444 | pub struct RuleMatch { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `DependencyRule` is never used [INFO] [stdout] --> src/rules/dependency_rules.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 11 | pub trait DependencyRule { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DependencyVulnerability` is never constructed [INFO] [stdout] --> src/rules/dependency_rules.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct DependencyVulnerability { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `KnownVulnerablePackages` is never constructed [INFO] [stdout] --> src/rules/dependency_rules.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 30 | pub struct KnownVulnerablePackages; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `javascript`, `python`, `go`, and `java` are never used [INFO] [stdout] --> src/rules/dependency_rules.rs:34:12 [INFO] [stdout] | [INFO] [stdout] 32 | impl KnownVulnerablePackages { [INFO] [stdout] | ---------------------------- associated functions in this implementation [INFO] [stdout] 33 | /// JavaScript/Node.js packages with known crypto issues [INFO] [stdout] 34 | pub fn javascript() -> Vec<(&'static str, &'static str, &'static str)> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn python() -> Vec<(&'static str, &'static str, &'static str)> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | pub fn go() -> Vec<(&'static str, &'static str, &'static str)> { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 69 | pub fn java() -> Vec<(&'static str, &'static str, &'static str)> { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/types.rs:334:13 [INFO] [stdout] | [INFO] [stdout] 334 | let mut by_language: HashMap = HashMap::new(); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `extract_snippet` is never used [INFO] [stdout] --> src/analyzers/mod.rs:95:8 [INFO] [stdout] | [INFO] [stdout] 95 | pub fn extract_snippet(source: &str, line: usize, context_lines: usize) -> Option { [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 `offset_to_position` is never used [INFO] [stdout] --> src/analyzers/mod.rs:115:8 [INFO] [stdout] | [INFO] [stdout] 115 | pub fn offset_to_position(source: &str, offset: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `libraries` is never read [INFO] [stdout] --> src/analyzers/library_detector.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 27 | pub struct LibraryDetector { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 28 | libraries: Vec, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LuaAnalyzer` is never constructed [INFO] [stdout] --> src/analyzers/languages/lua.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct LuaAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `check_lua_import` are never used [INFO] [stdout] --> src/analyzers/languages/lua.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl LuaAnalyzer { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 13 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 17 | fn check_lua_import( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `KotlinAnalyzer` is never constructed [INFO] [stdout] --> src/analyzers/languages/kotlin.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct KotlinAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `KotlinPattern` is never constructed [INFO] [stdout] --> src/analyzers/languages/kotlin.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 23 | struct KotlinPattern { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/analyzers/languages/kotlin.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 32 | impl KotlinAnalyzer { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 33 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 39 | fn compile_patterns() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 354 | pub fn analyze(&self, source: &str, file_path: &Path) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 398 | fn is_in_comment(&self, source: &str, offset: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 425 | fn is_informational_string(&self, source: &str, start: usize, end: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 439 | fn offset_to_position(&self, source: &str, offset: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 458 | fn extract_snippet(&self, source: &str, line: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SwiftAnalyzer` is never constructed [INFO] [stdout] --> src/analyzers/languages/swift.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct SwiftAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SwiftPattern` is never constructed [INFO] [stdout] --> src/analyzers/languages/swift.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct SwiftPattern { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `compile_patterns`, `analyze`, `is_in_comment`, `offset_to_position`, and `extract_snippet` are never used [INFO] [stdout] --> src/analyzers/languages/swift.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl SwiftAnalyzer { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 23 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn compile_patterns() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | pub fn analyze(&self, source: &str, file_path: &Path) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 91 | fn is_in_comment(&self, source: &str, offset: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | fn offset_to_position(&self, source: &str, offset: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 110 | fn extract_snippet(&self, source: &str, line: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DartAnalyzer` is never constructed [INFO] [stdout] --> src/analyzers/languages/dart.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct DartAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DartPattern` is never constructed [INFO] [stdout] --> src/analyzers/languages/dart.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct DartPattern { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `compile_patterns`, `analyze`, `is_in_comment`, `offset_to_position`, and `extract_snippet` are never used [INFO] [stdout] --> src/analyzers/languages/dart.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl DartAnalyzer { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 23 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn compile_patterns() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | pub fn analyze(&self, source: &str, file_path: &Path) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 89 | fn is_in_comment(&self, source: &str, offset: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | fn offset_to_position(&self, source: &str, offset: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 108 | fn extract_snippet(&self, source: &str, line: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ScalaAnalyzer` is never constructed [INFO] [stdout] --> src/analyzers/languages/scala.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct ScalaAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ScalaPattern` is never constructed [INFO] [stdout] --> src/analyzers/languages/scala.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct ScalaPattern { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `compile_patterns`, `analyze`, `is_in_comment`, `offset_to_position`, and `extract_snippet` are never used [INFO] [stdout] --> src/analyzers/languages/scala.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl ScalaAnalyzer { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 23 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn compile_patterns() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 83 | pub fn analyze(&self, source: &str, file_path: &Path) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | fn is_in_comment(&self, source: &str, offset: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 111 | fn offset_to_position(&self, source: &str, offset: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 120 | fn extract_snippet(&self, source: &str, line: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PerlAnalyzer` is never constructed [INFO] [stdout] --> src/analyzers/languages/perl.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct PerlAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PerlPattern` is never constructed [INFO] [stdout] --> src/analyzers/languages/perl.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct PerlPattern { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `compile_patterns`, `analyze`, `is_in_comment`, `offset_to_position`, and `extract_snippet` are never used [INFO] [stdout] --> src/analyzers/languages/perl.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl PerlAnalyzer { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 23 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn compile_patterns() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 78 | pub fn analyze(&self, source: &str, file_path: &Path) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 96 | fn is_in_comment(&self, source: &str, offset: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 105 | fn offset_to_position(&self, source: &str, offset: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | fn extract_snippet(&self, source: &str, line: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ObjectiveCAnalyzer` is never constructed [INFO] [stdout] --> src/analyzers/languages/objective_c.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct ObjectiveCAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ObjCPattern` is never constructed [INFO] [stdout] --> src/analyzers/languages/objective_c.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct ObjCPattern { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `compile_patterns`, `analyze`, `is_in_comment`, `offset_to_position`, and `extract_snippet` are never used [INFO] [stdout] --> src/analyzers/languages/objective_c.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl ObjectiveCAnalyzer { [INFO] [stdout] | ----------------------- associated items in this implementation [INFO] [stdout] 23 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn compile_patterns() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | pub fn analyze(&self, source: &str, file_path: &Path) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | fn is_in_comment(&self, source: &str, offset: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 105 | fn offset_to_position(&self, source: &str, offset: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | fn extract_snippet(&self, source: &str, line: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `HaskellAnalyzer` is never constructed [INFO] [stdout] --> src/analyzers/languages/haskell.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct HaskellAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `HaskellPattern` is never constructed [INFO] [stdout] --> src/analyzers/languages/haskell.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct HaskellPattern { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `compile_patterns`, `analyze`, `is_in_comment`, `offset_to_position`, and `extract_snippet` are never used [INFO] [stdout] --> src/analyzers/languages/haskell.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl HaskellAnalyzer { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] 23 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn compile_patterns() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | pub fn analyze(&self, source: &str, file_path: &Path) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 102 | fn is_in_comment(&self, source: &str, offset: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | fn offset_to_position(&self, source: &str, offset: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 123 | fn extract_snippet(&self, source: &str, line: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ElixirAnalyzer` is never constructed [INFO] [stdout] --> src/analyzers/languages/elixir.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct ElixirAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ElixirPattern` is never constructed [INFO] [stdout] --> src/analyzers/languages/elixir.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct ElixirPattern { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `compile_patterns`, `analyze`, `is_in_comment`, `offset_to_position`, and `extract_snippet` are never used [INFO] [stdout] --> src/analyzers/languages/elixir.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl ElixirAnalyzer { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 23 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn compile_patterns() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 79 | pub fn analyze(&self, source: &str, file_path: &Path) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 97 | fn is_in_comment(&self, source: &str, offset: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | fn offset_to_position(&self, source: &str, offset: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 115 | fn extract_snippet(&self, source: &str, line: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RAnalyzer` is never constructed [INFO] [stdout] --> src/analyzers/languages/r.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct RAnalyzer { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RPattern` is never constructed [INFO] [stdout] --> src/analyzers/languages/r.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct RPattern { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `compile_patterns`, `analyze`, `is_in_comment`, `offset_to_position`, and `extract_snippet` are never used [INFO] [stdout] --> src/analyzers/languages/r.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl RAnalyzer { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 23 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn compile_patterns() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | pub fn analyze(&self, source: &str, file_path: &Path) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 91 | fn is_in_comment(&self, source: &str, offset: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 100 | fn offset_to_position(&self, source: &str, offset: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 109 | fn extract_snippet(&self, source: &str, line: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GroovyAnalyzer` is never constructed [INFO] [stdout] --> src/analyzers/languages/groovy.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct GroovyAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GroovyPattern` is never constructed [INFO] [stdout] --> src/analyzers/languages/groovy.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct GroovyPattern { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `compile_patterns`, `analyze`, `is_in_comment`, `offset_to_position`, and `extract_snippet` are never used [INFO] [stdout] --> src/analyzers/languages/groovy.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl GroovyAnalyzer { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 23 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn compile_patterns() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 70 | pub fn analyze(&self, source: &str, file_path: &Path) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 88 | fn is_in_comment(&self, source: &str, offset: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 98 | fn offset_to_position(&self, source: &str, offset: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | fn extract_snippet(&self, source: &str, line: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FSharpAnalyzer` is never constructed [INFO] [stdout] --> src/analyzers/languages/fsharp.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct FSharpAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FSharpPattern` is never constructed [INFO] [stdout] --> src/analyzers/languages/fsharp.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct FSharpPattern { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `compile_patterns`, `analyze`, `is_in_comment`, `offset_to_position`, and `extract_snippet` are never used [INFO] [stdout] --> src/analyzers/languages/fsharp.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl FSharpAnalyzer { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 23 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn compile_patterns() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 68 | pub fn analyze(&self, source: &str, file_path: &Path) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | fn is_in_comment(&self, source: &str, offset: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 96 | fn offset_to_position(&self, source: &str, offset: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 105 | fn extract_snippet(&self, source: &str, line: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ClojureAnalyzer` is never constructed [INFO] [stdout] --> src/analyzers/languages/clojure.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct ClojureAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ClojurePattern` is never constructed [INFO] [stdout] --> src/analyzers/languages/clojure.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct ClojurePattern { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `compile_patterns`, `analyze`, `is_in_comment`, `offset_to_position`, and `extract_snippet` are never used [INFO] [stdout] --> src/analyzers/languages/clojure.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl ClojureAnalyzer { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] 23 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn compile_patterns() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 72 | pub fn analyze(&self, source: &str, file_path: &Path) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | fn is_in_comment(&self, source: &str, offset: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | fn offset_to_position(&self, source: &str, offset: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 108 | fn extract_snippet(&self, source: &str, line: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SolidityAnalyzer` is never constructed [INFO] [stdout] --> src/analyzers/languages/solidity.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct SolidityAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SolidityPattern` is never constructed [INFO] [stdout] --> src/analyzers/languages/solidity.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct SolidityPattern { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `compile_patterns`, `analyze`, `is_in_comment`, `offset_to_position`, and `extract_snippet` are never used [INFO] [stdout] --> src/analyzers/languages/solidity.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl SolidityAnalyzer { [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] 23 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn compile_patterns() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 62 | pub fn analyze(&self, source: &str, file_path: &Path) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | fn is_in_comment(&self, source: &str, offset: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | fn offset_to_position(&self, source: &str, offset: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | fn extract_snippet(&self, source: &str, line: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_tree_sitter_language` is never used [INFO] [stdout] --> src/parsers/mod.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 37 | pub trait LanguageParser { [INFO] [stdout] | -------------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 40 | fn get_tree_sitter_language(&self) -> tree_sitter::Language; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `create_parser` is never used [INFO] [stdout] --> src/parsers/mod.rs:91:4 [INFO] [stdout] | [INFO] [stdout] 91 | fn create_parser(language: tree_sitter::Language) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TsxParser` is never constructed [INFO] [stdout] --> src/parsers/javascript.rs:70:12 [INFO] [stdout] | [INFO] [stdout] 70 | pub struct TsxParser { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/parsers/javascript.rs:75:12 [INFO] [stdout] | [INFO] [stdout] 74 | impl TsxParser { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 75 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `compact` is never used [INFO] [stdout] --> src/reporters/json.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl JsonReporter { [INFO] [stdout] | ----------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 16 | pub fn compact() -> Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `id` and `name` are never read [INFO] [stdout] --> src/rules/mod.rs:12:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct Rule { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 12 | pub id: String, [INFO] [stdout] | ^^ [INFO] [stdout] 13 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Rule` 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 `module` is never read [INFO] [stdout] --> src/rules/mod.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 27 | FunctionCall { [INFO] [stdout] | ------------ field in this variant [INFO] [stdout] 28 | names: Vec, [INFO] [stdout] 29 | module: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RulePattern` 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 `object_type` is never read [INFO] [stdout] --> src/rules/mod.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 37 | MethodCall { [INFO] [stdout] | ---------- field in this variant [INFO] [stdout] 38 | object_type: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RulePattern` 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 `Regex` and `AstNode` are never constructed [INFO] [stdout] --> src/rules/mod.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 25 | pub enum RulePattern { [INFO] [stdout] | ----------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 46 | Regex { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | AstNode { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RulePattern` 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 `get_rules_for_language` is never used [INFO] [stdout] --> src/rules/mod.rs:86:8 [INFO] [stdout] | [INFO] [stdout] 86 | pub fn get_rules_for_language(language: &crate::types::Language) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `CryptoRule` is never used [INFO] [stdout] --> src/rules/crypto_rules.rs:429:11 [INFO] [stdout] | [INFO] [stdout] 429 | pub trait CryptoRule { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RuleContext` is never constructed [INFO] [stdout] --> src/rules/crypto_rules.rs:435:12 [INFO] [stdout] | [INFO] [stdout] 435 | pub struct RuleContext<'a> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RuleMatch` is never constructed [INFO] [stdout] --> src/rules/crypto_rules.rs:444:12 [INFO] [stdout] | [INFO] [stdout] 444 | pub struct RuleMatch { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `DependencyRule` is never used [INFO] [stdout] --> src/rules/dependency_rules.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 11 | pub trait DependencyRule { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DependencyVulnerability` is never constructed [INFO] [stdout] --> src/rules/dependency_rules.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct DependencyVulnerability { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `KnownVulnerablePackages` is never constructed [INFO] [stdout] --> src/rules/dependency_rules.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 30 | pub struct KnownVulnerablePackages; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `javascript`, `python`, `go`, and `java` are never used [INFO] [stdout] --> src/rules/dependency_rules.rs:34:12 [INFO] [stdout] | [INFO] [stdout] 32 | impl KnownVulnerablePackages { [INFO] [stdout] | ---------------------------- associated functions in this implementation [INFO] [stdout] 33 | /// JavaScript/Node.js packages with known crypto issues [INFO] [stdout] 34 | pub fn javascript() -> Vec<(&'static str, &'static str, &'static str)> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn python() -> Vec<(&'static str, &'static str, &'static str)> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | pub fn go() -> Vec<(&'static str, &'static str, &'static str)> { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 69 | pub fn java() -> Vec<(&'static str, &'static str, &'static str)> { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 37.51s [INFO] running `Command { std: "docker" "inspect" "d6dfbb7b521f2dd93ba2c27b3c7c13186149480e07bfec2c41a5f3c907170e4d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d6dfbb7b521f2dd93ba2c27b3c7c13186149480e07bfec2c41a5f3c907170e4d", kill_on_drop: false }` [INFO] [stdout] d6dfbb7b521f2dd93ba2c27b3c7c13186149480e07bfec2c41a5f3c907170e4d