Skip to content

Pick the changelog base from the version being released - #3048

Merged
soutaro merged 1 commit into
masterfrom
changelog-base-by-version
Jul 30, 2026
Merged

Pick the changelog base from the version being released#3048
soutaro merged 1 commit into
masterfrom
changelog-base-by-version

Conversation

@soutaro

@soutaro soutaro commented Jul 30, 2026

Copy link
Copy Markdown
Member

rake gem:changelog always started from the latest tag, which is right for a prerelease — X.Y.Z.pre.N documents what changed since X.Y.Z.pre.N-1 — and wrong for a release proper, where the latest tag is itself a prerelease and the section is supposed to cover the whole cycle, prereleases included.

The base now follows RBS::VERSION: a prerelease starts from the latest tag, a release proper skips the prerelease tags and starts from the previous release proper. Passing a version explicitly still overrides both.

`gem:changelog` always started from the latest tag. That is right for a
prerelease -- `X.Y.Z.pre.N` documents what changed since `X.Y.Z.pre.N-1` --
and wrong for a release proper, where the latest tag is itself a prerelease
and the section is supposed to cover the whole cycle, prereleases included.
Getting that wrong is quiet: the release comes out with only the tail of the
cycle written up.

The base now follows `RBS::VERSION`. A prerelease starts from the latest tag;
a release proper skips the prerelease tags and starts from the previous
release proper. Passing a version explicitly still overrides both.

Tags that are not ancestors of the branch being released need no special
handling: `git log A..B` already lists what is in B and not in A, which is
the same set as from their merge base, and `git describe` only considers
reachable tags. A patch release cut from a maintenance branch is therefore
skipped on its own.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@soutaro soutaro added the skip-changelog Skip PRs in CHANGELOGs label Jul 30, 2026
@soutaro
soutaro added this pull request to the merge queue Jul 30, 2026
Merged via the queue into master with commit 6e1332b Jul 30, 2026
25 checks passed
@soutaro
soutaro deleted the changelog-base-by-version branch July 30, 2026 07:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

skip-changelog Skip PRs in CHANGELOGs

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant