Say what each release gives people, in one place - #86
Merged
Conversation
The first submission is still an unmerged pull request, so these files have described 0.9.2 since August. Update the version, the release date, the two installer URLs and the two hashes, taken from the release's own asset digests rather than transcribed. The description is left alone: it is tied to installer/msix/STORE-LISTING.md and the two still match, so moving one without the other would break that. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The GitHub release body was the single line "SQLBI Whiteboard <version>.", and the alternative the pipeline offered was a list of commit subjects. Neither tells anyone whether an upgrade is worth having. CHANGELOG.md is now the one place release notes are written, and scripts/release-notes.ps1 the only thing that reads it. It has three readers: the Release notes check on a pull request that bumps VersionPrefix, the Azure Pipelines step that writes the GitHub release body, and the Pages deployment that renders every entry into site/changelog.html. That page stops fetching releases from the GitHub API and becomes What's new: curated, released versions only, carried as HTML so it reads without scripting and can be found by a search engine. Entries go back to 1.0.0; earlier versions are left on GitHub, where they were written. Dev builds are exempt everywhere. They come from every merge to main and would bury the releases people actually choose between. The gate is on the version bump rather than only on the release, so the notes are written while the change is fresh rather than remembered under pressure once the release is already public. The release is checked again anyway, because a release need not have come from a bump. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
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.
The GitHub release body for a stable version has been the single line
SQLBI Whiteboard <version>., and the alternative the pipeline offered —addChangeLog— is a list of commit subjects. That is the too-short and the too-verbose you described, and neither answers the only question a reader has: is this upgrade worth having.CHANGELOG.mdis now the one place release notes are written, andscripts/release-notes.ps1the only thing that reads it. One## <version> - <date>section per released version, one###heading per thing a person would notice.Three readers, none of which the other two can serve:
Directory.Build.propschangesVersionPrefixand no section exists for the new version.releaseNotesinput of the stable release task changed; nothing in the signing path.site/changelog.htmland refuses to deploy a published release that has no section.changelog.htmlbecomes What's new: it no longer fetches releases from the GitHub API and renders their markdown in the browser, so the notes ship as HTML that reads without scripting and can be indexed. The footer link across the site is renamed to match. Entries go back to 1.0.0, written from the merge history; earlier versions stay on GitHub, where their notes already are.Pre-release Dev builds are exempt everywhere — they come from every merge and would bury the releases people actually choose between.
The gate is on the version bump rather than only on the release, so the notes are written while the change is fresh, by the person who made it. The release is still checked, because a release need not have come from a bump.
Verified locally: all three script modes (
Verify,Markdown,Html); the pull-request gate against a real bump (1.2.1 → 1.2.2, passes), a no-bump case (skips), and a bump to an unwritten 1.3.0 (exits 1); the rendered page served over HTTP and checked against the site's own stylesheet; and theMarkdownoutput confirmed as UTF-8 with its arrows intact. An unstyled render caught1.2.22 September 2026— version and date collided when the only separator was a CSS gap — so the separator is now a character in the markup.The generated region is not committed, the way the release manifests are not:
site/changelog.htmlholds a placeholder between its markers and the deployment fills it, so the page cannot drift from the changelog.🤖 Generated with Claude Code