Skip to main content

Crate cargo_dokita

Crate cargo_dokita 

Source
Expand description

§Cargo Dokita

A comprehensive Rust project analysis tool that performs static analysis on Rust projects to identify potential issues, security vulnerabilities, and code quality problems.

§Features

  • Dependency Analysis: Check for outdated dependencies and known security vulnerabilities
  • Code Quality Checks: Analyze code patterns and project structure
  • Manifest Validation: Validate Cargo.toml metadata and configuration
  • Configurable Rules: Support for custom configuration through .dokita.toml files
  • Multiple Output Formats: Support for both human-readable and JSON output

§Usage

The main entry point for analysis is the analyze_project function:

use cargo_dokita::analyze_project;

// Analyze a Rust project with default text output
match analyze_project("./my-rust-project", "text") {
    Ok(()) => println!("Analysis completed successfully"),
    Err(e) => eprintln!("Analysis failed: {:?}", e),
}

§Modules

Modules§

code_checks
Static code analysis and project structure validation. Code quality analysis and project structure checks for Rust projects.
config
Configuration file handling and project settings management.
crates_io_api
Integration with the crates.io API for package information retrieval. Crates.io API client for fetching crate version information.
dependency_analysis
Dependency analysis including vulnerability scanning and outdated package detection. Dependency analysis and security auditing for Rust projects.
diagnostics
Core diagnostic types, severity levels, and finding structures.
manifest
Cargo.toml manifest parsing and validation functionality. Manifest parsing and metadata checks for Cargo.toml files.

Enums§

MyError
Error types that can occur during project analysis.

Functions§

analyze_project
Analyzes a Rust project for potential issues and vulnerabilities.
analyze_project_for_test
Test-friendly version of analyze_project that returns findings instead of calling process::exit.