关于 cargo-lock-manager
面向 OpenWork Tauri 应用的 Cargo.lock 管理技能,帮助 Rust 开发者排查锁定构建失败,并以可复现方式更新工作区依赖。
主要功能
- 01使用 --locked 检查锁文件
- 02更新整个工作区的依赖
- 03更新锁文件后测试构建
- 04处理离线测试运行
适用场景
- 01修复 Cargo.lock 过期导致的 CI 失败
- 02修改 Cargo.toml 后刷新锁文件
- 03在隔离网络环境中运行测试
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ different-ai/ openwork --skill cargo-lock-manager安装后在 Claude Code 中输入/cargo-lock-manager确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
.gitignorescripts/check-lock.shupdate-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