fix(release): treat type!: commits as breaking#2693
Merged
Conversation
semantic-release's default preset recognises a breaking change only from a `BREAKING CHANGE:` footer, so a bang-style commit produced NO release at all — a breaking change shipped unversioned and nobody downstream learned the API broke. The org's commit-message ruleset explicitly permits the bang, so contributors are invited to write exactly the form that silently does nothing. Only the bang forms change: feat: -> minor, fix: -> patch, docs:/chore:/ci: -> no release, and the BREAKING CHANGE: footer still works. Any existing release rules are preserved. Verified with semantic-release 25.0.3 against this repo's actual config. Part of devantler-tech/actions#653 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Contributor
Author
@codex review — one-line intent: make |
|
Codex Review: Didn't find any major issues. Swish! Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
devantler
marked this pull request as ready for review
July 18, 2026 11:15
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
A bang-style breaking commit —
feat!: …— currently produces no release at all in this repo.Not a wrong version: no release, so a breaking change ships unversioned and nobody downstream learns
the API broke.
semantic-release's default preset only recognises a
BREAKING CHANGE:footer, while the org'scommit-message ruleset explicitly permits the bang — so contributors are invited to write exactly
the form that silently does nothing.
What
Makes
type!:cut a major release. Nothing else changes:feat:→ minor,fix:→ patch,docs:/chore:/ci:→ no release, and theBREAKING CHANGE:footer keeps working. Any existingrelease rules in this repo are preserved.
Safe to merge now — this repo has no unreleased bang commits, so nothing jumps a major on merge.
Part of devantler-tech/actions#653