Remove three duplicate CHANGELOG issue link-reference definitions - #2916
Merged
Merged
Conversation
PR #2889 defined the 37 issue link references the CHANGELOG used but never declared. It did not check the other direction: three issues were each defined twice. - #2860 was defined twice inside the same bottom block (both copies in the [1.0.0] block, 10 lines apart) - #828 and #887 were each defined once in a newer release section's block and again in an older one All duplicates pointed at identical URLs, so rendered output never changed - this is cosmetic only. Which copy was kept follows the file's existing convention rather than file order. Of the 77 issue refs used in prose across more than one release section, 75 are defined exactly once, and in 74 of those the single definition sits in the block of the OLDEST section referencing it, with newer sections reusing it (link reference definitions are document-scoped in Markdown). So the bottom-most copy was kept for #828 and #887; for #2860, where both copies shared one block, the first was kept. Verified with the same command in both directions - a planted duplicate is still detected by the identical command form, and the real file now comes back empty: grep -oE '^\[#[0-9]+\]:' CHANGELOG.md | sort | uniq -d Every bracketed [#NNNN] reference still resolves: 1102 definition lines and 1102 unique definitions, zero used-but-undefined, zero defined more than once. Working tree stays all-CRLF (3283 CRLF, 0 bare LF) and the committed blob all-LF. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
Reviewed. This is a documentation-only change (CHANGELOG.md), no code/SQL/Lite-Darling parity surface touched. Verified independently:
No issues found. LGTM. |
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.
What
Removes the three duplicate issue link-reference definitions in
CHANGELOG.md, leaving one definition per issue.PR #2889 defined the 37 issue link references the CHANGELOG used but never declared. It did not check the other direction — three issues were each defined twice:
#2860[1.0.0]block#828[2.7.0]block[2.11.0]block#887[2.9.0]block[2.11.0]blockAll three duplicates pointed at identical URLs, so rendered Markdown never changed. This is cosmetic — worth finishing while #2889 has the area fresh.
Which copy was kept, and why
Note the layout differs from a plain "all three sit in the bottom block": only
#2860was duplicated within one block.#828and#887were each defined in two different release sections' blocks, because both sections reference those issues in prose.That raised a fair question — is the per-section block meant to be self-contained, making these deliberate? The file answers it. Of the 77 issue refs used in prose across more than one release section, 75 are defined exactly once, and in 74 of those 75 the single definition sits in the block of the oldest section referencing it, with newer sections reusing it. Link reference definitions are document-scoped in Markdown, so that works fine.
So single global definition is the established convention, and
#828/#887were the two outliers — not intentional design. The kept copy follows the 74/75 pattern (bottom-most) rather than a literal "delete the second one." For#2860, where both copies shared a block, the first was kept.Verification
Run in both directions, so an empty result isn't a broken grep. A planted duplicate is still caught by the identical command form:
[#NNNN]refs used-but-undefined; zero defined more than onceLine endings (bug #2858 guard) — staged with a plain
git add, nohash-object --no-filters:Also checked: still-undefined refs
Asked to confirm whether #2889's "37" was exhaustive. It was — there are now zero refs used in bracketed
[#NNNN]form but left undefined.The four flagged as possibly-still-undefined (
#2806,#2472,#2893,#2906) do not appear inCHANGELOG.mdat all — not bracketed, not even as bare text. Nothing to add, per "only add definitions for refs actually used in bracketed form."One unrelated observation, not changed here:
[#85]and[#86]are defined but never referenced — orphan definitions rather than duplicates. Happy to prune separately if wanted.Based on
dev.🤖 Generated with Claude Code