-
-
Notifications
You must be signed in to change notification settings - Fork 218
Open
Description
🧠 Description
Currently, the version calculation process analyzes all commits, including those containing special keywords like [skip ci].
However, there should be a way to ignore commits that contain a specific keyword (e.g., [no-release]) so they don’t contribute to the version bump logic.
🔍 Example Scenario
chore: hello world
=> Analysis => release_type: patch
feat: Add intro message component [no-release]
=> Analysis => release_type: minor, but should be ignored due to [no-release]
fix: add french language support
=> Analysis => release_type: patch⚙️ Current Behavior
- The action analyzes all commits since the last release.
- Commits with keywords like
[no-release]or[skip-release]are not filtered out. - If any such commit includes a conventional commit type like
feat:orfix:, it still contributes to determining the finalrelease_type.
Example outcome:
- A commit with
feat:and[no-release]still causes a minor bump, even though it should be ignored.
🎯 Expected Behavior
- Commits containing configurable ignore keywords (e.g.,
[no-release],[skip-release]) should be skipped entirely during analysis. - These commits should:
- Not contribute to determining the
release_type. - Not appear in the changelog.
- Not influence semantic versioning logic in any way.
- Not contribute to determining the
💡 Proposed Solution
- Introduce a configurable list of ignore keywords (default:
[no-release],[skip-release]). - Before version analysis begins, filter out commits whose messages contain one of these keywords.
- Continue version bump calculation using only the remaining commits.
🧱 Additional Context
This enhancement ensures better control over automated versioning workflows — especially useful when non-impactful commits (like internal refactors, experiments, or temporary feature branches) should not trigger a release.
Metadata
Metadata
Assignees
Labels
No labels