Commit f7ff407cc for imagemagick.org

commit f7ff407cccc32ba3a09b70e5366d557b75c1764d
Author: Dirk Lemstra <dirk@lemstra.org>
Date:   Sat Apr 18 18:31:47 2026 +0200

    Also add a source archive to the release.

diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 621b5ef3f..6dcfbcdcc 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -504,6 +504,72 @@ jobs:
           name: AppImage-${{matrix.compiler}}
           path: artifacts

+  source:
+    name: Create source archive
+    runs-on: ubuntu-24.04
+    needs:
+      - changelog
+      - version
+
+    steps:
+      - name: Clone ImageMagick
+        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd #v6.0.2
+        with:
+          path: ImageMagick
+          persist-credentials: false
+
+      - name: Download ChangeLog.md
+        uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c #v8.0.1
+        with:
+          name: ChangeLog
+          path: ImageMagick
+
+      - name: Create source archive
+        env:
+          VERSION: ${{needs.version.outputs.version}}
+        run: |
+          set -e
+          DIRECTORIES=(
+            ".devcontainer"
+            ".git"
+            ".github"
+            "api_examples"
+            "oss-fuzz"
+          )
+          FILES=(
+            ".auto-changelog"
+            ".editorconfig"
+            ".gitignore"
+          )
+          for dir_name in "${DIRECTORIES[@]}"; do
+            path="ImageMagick/$dir_name"
+            if [[ -e "$path" ]]; then
+              rm -rf -- "$path"
+              echo "Removed: $dir_name"
+            else
+              echo "Not found: $dir_name"
+              exit 1
+            fi
+          done
+          for file_name in "${FILES[@]}"; do
+            path="ImageMagick/$file_name"
+            if [[ -e "$path" ]]; then
+              rm -f -- "$path"
+              echo "Removed: $file_name"
+            else
+              echo "Not found: $file_name"
+              exit 1
+            fi
+          done
+          mv ImageMagick "ImageMagick-$VERSION"
+          mkdir artifacts
+          7z a "artifacts/ImageMagick-$VERSION.7z" "ImageMagick-$VERSION"
+
+      - name: Upload source archive
+        uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a #v7.0.1
+        with:
+          name: ImageMagick-${{needs.version.outputs.version}}.7z
+          path: artifacts

   release:
     name: Publish Release