Skip to content

docs(changelog): add [2.2.0] section; collapse duplicate [Unreleased] Added (#251) - #274

Merged
marius-bughiu merged 1 commit into
mainfrom
claude/issue-251-3a3159
Jul 18, 2026
Merged

docs(changelog): add [2.2.0] section; collapse duplicate [Unreleased] Added (#251)#274
marius-bughiu merged 1 commit into
mainfrom
claude/issue-251-3a3159

Conversation

@marius-bughiu

Copy link
Copy Markdown
Owner

Fixes #251.

Problem

v2.2.0 was tagged and released (2026-07-05), but CHANGELOG.md had 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 ### Added subsections (a Keep-a-Changelog hygiene violation and the visible symptom of the release rollover never happening).

Because release.yml extracts 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) and git log v2.2.0..HEAD (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:

index($0, "## [" ver "]") == 1 { capture = 1; next }
capture && index($0, "## [") == 1 { exit }
capture { print }

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

… 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>
Copilot AI review requested due to automatic review settings July 18, 2026 14:52
@marius-bughiu
marius-bughiu merged commit cfa0d12 into main Jul 18, 2026
7 checks passed

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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-05 section with a single ### Added header to capture the shipped v2.2.0 entries.
  • Collapse [Unreleased] to a single ### Added subsection by removing the duplicate heading.

@marius-bughiu
marius-bughiu deleted the claude/issue-251-3a3159 branch July 24, 2026 22:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

CHANGELOG has no [2.2.0] section; shipped v2.2.0 entries stranded under [Unreleased]

2 participants