From 8a7def7a09e8992eab51d45c8ca2fc3a4de4dfe0 Mon Sep 17 00:00:00 2001 From: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> Date: Tue, 24 Feb 2026 17:34:38 +0000 Subject: [PATCH 1/8] ci: Replace deprecated macos-13 runners with macos-14 and fix Windows build - Update all workflow files from macos-13 to macos-14 - Update Xcode from 14.3.1 to 15.4.0 (14.3.1 not available on macos-14) - Remove explicit iOS simulator OS version pinning - Upgrade Windows build from Swift 5.9 to 5.10.1 to fix cyclic module dependency with MSVC 14.44 Co-Authored-By: unknown <> --- .github/workflows/ci.yml | 15 ++++++--------- .github/workflows/manual-publish-docs.yml | 6 +++--- .github/workflows/manual-publish.yml | 6 +++--- .github/workflows/release-please.yml | 6 +++--- 4 files changed, 15 insertions(+), 18 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2e219d0..175b14f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -17,12 +17,9 @@ jobs: fail-fast: false matrix: include: - - xcode-version: 15.0.1 - ios-sim: 'platform=iOS Simulator,name=iPhone 17,OS=17.0' - os: macos-13 - - xcode-version: 14.3.1 - ios-sim: 'platform=iOS Simulator,name=iPhone 16,OS=16.4' - os: macos-13 + - xcode-version: 15.4.0 + ios-sim: 'platform=iOS Simulator,name=iPhone 15' + os: macos-14 steps: - uses: actions/checkout@v4 @@ -59,14 +56,14 @@ jobs: run: swift test --enable-test-discovery windows-build: - name: Windows - Swift 5.9 + name: Windows - Swift 5.10 runs-on: windows-latest steps: - uses: actions/checkout@v4 - name: Install Swift uses: compnerd/gha-setup-swift@cd348eb89f2f450b0664c07fb1cb66880addf17d with: - branch: swift-5.9-release - tag: 5.9-RELEASE + branch: swift-5.10.1-release + tag: 5.10.1-RELEASE - name: Build and test run: swift test diff --git a/.github/workflows/manual-publish-docs.yml b/.github/workflows/manual-publish-docs.yml index 20f13d3..9b05e93 100644 --- a/.github/workflows/manual-publish-docs.yml +++ b/.github/workflows/manual-publish-docs.yml @@ -4,7 +4,7 @@ on: name: Publish Documentation jobs: build-publish: - runs-on: macos-13 + runs-on: macos-14 permissions: id-token: write # Needed if using OIDC to get release secrets. @@ -16,8 +16,8 @@ jobs: - name: Build and Test uses: ./.github/actions/ci with: - xcode-version: 14.3.1 - ios-sim: 'platform=iOS Simulator,name=iPhone 16,OS=16.4' + xcode-version: 15.4.0 + ios-sim: 'platform=iOS Simulator,name=iPhone 15' token: ${{ secrets.GITHUB_TOKEN }} - uses: ./.github/actions/build-docs diff --git a/.github/workflows/manual-publish.yml b/.github/workflows/manual-publish.yml index afdb80a..08568f5 100644 --- a/.github/workflows/manual-publish.yml +++ b/.github/workflows/manual-publish.yml @@ -9,7 +9,7 @@ on: jobs: build-publish: - runs-on: macos-13 + runs-on: macos-14 # Needed to get tokens during publishing. permissions: @@ -27,8 +27,8 @@ jobs: - uses: ./.github/actions/ci with: - xcode-version: 14.3.1 - ios-sim: 'platform=iOS Simulator,name=iPhone 16,OS=16.4' + xcode-version: 15.4.0 + ios-sim: 'platform=iOS Simulator,name=iPhone 15' token: ${{ secrets.GITHUB_TOKEN }} - uses: ./.github/actions/publish diff --git a/.github/workflows/release-please.yml b/.github/workflows/release-please.yml index f072232..cff733f 100644 --- a/.github/workflows/release-please.yml +++ b/.github/workflows/release-please.yml @@ -7,7 +7,7 @@ on: jobs: release-package: - runs-on: macos-13 + runs-on: macos-14 permissions: id-token: write # Needed if using OIDC to get release secrets. @@ -45,8 +45,8 @@ jobs: - uses: ./.github/actions/ci if: ${{ steps.release.outputs.releases_created == 'true' }} with: - xcode-version: 14.3.1 - ios-sim: 'platform=iOS Simulator,name=iPhone 16,OS=16.4' + xcode-version: 15.4.0 + ios-sim: 'platform=iOS Simulator,name=iPhone 15' token: ${{ secrets.GITHUB_TOKEN }} - uses: ./.github/actions/build-docs From f8275547a3af9ff3db30d7fa13df29a068315808 Mon Sep 17 00:00:00 2001 From: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> Date: Tue, 24 Feb 2026 17:37:43 +0000 Subject: [PATCH 2/8] ci: Pin Windows build to windows-2022 to fix MSVC compatibility windows-latest now resolves to Windows Server 2025 with MSVC 14.44, which has a cyclic dependency bug with Swift 5.9/5.10. Pin to windows-2022 to use the compatible MSVC version. Co-Authored-By: unknown <> --- .github/workflows/ci.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 175b14f..7615379 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -56,14 +56,14 @@ jobs: run: swift test --enable-test-discovery windows-build: - name: Windows - Swift 5.10 - runs-on: windows-latest + name: Windows - Swift 5.9 + runs-on: windows-2022 steps: - uses: actions/checkout@v4 - name: Install Swift uses: compnerd/gha-setup-swift@cd348eb89f2f450b0664c07fb1cb66880addf17d with: - branch: swift-5.10.1-release - tag: 5.10.1-RELEASE + branch: swift-5.9-release + tag: 5.9-RELEASE - name: Build and test run: swift test From 7eb15270df1240bf6215bd020c86d4a3e9f7f21e Mon Sep 17 00:00:00 2001 From: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> Date: Tue, 24 Feb 2026 17:39:45 +0000 Subject: [PATCH 3/8] ci: Upgrade Windows build to Swift 6.0.3 to fix MSVC 14.44 compatibility Both windows-latest (Server 2025) and windows-2022 now ship with MSVC 14.44 which has a cyclic module dependency bug affecting all Swift versions before 6.0. Upgrade to Swift 6.0.3 which resolves this issue. The package declares swiftLanguageVersions: [.v5] so Swift 6.0 will compile in Swift 5 language mode. Co-Authored-By: unknown <> --- .github/workflows/ci.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7615379..52f7219 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -56,14 +56,14 @@ jobs: run: swift test --enable-test-discovery windows-build: - name: Windows - Swift 5.9 - runs-on: windows-2022 + name: Windows - Swift 6.0 + runs-on: windows-latest steps: - uses: actions/checkout@v4 - name: Install Swift uses: compnerd/gha-setup-swift@cd348eb89f2f450b0664c07fb1cb66880addf17d with: - branch: swift-5.9-release - tag: 5.9-RELEASE + branch: swift-6.0.3-release + tag: 6.0.3-RELEASE - name: Build and test run: swift test From f0613d1bff42e0fe5093a5828c0a2bf291b3e2dc Mon Sep 17 00:00:00 2001 From: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> Date: Tue, 24 Feb 2026 17:43:39 +0000 Subject: [PATCH 4/8] ci: Revert Windows changes to match main branch config The Windows build failure (cyclic dependency in module 'ucrt' due to MSVC 14.44 incompatibility with Swift <6.0) is a pre-existing issue on main, not related to the macos-13 to macos-14 migration. Reverting Windows config to match main so this PR stays focused on the runner migration. Co-Authored-By: unknown <> --- .github/workflows/ci.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 52f7219..f7ddeb8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -56,14 +56,14 @@ jobs: run: swift test --enable-test-discovery windows-build: - name: Windows - Swift 6.0 + name: Windows - Swift 5.9 runs-on: windows-latest steps: - uses: actions/checkout@v4 - name: Install Swift uses: compnerd/gha-setup-swift@cd348eb89f2f450b0664c07fb1cb66880addf17d with: - branch: swift-6.0.3-release - tag: 6.0.3-RELEASE + branch: swift-5.9-release + tag: 5.9-RELEASE - name: Build and test run: swift test From 15db1a518f94c309458c8770e8271b517c3bb146 Mon Sep 17 00:00:00 2001 From: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> Date: Tue, 24 Feb 2026 18:11:03 +0000 Subject: [PATCH 5/8] ci: Update SwiftLint to 0.56.2 for Xcode 15.4 compatibility SwiftLint 0.49.1 cannot compile with Xcode 15.4's Swift toolchain on macos-14 runners, causing the Linter Script build phase to fail. Update to 0.56.2 which supports Xcode 15.4. All existing lint rules in .swiftlint.yml remain valid in this version. Co-Authored-By: unknown <> --- Mintfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Mintfile b/Mintfile index 089790b..556adef 100644 --- a/Mintfile +++ b/Mintfile @@ -1 +1 @@ -realm/SwiftLint@0.49.1 +realm/SwiftLint@0.56.2 From d7667bf053d3be08f5cb90b1f30ed3433f279488 Mon Sep 17 00:00:00 2001 From: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> Date: Tue, 24 Feb 2026 18:14:44 +0000 Subject: [PATCH 6/8] ci: Add mint bootstrap step to pre-install SwiftLint before xcodebuild The Xcode project's Linter Script build phase runs SwiftLint via 'mint run realm/SwiftLint'. Without pre-installing, Mint tries to compile SwiftLint from source inside the xcodebuild context which fails on macos-14. Adding 'mint bootstrap' pre-compiles all Mintfile packages so they're cached when xcodebuild runs. Co-Authored-By: unknown <> --- .github/actions/ci/action.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/actions/ci/action.yml b/.github/actions/ci/action.yml index d07a9a2..3fd97cd 100644 --- a/.github/actions/ci/action.yml +++ b/.github/actions/ci/action.yml @@ -27,6 +27,10 @@ runs: brew tap mint-lang/mint-lang brew install mint-lang + - name: Bootstrap Mint packages + shell: bash + run: mint bootstrap + - name: Install cocoapods shell: bash run: gem install cocoapods From d54b2126e4e7835e9e0ffb1d55e85e4b8da1881d Mon Sep 17 00:00:00 2001 From: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> Date: Tue, 24 Feb 2026 18:16:02 +0000 Subject: [PATCH 7/8] ci: Switch from mint-lang tap to Homebrew core mint The mint-lang/mint-lang brew formula (0.19.0) is linked against openssl@1.1 which is not available on macos-14 runners, causing a dylib load failure. Switch to 'brew install mint' from Homebrew core which has up-to-date dependencies. Co-Authored-By: unknown <> --- .github/actions/ci/action.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/actions/ci/action.yml b/.github/actions/ci/action.yml index 3fd97cd..d17638c 100644 --- a/.github/actions/ci/action.yml +++ b/.github/actions/ci/action.yml @@ -23,9 +23,7 @@ runs: - name: Install mint shell: bash - run: | - brew tap mint-lang/mint-lang - brew install mint-lang + run: brew install mint - name: Bootstrap Mint packages shell: bash From 6dc07cde4de81ce3e713d53c6576e94733e74e6f Mon Sep 17 00:00:00 2001 From: Matthew Keeler Date: Wed, 25 Feb 2026 16:30:22 -0500 Subject: [PATCH 8/8] fix windows and use correct test branch --- .github/workflows/ci.yml | 6 +++--- Makefile | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f7ddeb8..a230899 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -56,14 +56,14 @@ jobs: run: swift test --enable-test-discovery windows-build: - name: Windows - Swift 5.9 + name: Windows - Swift 6.1 runs-on: windows-latest steps: - uses: actions/checkout@v4 - name: Install Swift uses: compnerd/gha-setup-swift@cd348eb89f2f450b0664c07fb1cb66880addf17d with: - branch: swift-5.9-release - tag: 5.9-RELEASE + branch: swift-6.1-release + tag: 6.1-RELEASE - name: Build and test run: swift test diff --git a/Makefile b/Makefile index 05c5e1f..d87990e 100644 --- a/Makefile +++ b/Makefile @@ -21,7 +21,7 @@ start-contract-test-service-bg: run-contract-tests: curl -s https://raw.githubusercontent.com/launchdarkly/sse-contract-tests/main/downloader/run.sh \ - | VERSION=v1 PARAMS="-url http://localhost:8000 -debug -stop-service-at-end -skip 'basic parsing/large message in one chunk' -skip 'basic parsing/large message in two chunks'" sh + | VERSION=v2 PARAMS="-url http://localhost:8000 -debug -stop-service-at-end -skip 'basic parsing/large message in one chunk' -skip 'basic parsing/large message in two chunks'" sh contract-tests: build-contract-tests start-contract-test-service-bg run-contract-tests