Skip to main content

Summary

FeatureStatusNotes
Maintainability✔Complexity, duplication, code smells
Linting✔
Auto-formatting✔
Custom checks✔
Security scanning✔AppSec, dependencies, and secrets
Code metrics✔
Code coverage✔

Details

Maintainability
Complexity✔Aka cognitive complexity
Cyclomatic complexity✔
Identical code duplication✔
Similar code duplication✔
Code smells✔
Linters
Clippy✔Rust linter providing a collection of lints
Auto-formatters
rustfmt✔Official Rust code formatter
Custom checks
ast-grep✔
Semgrep✔
ripgrep✔
Security scanning
Gitleaks✔Secrets scanning
OSV-Scanner✔Dependency scanning (SCA)
Semgrep✔AppSec (SAST)
Trivy✔Dependency scanning (SCA)
TruffleHog✔Secrets scanning
Code coverage
cargo test✔
grcov✔
Cobertura coverage format✔
LCOV coverage format✔

File extensions

By default, Rust files are defined as:
These patterns can be overridden from qlty.toml.

Test detection

Rust test functions are automatically detected using the following patterns:

Supported Rust versions

We officially support Rust 1.30 and later for maintainability checks and code coverage. Each plugin may have its own version requirements.