| Crates.io | cargo-sane |
| lib.rs | cargo-sane |
| version | 0.2.0 |
| created_at | 2025-10-26 02:21:38.921645+00 |
| updated_at | 2025-10-26 02:21:38.921645+00 |
| description | Stop losing your mind over Rust dependency conflicts |
| homepage | https://github.com/chronocoders/cargo-sane |
| repository | https://github.com/chronocoders/cargo-sane |
| max_upload_size | |
| id | 1900880 |
| size | 98,936 |
Stop losing your mind over Rust dependency conflicts.
cargo-sane is a command-line tool that helps you manage Rust dependencies intelligently. It checks for updates, categorizes them by severity, and updates them interactively.
Cargo.toml and checks crates.io for updatescargo install cargo-sane
Or build from source:
git clone https://github.com/ChronoCoders/cargo-sane
cd cargo-sane
cargo install --path .
Analyze your dependencies and see what's available:
cargo sane check
Example output:
🧠 cargo-sane check
ℹ Package: my-project
ℹ Manifest: /path/to/Cargo.toml
📊 Update Summary:
✅ Up to date: 3
🟢 Patch updates available: 5
🟡 Minor updates available: 2
🔴 Major updates available: 1
🟢 Patch updates:
• serde 1.0.195 → 1.0.228
• anyhow 1.0.89 → 1.0.100
🟡 Minor updates:
• tokio 1.35.0 → 1.47.2
🔴 Major updates:
• colored 2.1.0 → 3.0.0
Run `cargo sane update` to update dependencies interactively.
Update dependencies interactively:
cargo sane update
This will:
Cargo.toml (with automatic backup)Update all dependencies automatically:
cargo sane update --all
Dry run (preview without changing):
cargo sane update --dry-run
Get detailed information about updates:
cargo sane check --verbose
Work with a specific manifest:
cargo sane check --manifest-path /path/to/Cargo.toml
cargo sane update --manifest-path /path/to/Cargo.toml
| Command | Description | Status |
|---|---|---|
check |
Analyze dependencies and show available updates | ✅ Available |
update |
Update dependencies interactively | ✅ Available |
fix |
Fix dependency conflicts | 🚧 Coming soon |
clean |
Remove unused dependencies | 🚧 Coming soon |
health |
Check for security vulnerabilities | 🚧 Coming soon |
Managing Rust dependencies can be frustrating:
cargo-sane solves this:
Cargo.toml.backup before any changescargo-sane handles all dependency formats:
# Simple
serde = "1.0"
# With features
tokio = { version = "1.35", features = ["full"] }
# Optional dependencies
clap = { version = "4.5", optional = true }
# With comments (preserved!)
regex = "1.11" # For pattern matching
Contributions are welcome! Please feel free to submit a Pull Request.
git checkout -b feature/amazing-feature)git commit -m 'Add amazing feature')git push origin feature/amazing-feature)Licensed under either of:
at your option.
Built with:
Made with ❤️ by Rust developers, for Rust developers.
Stop fighting with dependencies. Stay sane. 🧠