Skip to content

WIP: Single SemVer bump per release#217

Merged
s0ders merged 9 commits intomainfrom
fix/single-semver-bump-per-release
Jan 14, 2026
Merged

WIP: Single SemVer bump per release#217
s0ders merged 9 commits intomainfrom
fix/single-semver-bump-per-release

Conversation

@s0ders
Copy link
Copy Markdown
Owner

@s0ders s0ders commented Oct 24, 2025

What type of PR is this?

fix and refactor

What this PR does / why is it needed:

  1. Makes the project compliant with the SemVer specification by only bumping once per release (choosing the higher type of bump for each release) as suggested by @dionysiusmarquis
  2. Only fetch the latest reachable tag for each branch being processed, which removes various bug linked to the order in which branches are processed.
  3. The parser not longer checks out to a branch to get its commits but uses its references, removes the issue of temporary files added in the repository before the program run (e.g., GPG key or whatever) disapearing after the check out and also makes the program more efficient.

Does this PR introduce a breaking change?

Yes, will upgrade the Go module version from v6 to v7.

Note to self

  • Try to handle prerelease bumps
  • Refactor the tests "framework" and tests in general for better maintainability

@s0ders s0ders added breaking changes This issue introduces breaking changes fix Patching bugs refactor Refactoring code labels Oct 24, 2025
@s0ders s0ders self-assigned this Oct 24, 2025
@codecov
Copy link
Copy Markdown

codecov Bot commented Oct 24, 2025

Codecov Report

❌ Patch coverage is 74.08638% with 78 lines in your changes missing coverage. Please review.
✅ Project coverage is 79.30%. Comparing base (02194ad) to head (8b653b1).
⚠️ Report is 10 commits behind head on main.

Files with missing lines Patch % Lines
internal/parser/parser.go 70.53% 48 Missing and 23 partials ⚠️
internal/semver/semver.go 87.93% 6 Missing and 1 partial ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #217      +/-   ##
==========================================
- Coverage   80.56%   79.30%   -1.26%     
==========================================
  Files          14       14              
  Lines         602      807     +205     
==========================================
+ Hits          485      640     +155     
- Misses         70      101      +31     
- Partials       47       66      +19     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@s0ders s0ders changed the title Single SemVer bump per release WIP: Single SemVer bump per release Oct 24, 2025
…ighest type of bump per release. Parser now only fetches tag reachable from current Git branch. Also removed concurrency with errgroup as go-git is not thread-safe
…safe) and prerelease management (promotion, bump)
@s0ders s0ders force-pushed the fix/single-semver-bump-per-release branch from 0452d2a to 5b87a66 Compare January 14, 2026 07:54
@s0ders s0ders force-pushed the fix/single-semver-bump-per-release branch from ac29b96 to 6ff126a Compare January 14, 2026 11:41
@s0ders s0ders merged commit 57152d0 into main Jan 14, 2026
7 checks passed
@s0ders s0ders deleted the fix/single-semver-bump-per-release branch January 14, 2026 12:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

breaking changes This issue introduces breaking changes fix Patching bugs refactor Refactoring code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant