From 0570e90b67f9e2b40ba5a88ad5f8dcd123c95b99 Mon Sep 17 00:00:00 2001 From: rcourtman Date: Fri, 13 Jun 2025 17:50:32 +0100 Subject: [PATCH] fix: ensure install script included in releases and fix changelog generation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Fix missing analysis property in versionUtils error fallbacks - Improve tarball creation to always include install-pulse.sh - Add verification step to ensure install script is included in releases - This resolves the issue where releases were missing the installer script 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- .github/workflows/stable-release.yml | 28 +++++++++++++++++++++++----- server/versionUtils.js | 18 ++++++++++++++++-- 2 files changed, 39 insertions(+), 7 deletions(-) diff --git a/.github/workflows/stable-release.yml b/.github/workflows/stable-release.yml index e60089e5a..204871419 100644 --- a/.github/workflows/stable-release.yml +++ b/.github/workflows/stable-release.yml @@ -350,9 +350,13 @@ jobs: cp CHANGELOG.md "$STAGING_FULL_PATH/" # Copy scripts and docs - if [ -d "scripts" ]; then - mkdir -p "$STAGING_FULL_PATH/scripts/" - cp scripts/install-pulse.sh "$STAGING_FULL_PATH/scripts/" 2>/dev/null || true + echo "Copying scripts directory..." + mkdir -p "$STAGING_FULL_PATH/scripts/" + if [ -f "scripts/install-pulse.sh" ]; then + cp scripts/install-pulse.sh "$STAGING_FULL_PATH/scripts/" + echo "✓ Copied install-pulse.sh" + else + echo "⚠️ Warning: scripts/install-pulse.sh not found" fi if [ -d "docs" ]; then @@ -364,10 +368,24 @@ jobs: (cd "$STAGING_FULL_PATH" && npm install --omit=dev --ignore-scripts) # Verify essential files - if [ ! -f "$STAGING_FULL_PATH/package.json" ] || [ ! -f "$STAGING_FULL_PATH/server/index.js" ] || [ ! -d "$STAGING_FULL_PATH/node_modules" ]; then - echo "Error: Missing essential files for release" + echo "Verifying essential files..." + if [ ! -f "$STAGING_FULL_PATH/package.json" ]; then + echo "Error: Missing package.json" exit 1 fi + if [ ! -f "$STAGING_FULL_PATH/server/index.js" ]; then + echo "Error: Missing server/index.js" + exit 1 + fi + if [ ! -d "$STAGING_FULL_PATH/node_modules" ]; then + echo "Error: Missing node_modules" + exit 1 + fi + if [ ! -f "$STAGING_FULL_PATH/scripts/install-pulse.sh" ]; then + echo "Error: Missing scripts/install-pulse.sh" + exit 1 + fi + echo "✓ All essential files verified" # Create tarball echo "Creating tarball..." diff --git a/server/versionUtils.js b/server/versionUtils.js index d29164ca3..e6730216c 100644 --- a/server/versionUtils.js +++ b/server/versionUtils.js @@ -140,7 +140,14 @@ function analyzeCommitsForVersionBump() { suggestedVersion: packageJson.version, bumpType: 'none', reasoning: 'No commits since last stable release', - commits: [] + commits: [], + analysis: { + breaking: [], + features: [], + fixes: [], + other: [] + }, + totalCommits: 0 }; } @@ -215,7 +222,14 @@ function analyzeCommitsForVersionBump() { suggestedVersion: packageJson.version, bumpType: 'none', reasoning: 'Error analyzing commits', - commits: [] + commits: [], + analysis: { + breaking: [], + features: [], + fixes: [], + other: [] + }, + totalCommits: 0 }; } }