From bb176135f6bd4c7fad14ab8b3d73aa7941f74d13 Mon Sep 17 00:00:00 2001 From: Julian Pawlowski Date: Tue, 7 Apr 2026 15:16:03 +0000 Subject: [PATCH] fix(ci): ensure release notes end with newline before heredoc delimiter cliff.toml has trim=true which strips git-cliff's trailing newline. When written to GITHUB_OUTPUT via heredoc, the closing delimiter was appended to the last content line instead of its own line, causing "Matching delimiter not found" error. Added printf '\n' in the workflow and echo "" in generate-notes to guarantee a newline before the heredoc closing delimiter. Impact: Release workflow no longer fails when generating release notes. --- .github/workflows/release.yml | 1 + scripts/release/generate-notes | 1 + 2 files changed, 2 insertions(+) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 1138b0c..db16e20 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -249,6 +249,7 @@ jobs: { echo "notes<<${NOTES_DELIM}" cat release-notes.md + printf '\n' # Ensure content ends with newline (git-cliff trim=true removes it) echo "${NOTES_DELIM}" } >> $GITHUB_OUTPUT diff --git a/scripts/release/generate-notes b/scripts/release/generate-notes index bd66cde..fb6d17a 100755 --- a/scripts/release/generate-notes +++ b/scripts/release/generate-notes @@ -344,6 +344,7 @@ EOF fi git-cliff --config "$CLIFF_CONFIG" "${FROM_TAG}..${TO_TAG}" + echo "" # Ensure output ends with newline (cliff.toml trim=true removes trailing newline) if [ "$CLIFF_CONFIG" = "/tmp/cliff.toml" ]; then rm -f /tmp/cliff.toml