Skip to content

Commit 8fafa06

Browse files
authored
Merge branch 'main' into refactor/74-shim-lite-provider
2 parents 91d33eb + 3f11600 commit 8fafa06

2 files changed

Lines changed: 16 additions & 23 deletions

File tree

.github/workflows/build.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ on:
99
- 'assets/**'
1010
- 'schemas/**'
1111
- '.github/ISSUE_TEMPLATE/**'
12+
- '.github/workflows/generate-changelog.yml'
13+
- '.github/workflows/preview-changelog.yml'
1214
- '.idea/**'
1315
- '.claude/**'
1416
- '.gitignore'
@@ -26,6 +28,8 @@ on:
2628
- 'assets/**'
2729
- 'schemas/**'
2830
- '.github/ISSUE_TEMPLATE/**'
31+
- '.github/workflows/generate-changelog.yml'
32+
- '.github/workflows/preview-changelog.yml'
2933
- '.idea/**'
3034
- '.claude/**'
3135
- '.gitignore'

.github/workflows/generate-changelog.yml

Lines changed: 12 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ jobs:
4141
4242
# Collect all closed issues by tracing commits -> PRs -> issues
4343
declare -A CLOSED_ISSUES # issue_number -> issue_title
44-
declare -A HIGHLIGHTS # issue_number -> highlight message
44+
declare -a HIGHLIGHTS # array of highlight messages
4545
4646
for SHA in $COMMIT_SHAS; do
4747
echo "Processing commit: $SHA"
@@ -56,6 +56,14 @@ jobs:
5656
if [ -n "$PR_NUMBER" ]; then
5757
echo " Found PR #$PR_NUMBER"
5858
59+
# Check for /release-note in PR comments
60+
PR_COMMENTS=$(gh pr view "$PR_NUMBER" --json comments --jq '.comments[].body' 2>/dev/null || echo "")
61+
RELEASE_NOTE=$(echo "$PR_COMMENTS" | grep "^/release-note " | sed 's|^/release-note ||' | head -1 || echo "")
62+
if [ -n "$RELEASE_NOTE" ]; then
63+
echo " Found /release-note: $RELEASE_NOTE"
64+
HIGHLIGHTS+=("$RELEASE_NOTE")
65+
fi
66+
5967
# Extract issue numbers from PR body (Fixes #XX, Closes #XX, Resolves #XX)
6068
ISSUE_NUMBERS=$(echo "$PR_BODY" | grep -oiE "(fixes|closes|resolves)\s*#[0-9]+" | grep -oE "[0-9]+" || echo "")
6169
@@ -68,16 +76,6 @@ jobs:
6876
6977
if [ -n "$ISSUE_TITLE" ]; then
7078
CLOSED_ISSUES[$ISSUE_NUM]="$ISSUE_TITLE"
71-
72-
# Check for /release-note comment on the issue
73-
COMMENTS=$(gh issue view "$ISSUE_NUM" --json comments --jq '.comments[].body' 2>/dev/null || echo "")
74-
75-
RELEASE_NOTE=$(echo "$COMMENTS" | grep "^/release-note " | sed 's|^/release-note ||' | head -1 || echo "")
76-
77-
if [ -n "$RELEASE_NOTE" ]; then
78-
echo " Found /release-note: $RELEASE_NOTE"
79-
HIGHLIGHTS[$ISSUE_NUM]="$RELEASE_NOTE"
80-
fi
8179
fi
8280
fi
8381
done
@@ -99,15 +97,6 @@ jobs:
9997
10098
if [ -n "$ISSUE_TITLE" ]; then
10199
CLOSED_ISSUES[$ISSUE_NUM]="$ISSUE_TITLE"
102-
103-
# Check for /release-note comment
104-
COMMENTS=$(gh issue view "$ISSUE_NUM" --json comments --jq '.comments[].body' 2>/dev/null || echo "")
105-
RELEASE_NOTE=$(echo "$COMMENTS" | grep "^/release-note " | sed 's|^/release-note ||' | head -1 || echo "")
106-
107-
if [ -n "$RELEASE_NOTE" ]; then
108-
echo " Found /release-note: $RELEASE_NOTE"
109-
HIGHLIGHTS[$ISSUE_NUM]="$RELEASE_NOTE"
110-
fi
111100
fi
112101
fi
113102
done
@@ -116,11 +105,11 @@ jobs:
116105
# Build changelog
117106
CHANGELOG=""
118107
119-
# Add Highlights section if any /release-note comments exist
108+
# Add Highlights section if any /release-note entries exist
120109
if [ ${#HIGHLIGHTS[@]} -gt 0 ]; then
121110
CHANGELOG="### ✨ Highlights"$'\n\n'
122-
for ISSUE_NUM in "${!HIGHLIGHTS[@]}"; do
123-
CHANGELOG="${CHANGELOG}- ${HIGHLIGHTS[$ISSUE_NUM]}"$'\n'
111+
for HIGHLIGHT in "${HIGHLIGHTS[@]}"; do
112+
CHANGELOG="${CHANGELOG}- ${HIGHLIGHT}"$'\n'
124113
done
125114
CHANGELOG="${CHANGELOG}"$'\n'
126115
fi

0 commit comments

Comments
 (0)