fix: release script exits silently when grep finds no matches

The changelog grep commands return exit code 1 when no commits match,
which set -euo pipefail treats as fatal. Add || true guards so the
script continues to the tag/push/release steps.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
dave
2026-03-28 13:11:35 +00:00
parent 3cbbc5387a
commit a2123274a5
+4 -4
View File
@@ -109,10 +109,10 @@ fi
MERGE_RE="^(storkit|story-kit): merge " MERGE_RE="^(storkit|story-kit): merge "
if [ -n "$LOG_RANGE" ]; then if [ -n "$LOG_RANGE" ]; then
MERGED_RAW=$(git log "$LOG_RANGE" --pretty=format:"%s" --no-merges \ MERGED_RAW=$(git log "$LOG_RANGE" --pretty=format:"%s" --no-merges \
| grep -E "$MERGE_RE" | sed -E "s/$MERGE_RE//" | sort -u) | grep -E "$MERGE_RE" | sed -E "s/$MERGE_RE//" | sort -u || true)
else else
MERGED_RAW=$(git log --pretty=format:"%s" --no-merges \ MERGED_RAW=$(git log --pretty=format:"%s" --no-merges \
| grep -E "$MERGE_RE" | sed -E "s/$MERGE_RE//" | sort -u) | grep -E "$MERGE_RE" | sed -E "s/$MERGE_RE//" | sort -u || true)
fi fi
# Categorise merged work items and format names. # Categorise merged work items and format names.
@@ -138,13 +138,13 @@ if [ -n "$LOG_RANGE" ]; then
| grep -Ev "^(storkit|story-kit): " \ | grep -Ev "^(storkit|story-kit): " \
| grep -Ev "^Revert \"(storkit|story-kit): " \ | grep -Ev "^Revert \"(storkit|story-kit): " \
| grep -v "^Bump version" \ | grep -v "^Bump version" \
| sed 's/^/- /') | sed 's/^/- /' || true)
else else
MANUAL=$(git log --pretty=format:"%s" --no-merges \ MANUAL=$(git log --pretty=format:"%s" --no-merges \
| grep -Ev "^(storkit|story-kit): " \ | grep -Ev "^(storkit|story-kit): " \
| grep -Ev "^Revert \"(storkit|story-kit): " \ | grep -Ev "^Revert \"(storkit|story-kit): " \
| grep -v "^Bump version" \ | grep -v "^Bump version" \
| sed 's/^/- /') | sed 's/^/- /' || true)
fi fi
# ── Generate summary overview ───────────────────────────────── # ── Generate summary overview ─────────────────────────────────