fix: add changelog entries in chronological order#279
Open
skyc1e wants to merge 1 commit into
Open
Conversation
git rev-list returns commits newest-first. The iteration used .reverse() before calling addChange (which uses unshift), causing entries to end up in reverse chronological order. Removing .reverse() lets unshift naturally produce the correct oldest-first ordering. Fixes MetaMask#210
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.
Explanation
git rev-listreturns commits newest-first. The loop inupdateChangelogcalled
.reverse()before iterating, butaddChangeusesunshift(prepend) internally. The combination of reverse + unshift produced entries
in reverse chronological order (newest first).
Removing
.reverse()letsunshiftnaturally reverse the newest-firstinput into the correct oldest-first (forward chronological) order in the
changelog.
References
Fixes #210
Changelog
Fixed
Checklist
Note
Low Risk
Small change to changelog generation order plus a focused test; low blast radius limited to release note formatting.
Overview
Ensures newly discovered commits are written to the changelog in forward chronological order (earliest first) by removing the extra
.reverse()before adding entries.Adds a regression test that mocks newest-first commit input and asserts the rendered changelog lists entries in the expected oldest-to-newest order.
Written by Cursor Bugbot for commit e55fb04. This will update automatically on new commits. Configure here.