fix(changelog): merge the dual [Unreleased] sections into one at the top#6285
Merged
Conversation
CHANGELOG.md had two `## [Unreleased]` sections: one buried between released version sections (it predates #6281, which then added a duplicate at the top). The release tooling reads only the first [Unreleased] and silently drops the rest, so ~150 stranded entries were never reaching release notes; the duplicate header also tripped the `## [Unreleased]` guard, blocking every CHANGELOG-touching commit (e.g. #5988). Consolidate both blocks into a single [Unreleased] at the top, merging same-named `###` subsections (collapsed 10 redundant subsection headers). Every bullet is preserved verbatim — verified that the multiset of non-header content lines is byte-identical before/after. Drop the two entries already published in released sections: #6272 (in [2026.6.22]) and #6171 (in [2026.6.17]).
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.
Problem
CHANGELOG.mdonmainhas two## [Unreleased]sections:## [2026.5.17].The buried block predates #6281; #6281's merge added the top duplicate. Because the release tooling reads only the first
## [Unreleased]and silently drops the rest (the pre-commit guard warns about exactly this), those ~150 entries were stranded and would never reach release notes. The duplicate header also fails the## [Unreleased]guard, which blocks every CHANGELOG-touching commit made through the git hooks (this is what stalled #5988 / #5980).This is the same class of breakage the repo has fixed before ("Merge dual [Unreleased] sections", #4240 / #2282).
Fix
Consolidate both blocks into a single
## [Unreleased]at the top:###subsections (collapsed 10 redundant subsection headers across Added/Changed/Fixed/Removed + the duplicate## [Unreleased]).[2026.6.22]) and fix(ci): pin vendored OpenSSL to Strawberry Perl on the Windows test lane #6171 (in[2026.6.17]). These were the only bullets whose canonical trailing(#NNNN)identifier also led a bullet in a released section; in-prose cross-references were excluded.Net: one
[Unreleased]at the top with 150 entries; released sections unchanged and correctly ordered.Verification
grep -c '^## \[Unreleased\]'→1, and it is the first## [section (followed by## [2026.6.22]).origin/mainbefore the 2-entry dedup; after dedup, fix(installer): fall back to installable release, roll back bad upgrades #6272/fix(ci): pin vendored OpenSSL to Strawberry Perl on the Windows test lane #6171 remain present once each in their released sections.[Unreleased],(@user)attribution) pass.Note for maintainer
The deeper cause — why a buried
[Unreleased]accumulated ~150 unreleased entries while releases were still being cut from the top — is in the release tooling, not this file. Worth a look before the next release so entries stop getting stranded. This PR restores a correct, releasable CHANGELOG; it does not change the tooling.