From 46b17f542dd13442db443dbf78158d63eed8f410 Mon Sep 17 00:00:00 2001
From: Alexandr Goncharov <adanfermer@gmail.com>
Date: Fri, 26 Jul 2024 15:42:01 +0300
Subject: [PATCH 1/3] Require swift tools version 5.9

---
 Package.swift | 56 +++++++++++++++++++++++++--------------------------
 1 file changed, 28 insertions(+), 28 deletions(-)

diff --git a/Package.swift b/Package.swift
index 8e32c585..ff5c70a6 100644
--- a/Package.swift
+++ b/Package.swift
@@ -1,4 +1,4 @@
-// swift-tools-version:5.7
+// swift-tools-version:5.9
 
 import PackageDescription
 
@@ -24,69 +24,69 @@ let package = Package(
     targets: [
         .executableTarget(name: "XcodeGen", dependencies: [
             "XcodeGenCLI",
-            "Version",
+            .product(name: "Version", package: "Version"),
         ]),
         .target(name: "XcodeGenCLI", dependencies: [
             "XcodeGenKit",
             "ProjectSpec",
-            "SwiftCLI",
-            "Rainbow",
-            "PathKit",
-            "Version",
+            .product(name: "SwiftCLI", package: "SwiftCLI"),
+            .product(name: "Rainbow", package: "Rainbow"),
+            .product(name: "PathKit", package: "PathKit"),
+            .product(name: "Version", package: "Version"),
         ]),
         .target(name: "XcodeGenKit", dependencies: [
             "ProjectSpec",
-            "JSONUtilities",
-            "XcodeProj",
-            "PathKit",
+            .product(name: "JSONUtilities", package: "JSONUtilities"),
+            .product(name: "XcodeProj", package: "XcodeProj"),
+            .product(name: "PathKit", package: "PathKit"),
             "XcodeGenCore",
         ], resources: [
             .copy("SettingPresets")
         ]),
         .target(name: "ProjectSpec", dependencies: [
-            "JSONUtilities",
-            "XcodeProj",
-            "Yams",
+            .product(name: "JSONUtilities", package: "JSONUtilities"),
+            .product(name: "XcodeProj", package: "XcodeProj"),
+            .product(name: "Yams", package: "yams"),
             "XcodeGenCore",
-            "Version",
+            .product(name: "Version", package: "Version"),
         ]),
         .target(name: "XcodeGenCore", dependencies: [
-            "PathKit",
-            "Yams",
+            .product(name: "PathKit", package: "PathKit"),
+            .product(name: "Yams", package: "yams"),
         ]),
         .target(name: "TestSupport", dependencies: [
-            "XcodeProj",
-            "Spectre",
-            "PathKit",
+            .product(name: "XcodeProj", package: "XcodeProj"),
+            .product(name: "Spectre", package: "Spectre"),
+            .product(name: "PathKit", package: "PathKit"),
         ]),
         .testTarget(name: "XcodeGenKitTests", dependencies: [
             "XcodeGenKit",
-            "Spectre",
-            "PathKit",
+            .product(name: "Spectre", package: "Spectre"),
+            .product(name: "PathKit", package: "PathKit"),
             "TestSupport",
         ]),
         .testTarget(name: "FixtureTests", dependencies: [
             "XcodeGenKit",
-            "Spectre",
-            "PathKit",
+            .product(name: "Spectre", package: "Spectre"),
+            .product(name: "PathKit", package: "PathKit"),
             "TestSupport",
         ]),
         .testTarget(name: "XcodeGenCoreTests", dependencies: [
             "XcodeGenCore",
-            "Spectre",
-            "PathKit",
+            .product(name: "Spectre", package: "Spectre"),
+            .product(name: "PathKit", package: "PathKit"),
             "TestSupport",
         ]),
         .testTarget(name: "ProjectSpecTests", dependencies: [
             "ProjectSpec",
-            "Spectre",
-            "PathKit",
+            .product(name: "Spectre", package: "Spectre"),
+            .product(name: "PathKit", package: "PathKit"),
             "TestSupport",
         ]),
         .testTarget(name: "PerformanceTests", dependencies: [
             "XcodeGenKit",
-            "Spectre",
-            "PathKit",
+            .product(name: "Spectre", package: "Spectre"),
+            .product(name: "PathKit", package: "PathKit"),
             "TestSupport",
         ]),
     ]

From 33be746878c3eb5dd11a898a84a488219980b4f7 Mon Sep 17 00:00:00 2001
From: Alexandr Goncharov <adanfermer@gmail.com>
Date: Fri, 26 Jul 2024 15:48:14 +0300
Subject: [PATCH 2/3] Update changelog

---
 CHANGELOG.md | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 1892fa41..a1237ff1 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,6 +2,10 @@
 
 ## Next Version
 
+### Fixed
+
+- Require swift-tools-version 5.9. #1489 @0111b
+
 ## 2.42.0
 
 ### Added

From 20f89743db6ff21cc216f6762b10333eec0acaf5 Mon Sep 17 00:00:00 2001
From: Alexandr Goncharov <adanfermer@gmail.com>
Date: Fri, 2 Aug 2024 10:40:21 +0300
Subject: [PATCH 3/3] Use github workflow

---
 .github/workflows/ci.yml | 32 ++++++++++++++++----------------
 1 file changed, 16 insertions(+), 16 deletions(-)

diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 3c41ae63..856bdb52 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -8,26 +8,26 @@ jobs:
     name: Xcode ${{ matrix.xcode }}
     strategy:
       matrix:
-        xcode: ["14.3.1"]
+        xcode: ["15.3"]
         include:
-        - xcode: "14.3.1"
-          macos: macos-13
+          - xcode: "15.3"
+            macos: macos-14
     env:
       DEVELOPER_DIR: /Applications/Xcode_${{ matrix.xcode }}.app/Contents/Developer
     steps:
-    - uses: actions/checkout@master
-    - name: Resolve
-      run: swift package resolve
-    - name: Build
-      run: swift build
-    - name: Test
-      run: set -o pipefail && swift test 2>&1 | xcpretty
-    - name: Gen fixtures
-      run: scripts/gen-fixtures.sh
-    - name: Check fixtures
-      run: scripts/diff-fixtures.sh
-    - name: Build fixtures
-      run: scripts/build-fixtures.sh
+      - uses: actions/checkout@master
+      - name: Resolve
+        run: swift package resolve
+      - name: Build
+        run: swift build
+      - name: Test
+        run: set -o pipefail && swift test 2>&1 | xcpretty
+      - name: Gen fixtures
+        run: scripts/gen-fixtures.sh
+      - name: Check fixtures
+        run: scripts/diff-fixtures.sh
+      - name: Build fixtures
+        run: scripts/build-fixtures.sh
   run-linux:
     runs-on: ubuntu-latest
     name: Linux