Pick the changelog base from the version being released - #3048
Merged
Conversation
`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>
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.
rake gem:changelogalways started from the latest tag, which is right for a prerelease —X.Y.Z.pre.Ndocuments what changed sinceX.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.