Skip to content

Commit 0fb6383

Browse files
committed
fix: release process
1 parent 5799cd9 commit 0fb6383

File tree

1 file changed

+21
-12
lines changed

1 file changed

+21
-12
lines changed

.github/workflows/main-release.yml

Lines changed: 21 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -325,18 +325,27 @@ jobs:
325325
found { print }
326326
' CHANGELOG.md | sed '/^$/d' | head -30)
327327
328+
# Debug output
329+
echo "Debug: VERSION=$VERSION"
330+
echo "Debug: CHANGELOG_CONTENT length: $(echo "$CHANGELOG_CONTENT" | wc -c | tr -d ' ')"
331+
if [ -n "$CHANGELOG_CONTENT" ]; then
332+
echo "Debug: Found changelog content for version $VERSION"
333+
else
334+
echo "Debug: No changelog content found for version $VERSION"
335+
fi
336+
328337
# Get previous version for comparison link
329338
PREVIOUS_VERSION=$(awk '/^## / && !/'"$VERSION"'/ { print $2; exit }' CHANGELOG.md)
330339
331340
if [ -n "$CHANGELOG_CONTENT" ]; then
332-
# Analyze change types
333-
FEATURES=$(echo "$CHANGELOG_CONTENT" | grep "feat:" | wc -l | tr -d ' ')
334-
FIXES=$(echo "$CHANGELOG_CONTENT" | grep "fix:" | wc -l | tr -d ' ')
341+
# Analyze change types - handle both "feat:" and "hash: feat:" formats
342+
FEATURES=$(echo "$CHANGELOG_CONTENT" | grep -E "(^- [a-f0-9]+: )?feat:" | wc -l | tr -d ' ')
343+
FIXES=$(echo "$CHANGELOG_CONTENT" | grep -E "(^- [a-f0-9]+: )?fix:" | wc -l | tr -d ' ')
335344
BREAKING=$(echo "$CHANGELOG_CONTENT" | grep -E "BREAKING CHANGE|!" | wc -l | tr -d ' ')
336-
DOCS=$(echo "$CHANGELOG_CONTENT" | grep "docs:" | wc -l | tr -d ' ')
337-
PERF=$(echo "$CHANGELOG_CONTENT" | grep "perf:" | wc -l | tr -d ' ')
338-
REFACTOR=$(echo "$CHANGELOG_CONTENT" | grep "refactor:" | wc -l | tr -d ' ')
339-
CHORE=$(echo "$CHANGELOG_CONTENT" | grep "chore:" | wc -l | tr -d ' ')
345+
DOCS=$(echo "$CHANGELOG_CONTENT" | grep -E "(^- [a-f0-9]+: )?docs:" | wc -l | tr -d ' ')
346+
PERF=$(echo "$CHANGELOG_CONTENT" | grep -E "(^- [a-f0-9]+: )?perf:" | wc -l | tr -d ' ')
347+
REFACTOR=$(echo "$CHANGELOG_CONTENT" | grep -E "(^- [a-f0-9]+: )?refactor:" | wc -l | tr -d ' ')
348+
CHORE=$(echo "$CHANGELOG_CONTENT" | grep -E "(^- [a-f0-9]+: )?chore:" | wc -l | tr -d ' ')
340349
SECURITY=$(echo "$CHANGELOG_CONTENT" | grep -i "security\|vulnerability\|cve\|exploit" | wc -l | tr -d ' ')
341350
342351
# Count total changes
@@ -345,27 +354,27 @@ jobs:
345354
# Create formatted changelog with emojis
346355
FORMATTED_CHANGELOG=""
347356
if [ "$FEATURES" -gt 0 ]; then
348-
FORMATTED_CHANGELOG="${FORMATTED_CHANGELOG}### ✨ New Features ($FEATURES)"$'\n'"$(echo "$CHANGELOG_CONTENT" | grep "feat:" | sed 's/^- /- /')"$'\n\n'
357+
FORMATTED_CHANGELOG="${FORMATTED_CHANGELOG}### ✨ New Features ($FEATURES)"$'\n'"$(echo "$CHANGELOG_CONTENT" | grep -E "(^- [a-f0-9]+: )?feat:" | sed 's/^- /- /')"$'\n\n'
349358
fi
350359
351360
if [ "$FIXES" -gt 0 ]; then
352-
FORMATTED_CHANGELOG="${FORMATTED_CHANGELOG}### 🐛 Bug Fixes ($FIXES)"$'\n'"$(echo "$CHANGELOG_CONTENT" | grep "fix:" | sed 's/^- /- /')"$'\n\n'
361+
FORMATTED_CHANGELOG="${FORMATTED_CHANGELOG}### 🐛 Bug Fixes ($FIXES)"$'\n'"$(echo "$CHANGELOG_CONTENT" | grep -E "(^- [a-f0-9]+: )?fix:" | sed 's/^- /- /')"$'\n\n'
353362
fi
354363
355364
if [ "$BREAKING" -gt 0 ]; then
356365
FORMATTED_CHANGELOG="${FORMATTED_CHANGELOG}### ⚠️ Breaking Changes ($BREAKING)"$'\n'"$(echo "$CHANGELOG_CONTENT" | grep -E "BREAKING CHANGE|!" | sed 's/^- /- /')"$'\n\n'
357366
fi
358367
359368
if [ "$PERF" -gt 0 ]; then
360-
FORMATTED_CHANGELOG="${FORMATTED_CHANGELOG}### ⚡ Performance Improvements ($PERF)"$'\n'"$(echo "$CHANGELOG_CONTENT" | grep "perf:" | sed 's/^- /- /')"$'\n\n'
369+
FORMATTED_CHANGELOG="${FORMATTED_CHANGELOG}### ⚡ Performance Improvements ($PERF)"$'\n'"$(echo "$CHANGELOG_CONTENT" | grep -E "(^- [a-f0-9]+: )?perf:" | sed 's/^- /- /')"$'\n\n'
361370
fi
362371
363372
if [ "$REFACTOR" -gt 0 ]; then
364-
FORMATTED_CHANGELOG="${FORMATTED_CHANGELOG}### 🔧 Code Refactoring ($REFACTOR)"$'\n'"$(echo "$CHANGELOG_CONTENT" | grep "refactor:" | sed 's/^- /- /')"$'\n\n'
373+
FORMATTED_CHANGELOG="${FORMATTED_CHANGELOG}### 🔧 Code Refactoring ($REFACTOR)"$'\n'"$(echo "$CHANGELOG_CONTENT" | grep -E "(^- [a-f0-9]+: )?refactor:" | sed 's/^- /- /')"$'\n\n'
365374
fi
366375
367376
if [ "$DOCS" -gt 0 ]; then
368-
FORMATTED_CHANGELOG="${FORMATTED_CHANGELOG}### 📚 Documentation ($DOCS)"$'\n'"$(echo "$CHANGELOG_CONTENT" | grep "docs:" | sed 's/^- /- /')"$'\n\n'
377+
FORMATTED_CHANGELOG="${FORMATTED_CHANGELOG}### 📚 Documentation ($DOCS)"$'\n'"$(echo "$CHANGELOG_CONTENT" | grep -E "(^- [a-f0-9]+: )?docs:" | sed 's/^- /- /')"$'\n\n'
369378
fi
370379
371380
if [ "$SECURITY" -gt 0 ]; then

0 commit comments

Comments
 (0)