mcpField
C
cargo-lock-manager

cargo-lock-manager

github.com/different-ai开发24.3k92 次安装今天更新
代码仓库

关于 cargo-lock-manager

面向 OpenWork Tauri 应用的 Cargo.lock 管理技能,帮助 Rust 开发者排查锁定构建失败,并以可复现方式更新工作区依赖。

主要功能

  1. 01使用 --locked 检查锁文件
  2. 02更新整个工作区的依赖
  3. 03更新锁文件后测试构建
  4. 04处理离线测试运行

适用场景

  1. 01修复 Cargo.lock 过期导致的 CI 失败
  2. 02修改 Cargo.toml 后刷新锁文件
  3. 03在隔离网络环境中运行测试

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/different-ai/openwork --skill cargo-lock-manager

安装后在 Claude Code 中输入/cargo-lock-manager确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

.gitignore
scripts/
check-lock.sh
update-lock.sh

详细介绍

快速使用(已配置)

检查 Cargo.lock 状态
cd packages/desktop/src-tauri
cargo check --locked 2>&1 | head -20
在本地更新 Cargo.lock
cd packages/desktop/src-tauri
cargo update --workspace
更新后使用 --locked 测试
cd packages/desktop/src-tauri
cargo test --locked

常见问题

  • --locked 标志会阻止自动更新 Cargo.lock,这有助于确保构建可复现,但在依赖项发生变化时会导致失败。
  • PR 经常失败,因为依赖项更新后没有提交锁定文件。
  • 运行不带 --workspace 的 cargo update 可能不会更新工作区中的所有成员。

使用 --locked 时 CI 失败

选项 1:更新锁定文件并提交(推荐)
cd packages/desktop/src-tauri
cargo update --workspace
git add Cargo.lock
git commit -m "chore: update Cargo.lock"
git push
选项 2:使用 --offline 标志(适用于隔离网络的环境)
cargo test --manifest-path packages/desktop/src-tauri/Cargo.toml --offline

首次设置(尚未配置时)

无需设置。此技能假定:

  • 已安装 Rust/Cargo
  • 当前位于 openwork 仓库中
  • Tauri 应用位于 packages/desktop/src-tauri/

预防建议

  • 修改 Cargo.toml 文件后,务必运行 cargo check 或 cargo build
  • 将 Cargo.lock 的更改与依赖项更新放在同一次提交中
  • 考虑添加一个 pre-commit hook,以验证锁定文件是否为最新

评论

支持 Markdown