Skip to content

docs(CHANGELOG): backfill 0.506.0-0.509.0, which shipped unrecorded - #1474

Merged
paul-hammant merged 1 commit into
mainfrom
docs/changelog-backfill-506-509
Aug 9, 2026
Merged

docs(CHANGELOG): backfill 0.506.0-0.509.0, which shipped unrecorded#1474
paul-hammant merged 1 commit into
mainfrom
docs/changelog-backfill-506-509

Conversation

@paul-hammant

Copy link
Copy Markdown
Collaborator

VERSION said 0.509.0 while the newest CHANGELOG heading was [0.505.0] — four releases shipped with no section at all.

Why it happened

Structural, not an oversight in one PR. The release pipeline renames ## [current] to the next version number, so a merge that adds no [current] section means the release records nothing — silently, with no warning.

Of the five feature PRs merged in that window, only #1464 carried a CHANGELOG entry. #1465, #1467, #1469 and #1472 did not. Three of those four are mine.

Attribution

Reconstructed from the merge log rather than memory. Each release window contained exactly one PR, so the mapping is unambiguous:

release PR what shipped
0.506.0 #1465 nightly install refresh + git fetch --tags
0.507.0 #1467 Windows make install dropped the .exe suffix
0.508.0 #1469 fs.read / fs.read_binary error detail, plus the directory false-success bug found while testing it
0.509.0 #1472 contrib/avcodec + the contrib-check link wiring

Entries are written from the shipped code rather than transcribed from commit subjects, and each keeps the detail that makes it useful in six months — why ae --version cannot detect a broken Windows install, why a sandbox refusal needs different wording from an I/O error, why the nightly's stale-toolchain failure reads like a GCC 16 bug and is not.

Safety

  • Additions only — 122 lines, 0 deletions. No existing section touched.
  • Verified afterwards: VERSION now matches the newest heading, no stray [current], and none of the four new headings duplicate an existing one.
  • [skip actions] is correct here and bare in the subject: docs-only, zero std/ / runtime/ / compiler/ files. It is deliberately not in the PR title, since the title becomes the merge-commit subject and would no-op the release.

Worth fixing separately

## [0.435.0] and ## [0.497.0] each appear twice on main already — untouched here. That is the same pipeline bug from the other direction: the rename can collide with a version heading that already exists. A pipeline that (a) fails loudly when there is no [current] to rename, and (b) refuses to create a duplicate heading, would close both holes. Happy to propose that as its own change.

🤖 Generated with Claude Code

…skip actions]

VERSION said 0.509.0 while the newest CHANGELOG heading was [0.505.0]: four
releases shipped with no section at all.

The cause is structural. The release pipeline renames `## [current]` to the
next version number, so a merge that adds no `[current]` section means the
release records NOTHING — silently, with no warning. Of the five feature PRs
merged in that window only #1464 carried a CHANGELOG entry; #1465, #1467, #1469
and #1472 did not. That is my omission across three of them.

Reconstructed from the merge log rather than from memory. Each release window
turned out to contain exactly one PR, so attribution is unambiguous:

  0.506.0  #1465  nightly install refresh + git fetch --tags
  0.507.0  #1467  Windows make install dropped the .exe suffix
  0.508.0  #1469  fs.read / fs.read_binary error detail (+ the directory
                  false-success bug found while testing it)
  0.509.0  #1472  contrib/avcodec + the contrib-check link wiring

Entries are written from the shipped code, not transcribed from commit
subjects, and each keeps the detail that makes it useful later: why
`ae --version` cannot detect a broken Windows install, why a sandbox refusal
needs different wording from an I/O error, why the nightly's stale-toolchain
failure reads like a GCC 16 bug and is not.

Additions only — 122 lines, no existing section touched. Verified afterwards
that VERSION now matches the newest heading and that none of the four new
headings duplicate. (The pre-existing duplicate [0.435.0] and [0.497.0]
headings are untouched; they are the same pipeline bug showing up earlier and
are worth a separate fix so the rename cannot collide with an existing
version.)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@paul-hammant
paul-hammant merged commit 37f7954 into main Aug 9, 2026
@paul-hammant
paul-hammant deleted the docs/changelog-backfill-506-509 branch August 9, 2026 18:32
paul-hammant added a commit that referenced this pull request Aug 9, 2026
The avcodec audio-decode commit landed with no CHANGELOG entry and there was no
[current] section, so per this file's own workflow the next release would have
tagged a version with whole-track audio decode unmentioned — the same way
0.506.0 through 0.509.0 shipped empty (backfilled in #1474, root cause in
#1477).

Written from the shipped code rather than the commit subject, and pairs the
entry with load_pcm (0.512.0) since the two only make sense together: this is
the producer, that is the consumer, and asks/pcm-please.md wanted both.

Verified end-to-end here before writing it, rather than transcribing the
commit's numbers: a 2s AAC clip decodes to 356352 bytes at 44100 Hz stereo and
audio.load_pcm reports duration_ms=2020. (The ~1% over 352800 is AAC encoder
padding, not a defect.)

[skip actions] deliberately NOT used here, despite this being the docs commit:
it is the branch HEAD, so the token would skip CI for the whole branch —
including 244 lines of new C in contrib/avcodec that wants exercising on the
Windows and macOS runners. The token is for branches that are docs-only end to
end, not for the docs commit of a branch that ships code.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
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.

1 participant