用途:治理 Rust 依赖,包括如何安全声明依赖、分析其引入内容、控制准入以及依赖出问题时的应对。不负责 Cargo.toml 字段参考、semver 语义与 workspace 拓扑。
主要能力:选择版本需求("1"、"1.2"、"=1.2.3"、~、范围);评估依赖来源(crates.io、git、path、私有注册表);配置 source replacement 用于镜像或 vendored 仓库;配置 cargo-deny 的 advisories、licenses、bans、sources 四类检查;运行 cargo-audit 并响应 RustSec 公告;用 cargo tree 诊断依赖环与重复版本;设置 MSRV 感知的解析器行为;用 Renovate/Dependabot 自动化更新;建立组织供应链策略。
用法要点:默认使用 caret 需求;需要可复现时用 = 固定;crates.io 为默认来源,git 依赖应少用;path 依赖需附带 version 以支持发布。分析用 cargo tree、cargo tree --duplicates、cargo tree -e features。更新用 cargo update、cargo update -p X --precise Y、cargo update --dry-run。检查用 cargo deny check、cargo audit。特性最小化用 default-features = false 并只列出实际所需特性;workspace 中可用 [workspace.dependencies] 统一特性避免漂移。
限制:不涉及 Cargo.toml 逐字段参考、workspace 布局、Clippy 策略与测试依赖注入。Cargo 禁止依赖环,出现即需重构。不收集、存储或传输用户数据;私有注册表与凭据使用需用户授权,不得记录凭据或在构建产物中暴露令牌。具体收费、价格与平台支持信息暂未提供。