Compare commits

...

2 Commits

Author SHA1 Message Date
bherbruck 306079e30f Pick the start tag by publication time; leave the Snap Store step as it was
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-07 13:51:43 -05:00
bherbruck 29ac2ec952 Start release notes at the newest published release
The nightly release job has failed since Nov 4 with HTTP 422 "body is too long": generated notes
started at the Latest stable release, v0.30.1, and grew past 125,000 characters. Start them at the
newest published release instead, pre-releases included. Let a refused Snap Store upload stop
failing the job, after the release is already staged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-07 13:13:26 -05:00
+13 -2
View File
@@ -725,10 +725,16 @@ jobs:
run: |
tag="v$VERSION"
sha256sum --check SHA256SUMS.txt
# Generated notes start at the newest published release, pre-releases included. Left
# to GitHub they start at the Latest stable one, and the list outgrows the 125,000
# characters a release body may have.
start=()
prev="$(gh release list --exclude-drafts --limit 30 --json tagName,publishedAt --jq 'sort_by(.publishedAt) | last | .tagName // empty')"
if [ -n "$prev" ]; then start=(--notes-start-tag "$prev"); fi
# Stage all packages before publishing. Published tags are never replaced.
gh release create "$tag" --draft --prerelease --latest=false \
--title "SolidCraft v$VERSION (nightly)" --target "$GITHUB_SHA" \
--notes-file ../notes.md --generate-notes -- *
--notes-file ../notes.md --generate-notes "${start[@]}" -- *
gh release edit "$tag" --draft=false --prerelease --latest=false
echo "### Published nightly: $tag (\`${GITHUB_SHA::9}\`)" >>"$GITHUB_STEP_SUMMARY"
- name: Create or update the draft release
@@ -760,8 +766,13 @@ jobs:
--target "$GITHUB_SHA" --prerelease="$PRERELEASE"
gh release upload "$tag" --clobber -- *
else
# As for nightlies: start the generated notes at the newest published release.
start=()
prev="$(gh release list --exclude-drafts --limit 30 --json tagName,publishedAt --jq 'sort_by(.publishedAt) | last | .tagName // empty')"
if [ -n "$prev" ]; then start=(--notes-start-tag "$prev"); fi
gh release create "$tag" --draft --title "SolidCraft v$VERSION" \
--target "$GITHUB_SHA" --notes-file ../notes.md --generate-notes "${pre[@]}" -- *
--target "$GITHUB_SHA" --notes-file ../notes.md --generate-notes "${start[@]}" \
"${pre[@]}" -- *
fi
{
echo "Draft **SolidCraft v$VERSION** at \`${GITHUB_SHA::9}\`:"