Repository navigation
A release's notes are what its pull requests tell users, grouped as New, Improved and Fixed - #170
Merged
Merged
Conversation
…ed and Fixed Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…Fixed Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…s New, Improved and Fixed Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…-from-pull-requests
…thor Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…heir author Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…n't read, and reads only this repository's merges Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… messages Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
6 tasks done
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 does this pull request do?
A new release's description, on the releases page and in What's New, is now the release notes its pull requests wrote for users, grouped as New, Improved and Fixed, instead of GitHub's list of pull request titles.
Release note
None: changes how a release's notes are put together; the What's New pull request carries the note users read.
Current behavior
The Release workflow opens the draft with
gh release create --generate-notes: one line per pull request title, "by @user in https://github.com/…/pull/N".Behavior with this pull request
The draft's description is, for the pull requests merged since the last release:
None:and Dependabot's are left out.The draft can still be edited before publishing, as today.
How it was implemented
releaseNotesMarkdown(scripts/build/releaseNotes.ts): takes the pull requests asgh pr view --json number,title,url,body,authorprints them and reads each body withreadReleaseNote(Every pull request carries a release note for users, checked by CI #169). It runs as a command too:node scripts/build/releaseNotes.ts pull-requests.json [changelog-url]..github/workflows/release.yml, "prepare" job:Merge pull request #N from <owner>/…, matched on the repository's owner so the merges kept from its first home, whose numbers repeat, are left out), in topological order, without repeats.gh pr view, joins them withjq -s, and opens the draft with--notes-file.shell: bashwithset -euo pipefail, so a pull request that can't be read fails the run instead of going missing.docs/features/updates.mdsay.tsconfig.node.json:allowImportingTsExtensions, so a build script can import another by its.tsname, as Node's type stripping needs (the typecheck already runs with--noEmit).--generate-noteswith a.github/release.ymlgrouping by labels: labels must be kept by hand, and its output is still titles.Stacked on #169, which adds
readReleaseNote; this pull request's base is that branch.Behavior changes
Checklist
npm run typecheckandnpm testpass (8,526). What the new tests cover: grouping and order;None:and Dependabot left out (its author as gh prints it,app/dependabot); pull requests without a readable note under "Other changes"; nothing for users; no changelog link without a last tag.Seen working: nothing in the app changes. The step's shell was dry-run locally on the real history since v0.2.4: it found Mentions find any user on the server #167 and A selected chip at the start of a line keeps its whole ring in a comment field #168 and printed the notes above; a Dependabot pull request (Bump undici from 6.29.0 to 6.29.1 #154) added to the list was left out.
npm run e2e: not needed, nothing in the app changes.Other areas the change reaches:
pinnedActions.test.ts(no new action).Reviewed in a clean context. Fixed for it:
dependabot[bot]login, never gh'sapp/dependabot.pipefail, so a failedgh pr viewsilently dropped a pull request.--topo-order).?? ''; the doc's wrap.#or##heading or an unclosed code block, which would break the groups, are now refused.Kept: this pull request's note says
None:, as the What's New pull request carries the note users read.docs/says what's now true:docs/features/updates.md("What's New" and the Release workflow).Fixed issues
None.
🤖 Generated with Claude Code