docs(changelog): add [2.2.0] section; collapse duplicate [Unreleased] Added (#251) - #274
Merged
Merged
Conversation
… Added (#251) v2.2.0 was tagged and released (2026-07-05) but CHANGELOG.md had no `## [2.2.0]` section — everything that shipped in it was stranded under `[Unreleased]`, alongside genuinely-unreleased post-2.2.0 work, and the `[Unreleased]` block carried two `### Added` subsections (a Keep-a-Changelog hygiene violation and the visible symptom of the release rollover never happening). Split at the real release boundary (verified via `git log v2.1.0..v2.2.0` and `git log v2.2.0..HEAD`): - New `## [2.2.0] - 2026-07-05` (tag date) with a single `### Added`: CelerityMultiSet (#235), SwissSet, TopKSketch (#238), and the ISet<T> set-algebra surface (#240). - BitWriter/BitReader (#242) — which landed *after* the v2.2.0 tag — plus RobinHoodSet, HashCachingSet, PooledCeleritySet, and all newer work stay under `[Unreleased]`, now collapsed into a single `### Added` block. No change needed to release.yml: its extraction step already keys off the `## [<version>]` heading and fails loudly on an empty section, so the root cause was purely the missing heading. Verified the awk now emits the four v2.2.0 entries for [2.2.0] and stops cleanly at [2.1.0]. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Contributor
There was a problem hiding this comment.
Pull request overview
This PR updates the project changelog to properly reflect the already-released v2.2.0 by introducing a missing ## [2.2.0] - 2026-07-05 section and eliminating the duplicate ### Added subsection under [Unreleased], ensuring release-note extraction and Keep-a-Changelog structure behave correctly.
Changes:
- Add the missing
## [2.2.0] - 2026-07-05section with a single### Addedheader to capture the shipped v2.2.0 entries. - Collapse
[Unreleased]to a single### Addedsubsection by removing the duplicate heading.
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.
Fixes #251.
Problem
v2.2.0was tagged and released (2026-07-05), butCHANGELOG.mdhad no## [2.2.0]section — the heading sequence jumped straight from## [Unreleased]to## [2.1.0]. Everything that shipped in v2.2.0 was stranded under[Unreleased], mixed with genuinely-unreleased post-2.2.0 work, and[Unreleased]carried two### Addedsubsections (a Keep-a-Changelog hygiene violation and the visible symptom of the release rollover never happening).Because
release.ymlextracts GitHub Release notes by the## [X.Y.Z]heading, v2.2.0's release notes would have come out empty.Fix
Split at the real release boundary, verified via
git log v2.1.0..v2.2.0(shipped) andgit log v2.2.0..HEAD(unreleased):## [2.2.0] - 2026-07-05(tag date) with a single### Added:CelerityMultiSet(CelerityMultiSet<T, THasher> — counting multiset (bag/counter), the MultiMap sibling #235),SwissSet,TopKSketch(TopKSketch<T, THasher> — Space-Saving top-k / heavy-hitters sketch #238), and theISet<T>set-algebra surface (Set-algebra parity: implement ISet<T> on the mutable set family (CeleritySet / IntSet / LongSet / SwissSet) #240).[Unreleased]collapsed to a single### Added.BitWriter/BitReader(feat(primitives): add BitWriter/BitReader — sequential sub-byte bit I/O #242) — which landed after the v2.2.0 tag — stays here alongsideRobinHoodSet,HashCachingSet,PooledCeleritySet, and all newer work. Note the subtlety the issue flagged:BitWriter/BitReadersat in the second### Addedblock next to the v2.2.0 items but belongs in[Unreleased].Net diff: +4 / −2 lines — two heading changes only, no changelog prose touched.
release.yml sanity-check (issue step 3)
No change needed. The extraction step already keys off the
## [<version>]heading exactly and fails loudly on an empty section:The root cause was purely the missing heading. Verified locally that the awk now emits exactly the four v2.2.0 entries for
[2.2.0]and stops cleanly at[2.1.0], with[2.1.0]extraction unaffected.🤖 Generated with Claude Code