Skip to content

feat: workspace versioning + cargo-release config + CI version guard (s0.15) - #55

Merged
elmol merged 1 commit into
mainfrom
feat/s0.15-versioning-workflow
Mar 17, 2026
Merged

feat: workspace versioning + cargo-release config + CI version guard (s0.15)#55
elmol merged 1 commit into
mainfrom
feat/s0.15-versioning-workflow

Conversation

@elmol

@elmol elmol commented Mar 17, 2026

Copy link
Copy Markdown
Owner

Summary

  • Workspace version: [workspace.package] with version = "0.1.0" in root Cargo.toml; all 3 crates inherit via version.workspace = true
  • cargo-release config: release.toml — tag format v{{version}}, no crates.io publish, runs tests before releasing
  • CI version guard: all 3 build jobs verify Cargo.toml version matches the git tag; fails fast with clear message if someone uses git tag instead of cargo release

Release workflow (post-merge)

cargo release patch --dry-run   # preview
cargo release patch              # 0.1.0 → 0.1.1: bump, commit, tag, push → CI

Test plan

  • cargo metadata --no-deps shows all 3 crates at 0.1.0
  • just ci passes
  • Manual git tag without version bump → CI fails at version guard
  • cargo release patch → CI builds with correct version

🤖 Generated with Claude Code

…(s0.15)

- Add [workspace.package] with version = "0.1.0" and edition = "2021"
- Inherit version/edition in device, attester, and protocol Cargo.toml
- Create release.toml for cargo-release (tag format, commit message, no publish)
- Add version guard step to all 3 build jobs in release.yml — fails if
  Cargo.toml version doesn't match the git tag

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@elmol
elmol merged commit 0e75ac8 into main Mar 17, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant