Technical utilities for code quality tracking and documentation in Rust projects.
Procedural macros for annotating code with development status information.
These macros add compile-time markers without affecting runtime behavior:
use code_status_macros::*;
#[untested]
#[needs("error handling")]
fn parse_config(input: &str) -> Config {
// ...
}CLI tool to find and report on macro annotations.
code-status-scanner -p src/ summary
# Add macros to your project
cargo add code-status-macros
# Install scanner globally
cargo install code-status-scanner| Macro | Purpose | Arguments |
|---|---|---|
#[untested] |
No tests | None |
#[includes_unwrap] |
Contains unwrap() | None |
#[needs("detail")] |
Needs improvement | Required string |
#[perf_critical] |
Performance-critical | None |
#[security_sensitive] |
Security concerns | None |
#[unsafe_usage("reason?")] |
Uses unsafe code | Optional string |
#[no_clippy("reason")] |
Suppressed lints | Required string |
#[complexity("details")] |
Algorithmic complexity | Required string |
#[allocation_heavy("details?")] |
Memory allocation concerns | Optional string |
#[panic_path("scenario")] |
Documents panic paths | Required string |
| Macro | Purpose | Arguments |
|---|---|---|
#[needs_review] |
Requires review | None |
#[temporary] |
Temporary solution | None |
#[assumptions("detail")] |
Documents assumptions | Required string |
#[revisit_in("version")] |
Future work needed | Required string |
#[dependency_sensitive] |
Sensitive to dependencies | None |
#[platform_specific("platform")] |
Platform-specific code | Required string |
#[feature_gated("feature")] |
Feature flag dependent | Required string |
#[api_stability("status")] |
API stability status | Required string |
#[deadlock_risk("details?")] |
Concurrency issues | Optional string |
#[benchmark_candidate("reason?")] |
Needs benchmarking | Optional string |
# List all macro instances
code-status-scanner list
# Generate summary report
code-status-scanner summary
# Search for specific macros
code-status-scanner search untested,security_sensitive
# Scan specific directory
code-status-scanner -p src/core/ list
# Filter by file pattern (regex)
code-status-scanner -m "model.*\.rs" list
# Exclude files (regex)
code-status-scanner -e "test" list# Build all crates
cargo build --workspace
# Run tests
cargo test --workspace
# Try the example
cargo run --example demo_project --features advanced-features
# Test the scanner on the examples
./target/debug/code-status-scanner -p crates/code-status-scanner/examples/ list
./target/debug/code-status-scanner -p crates/code-status-scanner/examples/ summaryMIT or Apache 2.0