Fix: Use heredoc syntax for multi-line GITHUB_OUTPUT in release workflow#166
Fix: Use heredoc syntax for multi-line GITHUB_OUTPUT in release workflow#166jasonsiders merged 1 commit intomainfrom
Conversation
There was a problem hiding this comment.
✅ Static Analysis: Check Passed
Analyzed changed files, and found 0 potential violations. 0 meets or exceeds the set severity threshold:Info⚫ 0 Critical severity violation(s)
🔴 0 High severity violation(s)
🟠 0 Medium severity violation(s)
🟡 0 Low severity violation(s)
⚪ 0 Info severity violation(s)
|
Claude finished @jasonsiders's task —— View job Pull Request Review ✅Tasks:
Review Feedback✅ Code Quality and Best PracticesThe fix correctly addresses the GitHub Actions limitation with multi-line output values. The solution follows GitHub Actions best practices:
✅ Bug Fix AnalysisThis is a solid fix for a real issue:
The change from: echo "packages=$PACKAGES" >> "$GITHUB_OUTPUT"To: {
echo 'packages<<EOF'
echo "$PACKAGES"
echo 'EOF'
} >> "$GITHUB_OUTPUT"Is exactly what's needed for multi-line JSON output. ✅ Performance Considerations
✅ Security Concerns
✅ Test Coverage
📋 Additional Observations
✅ Overall AssessmentThis is a well-targeted fix that solves a specific GitHub Actions limitation without introducing any side effects. The implementation follows best practices and maintains the existing functionality. The PR is ready for merge. Recommendation: Approve ✅ |
The release workflow was failing when multiple packages were detected because the
packagesoutput was written using the simplekey=valueformat, which doesn't support multi-line values. GitHub Actions was rejecting the pretty-printed JSON array with the errorInvalid format ' {'.The fix switches to the heredoc delimiter syntax (
key<<EOF ... EOF) for writing to$GITHUB_OUTPUT, which correctly handles multi-line strings. This was surfaced by the Repo Cleanup PR (#165), which triggered detection of two packages simultaneously.