Dependency Management for Cargo and npm
📦 Dependency Management
Version: 2.0.0 Last Updated: 2025-11-22 Priority: ⭐⭐⭐ (P2 Level) Purpose: Cargo/npm依存関係の追加・更新・監査
📋 概要
Rust (Cargo) と Node.js (npm) の依存関係管理、 バージョン競合解決、セキュリティ監査を提供します。
🎯 P0: 呼び出しトリガー
| トリガー | 例 |
|---|---|
| 依存更新 | "update dependencies" |
| バージョン競合 | "why is there a version conflict?" |
| 依存追加 | "add a new dependency" |
| 定期更新 | "weekly/monthly dependency updates" |
🔧 P1: コマンド一覧
Cargo(Rust)
| コマンド | 用途 | 頻度 |
|---|---|---|
cargo add <crate> |
依存追加 | 中 |
cargo update |
全依存更新 | 週次 |
cargo update -p <crate> |
特定更新 | 随時 |
cargo tree |
依存ツリー | 調査時 |
cargo audit |
セキュリティ監査 | 週次 |
cargo-udeps |
未使用検出 | 月次 |
npm(Node.js)
| コマンド | 用途 | 頻度 |
|---|---|---|
npm install <pkg> |
依存追加 | 中 |
npm update |
全依存更新 | 週次 |
npm audit |
セキュリティ監査 | 週次 |
npm outdated |
古い依存確認 | 月次 |
🚀 P2: 更新戦略
更新頻度ガイドライン
| バージョン | 頻度 | リスク | 例 |
|---|---|---|---|
| Patch (x.x.Y) | 週次 | 低 | 1.0.0 → 1.0.1 |
| Minor (x.Y.0) | 月次 | 中 | 1.0.0 → 1.1.0 |
| Major (Y.0.0) | 四半期 | 高 | 1.0.0 → 2.0.0 |
Pattern 1: 安全な更新
# Step 1: 現状確認
cargo outdated
# Step 2: Patch更新(安全)
cargo update
# Step 3: テスト
cargo test --all
# Step 4: 監査
cargo audit
Pattern 2: 特定クレート更新
# 特定クレートのみ
cargo update -p tokio
# バージョン指定(Cargo.toml)
[dependencies]
tokio = "1.35" # 1.35.x の最新
Pattern 3: 依存ツリー調査
# 全体ツリー
cargo tree
# 特定クレートの依存元
cargo tree -i tokio
# 重複検出
cargo tree -d
⚡ P3: バージョン競合解決
競合パターン
| パターン | 症状 | 解決策 |
|---|---|---|
| 複数バージョン | cargo tree -d で検出 |
統一バージョン指定 |
| 非互換feature | コンパイルエラー | feature調整 |
| 循環依存 | リンクエラー | 依存構造見直し |
解決例
# Cargo.toml - バージョン統一
[workspace.dependencies]
tokio = { version = "1.35", features = ["full"] }
[dependencies]
tokio = { workspace = true }
# feature競合確認
cargo tree -f "{p} {f}"
📊 Workspace依存管理
推奨構造
# ルート Cargo.toml
[workspace]
members = ["crates/*"]
[workspace.dependencies]
tokio = { version = "1", features = ["full"] }
serde = { version = "1", features = ["derive"] }
# crates/miyabi-core/Cargo.toml
[dependencies]
tokio = { workspace = true }
serde = { workspace = true }
🛡️ セキュリティ監査
自動監査設定
# 監査実行
cargo audit
# 修正可能な脆弱性を自動修正
cargo audit fix
# CI用(失敗時に終了)
cargo audit --deny warnings
未使用依存検出
# インストール
cargo install cargo-udeps
# 実行(nightly必要)
cargo +nightly udeps
✅ 成功基準
| チェック項目 | 基準 |
|---|---|
cargo audit |
0 vulnerabilities |
cargo tree -d |
最小限の重複 |
cargo-udeps |
未使用なし |
| ビルド | 成功 |
| テスト | 全パス |
🔗 関連Skills
- Rust Development: ビルド確認
- Security Audit: 脆弱性対応
- Git Workflow: 更新コミット
More from shunsukehayashi/miyabi-claude-plugins
market research and competitive analysis
TAM/SAM/SOM calculation, competitor analysis, and market trends identification. Use when analyzing markets, validating business ideas, or entering new markets.
44sales and crm management
Complete sales funnel design, B2B sales playbook, CRM setup, and customer success management. Use when building sales processes or reducing churn.
32business strategy and planning
Comprehensive business planning including self-analysis, product concept, persona development, and 8-phase business plan creation. Use when creating business plans or product strategies.
31content marketing and social media strategy
6-month content calendar, multi-platform SNS strategy, and YouTube channel optimization. Use when creating content strategies or growing social media presence.
23growth analytics and dashboard management
KPI framework setup, dashboard design, cohort analysis, and data-driven decision making. Use when analyzing growth metrics, building KPI dashboards, or implementing analytics systems.
22security audit and vulnerability scanning
Comprehensive security audit workflow including dependency scanning, unsafe code detection, and secret management. Use when scanning for vulnerabilities or before production deployment.
20