cargo-release
This skill automates the complete Cargo release workflow for Rust monorepos, enforcing a 10-step sequence that includes semver versioning, dependency updates, test and lint gates, git tagging, and crates.io publishing. It handles cross-crate dependency ordering, workspace version management for the trusty-mpm family, and includes critical macOS codesign safety rules to prevent signing cache crashes.
cargo-release executes a 10-step Cargo publish sequence with semver rules and quality gates for Rust monorepos.
AI-generated summary based on this skill's SKILL.md
Install
bobmatnyc/claude-mpm-skills/cargo-release · repository language: Python
git clone https://github.com/bobmatnyc/claude-mpm-skills
cp -r claude-mpm-skills/toolchains/rust/ops/cargo-release ~/.claude/skills/cargo-releaseFrequently asked questions
AI-generated answers based on this skill's SKILL.md and metadata
How to release a Rust crate using cargo-release?
cargo-release automates the complete Cargo release workflow through a 10-step sequence. The skill enforces semver versioning rules, updates cross-crate dependencies, runs quality gates (test and clippy), creates git tags, and publishes to crates.io in the correct dependency order. This ensures monorepo releases maintain consistency and prevent publishing errors from incorrect sequencing.
What semver bump rules does cargo-release apply?
cargo-release enforces semantic versioning by automatically determining whether to bump major, minor, or patch versions based on the changes detected. The skill integrates semver rules into its 10-step release sequence, ensuring version increments follow Rust ecosystem conventions and preventing manual versioning mistakes across monorepo crates.
How does cargo-release handle cross-crate dependencies?
cargo-release manages cross-crate dependencies by calculating the correct publication order and updating internal monorepo references before publishing to crates.io. When bumping versions in a workspace, the skill updates all dependent crates' Cargo.toml files and respects dependency graphs to ensure no crate publishes before its dependencies are ready.
What macOS codesign safety rules prevent binary install crashes?
cargo-release includes critical macOS codesign safety rules that prevent signing cache crashes when installing release binaries. The skill recommends proper binary installation procedures and codesign handling to avoid the common macOS issue where cached signatures cause installation failures, ensuring reliable binary deployment on macOS systems.
Does cargo-release support the trusty-mpm family with shared versioning?
Yes, cargo-release supports the trusty-mpm family with shared workspace versioning. The skill manages version bumps across the trusty-tools ecosystem, coordinating releases where multiple related crates share version numbers and maintaining consistency across the family during the complete release sequence.
What quality gates does cargo-release enforce before publishing?
cargo-release enforces quality gates including cargo test and clippy lint checks as part of its 10-step release protocol. These gates run before git tagging and crates.io publication, ensuring only code that passes all checks reaches the registry and preventing defective releases from being published.
SKILL.md
rendered from the published skill — quoted content, verbatim
Cargo Release Protocol
When to Invoke
Invoke this protocol when the user says: "release", "publish", "bump version", "ship", "tag a release", or "cut a version" for any
(truncated - see the full file via the links below)
Read as markdown · JSON record · Browse the source repository
File tree — 2 files
toolchains/rust/ops/cargo-release/SKILL.md
toolchains/rust/ops/cargo-release/metadata.json