Skip to content

ci: add release-please workflow for automated versioning and changelogs#25

Open
LeeroyHannigan wants to merge 2 commits into
mainfrom
ci/release-please
Open

ci: add release-please workflow for automated versioning and changelogs#25
LeeroyHannigan wants to merge 2 commits into
mainfrom
ci/release-please

Conversation

@LeeroyHannigan
Copy link
Copy Markdown
Collaborator

Add Release Please workflow

What this does

Adds Release Please — a GitHub Action that automates versioning and changelog generation based on Conventional Commits.

How it works

  1. When commits land on main (via merged PRs), Release Please reads the commit prefixes
  2. It auto-opens a Release PR that bumps the version in Cargo.toml and generates/updates CHANGELOG.md
  3. When the team merges that Release PR, it creates a GitHub Release with a git tag (e.g., v0.1.1)

Version bumping rules

Commit prefix Bump Example
fix: Patch 0.1.0 → 0.1.1
feat: Minor 0.1.0 → 0.2.0
feat!: or BREAKING CHANGE: Major 0.1.0 → 1.0.0

What changes for contributors

Nothing, just keep using Conventional Commit prefixes (fix:, feat:, docs:, ci:, etc.) which we already do. Release Please ignores prefixes like docs:, ci:, test: for versioning purposes (they won't trigger a release on their own).

What this does NOT do

  • Does not publish to crates.io or any registry
  • Does not build or upload binaries (can be added later)
  • Does not run on any branch other than main

Sets the starting version so release-please doesn't crawl full history.
Adds config file and updates workflow to reference both.
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