SuperAPI AI 工具集

cargo-lock-manager

部署与运维

查看项目

更新于 10-15 21:10

技能介绍

用途:管理 Cargo.lock 文件更新,并解决 CI/CD 中因 --locked 标志导致的构建或测试失败问题。当用户提到“cargo test --locked failed”或无法更新锁文件等情形时触发。

主要能力:检查 Cargo.lock 状态、在本地更新锁文件、更新后使用 --locked 验证测试,并给出 CI 失败时的处理方案。

使用方式:检查状态可执行 cd packages/desktop/src-tauri 后运行 cargo check --locked 2>&1 | head -20;本地更新执行 cargo update --workspace;更新后测试执行 cargo test --locked。CI 失败时推荐先更新锁文件并提交:cargo update --workspace、git add Cargo.lock、git commit -m "chore: update Cargo.lock"、git push;隔离环境可用 cargo test --manifest-path packages/desktop/src-tauri/Cargo.toml --offline。

适用场景:Rust/Cargo 项目,尤其是 openwork 仓库中 packages/desktop/src-tauri 下的 Tauri 应用。

限制与注意:--locked 会阻止自动更新 Cargo.lock,利于可复现构建,但依赖变化时会失败;PR 常因依赖更新后未提交锁文件而失败;不带 --workspace 的 cargo update 可能不会更新所有工作区成员。无需额外配置,但假定已安装 Rust/Cargo、处于 openwork 仓库且 Tauri 应用位于指定路径。预防建议:修改 Cargo.toml 后运行 cargo check 或 cargo build,将 Cargo.lock 变更与依赖更新放在同一提交,并考虑添加 pre-commit 钩子校验锁文件是否最新。