You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 6bb2ffd
Browse filesBrowse the repository at this point in the historyBrowse files
Copy file name to clipboardExpand all lines: .github/workflows/release.yml
+13-1Lines changed: 13 additions & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -239,8 +239,20 @@ jobs:
239
239
}
240
240
in_section { print }
241
241
' CHANGELOG.md > dist/RELEASE_NOTES.md || true
242
+
# A RELEASE IS OUTWARD-FACING AND PERMANENT: publishing one whose
243
+
# notes silently came out empty is not a lesser failure than any
244
+
# other defect this workflow guards against, and until now it
245
+
# produced none — v2026.9.18.1 went out with its notes body reading
246
+
# literally "(no CHANGELOG entry found for 2026.9.18.1)", because
247
+
# CHANGELOG.md had no matching `## [<version>]` heading and this
248
+
# step wrote a placeholder and moved on rather than stopping. Stop
249
+
# instead: no matching section is an authoring mistake (the
250
+
# section is missing, or its version string does not match what is
251
+
# being tagged), and the fix belongs in CHANGELOG.md before the
252
+
# release is retried, not in a release whose notes nobody reads.
242
253
if [ ! -s dist/RELEASE_NOTES.md ]; then
243
-
echo "(no CHANGELOG entry found for $VERSION)" > dist/RELEASE_NOTES.md
254
+
echo "::error::CHANGELOG.md has no '## [$VERSION]' section — refusing to publish a release with empty notes. Add that section (docs/92-release.md) and re-run, rather than let this placeholder ship: (no CHANGELOG entry found for $VERSION)"
0 commit comments