From 9816484b6d07b2e234e2ca5672e5a5a44845c689 Mon Sep 17 00:00:00 2001 From: Luke Hagar Date: Fri, 26 Sep 2025 17:42:14 +0000 Subject: [PATCH] Update release workflow to use jq for JSON parsing of latest GitHub release version, ensuring reliable extraction and handling of null values. --- .github/workflows/release.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index c4264a2..f276aaf 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -62,15 +62,15 @@ jobs: id: version-check shell: bash run: | - # Get the latest GitHub release version - LATEST_RELEASE=$(curl -s "https://api.github.com/repos/${{ github.repository }}/releases/latest" | node -p "JSON.parse(require('fs').readFileSync('/dev/stdin', 'utf8')).tag_name" 2>/dev/null || echo "") + # Get the latest GitHub release version using jq for reliable JSON parsing + LATEST_RELEASE=$(curl -s "https://api.github.com/repos/${{ github.repository }}/releases/latest" | jq -r '.tag_name // empty' 2>/dev/null || echo "") CURRENT_VERSION="${{ steps.current-version.outputs.version }}" echo "Latest release: $LATEST_RELEASE" echo "Current version: $CURRENT_VERSION" # Remove 'v' prefix from release tag for comparison - if [ -n "$LATEST_RELEASE" ]; then + if [ -n "$LATEST_RELEASE" ] && [ "$LATEST_RELEASE" != "null" ]; then LATEST_VERSION=$(echo "$LATEST_RELEASE" | sed 's/^v//') else LATEST_VERSION="0.0.0"