From 4b40061e26d97d9bd8f00461188722218e63219f Mon Sep 17 00:00:00 2001 From: Alexander Pantiukhov Date: Mon, 23 Feb 2026 10:11:06 +0100 Subject: [PATCH 01/18] Cirrus Labs runners for all the other workflows + Ubuntu update (22.04 -> 24.04) --- .github/workflows/add-platform-label.yml | 2 +- .github/workflows/buildandtest.yml | 14 ++++++------- .../workflows/changes-in-high-risk-code.yml | 4 ++-- .github/workflows/codegen.yml | 2 +- .github/workflows/codeql-analysis.yml | 2 +- .github/workflows/danger.yml | 2 +- .github/workflows/e2e-v2.yml | 8 ++++---- .github/workflows/native-tests.yml | 4 ++-- .github/workflows/ready-to-merge-workflow.yml | 2 +- .github/workflows/release.yml | 2 +- .github/workflows/sample-application-expo.yml | 6 +++--- .github/workflows/sample-application.yml | 8 ++++---- .github/workflows/testflight.yml | 1 - .github/workflows/update-deps.yml | 20 +++++++++---------- 14 files changed, 38 insertions(+), 39 deletions(-) diff --git a/.github/workflows/add-platform-label.yml b/.github/workflows/add-platform-label.yml index 1846933dc7..e677044a10 100644 --- a/.github/workflows/add-platform-label.yml +++ b/.github/workflows/add-platform-label.yml @@ -7,7 +7,7 @@ on: jobs: add_label: - runs-on: ubuntu-latest + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] permissions: issues: write steps: diff --git a/.github/workflows/buildandtest.yml b/.github/workflows/buildandtest.yml index fbd43ab0af..5c8312d9d7 100644 --- a/.github/workflows/buildandtest.yml +++ b/.github/workflows/buildandtest.yml @@ -17,7 +17,7 @@ jobs: job_test: name: Test - runs-on: ubuntu-latest + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] needs: [diff_check] if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} steps: @@ -36,7 +36,7 @@ jobs: job_lint: name: Lint - runs-on: ubuntu-latest + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] needs: [diff_check] if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} steps: @@ -82,7 +82,7 @@ jobs: job_check_integrity: name: Check package integrity - runs-on: ubuntu-latest + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] needs: [diff_check] if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} steps: @@ -106,7 +106,7 @@ jobs: job_build: name: Build - runs-on: ubuntu-latest + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] needs: [diff_check] if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} steps: @@ -148,7 +148,7 @@ jobs: job_type_check: name: Type Check Typescript 3.8 - runs-on: ubuntu-latest + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] needs: [job_build, diff_check] if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} env: @@ -181,7 +181,7 @@ jobs: run: yarn type-check job_circular_dep_check: name: Circular Dependency Check - runs-on: ubuntu-latest + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] needs: [job_build, diff_check] if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} steps: @@ -210,7 +210,7 @@ jobs: job_bundle: name: Bundle - runs-on: ubuntu-latest + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] needs: [job_test, job_build, diff_check] if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} strategy: diff --git a/.github/workflows/changes-in-high-risk-code.yml b/.github/workflows/changes-in-high-risk-code.yml index 32c6a3d4e2..5fff07e417 100644 --- a/.github/workflows/changes-in-high-risk-code.yml +++ b/.github/workflows/changes-in-high-risk-code.yml @@ -10,7 +10,7 @@ concurrency: jobs: files-changed: name: Detect changed files - runs-on: ubuntu-latest + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] # Map a step output to a job output outputs: high_risk_code: ${{ steps.changes.outputs.high_risk_code }} @@ -31,7 +31,7 @@ jobs: validate-high-risk-code: if: needs.files-changed.outputs.high_risk_code == 'true' needs: files-changed - runs-on: ubuntu-latest + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] steps: - name: Comment on PR to notify of changes in high risk files uses: actions/github-script@v8 diff --git a/.github/workflows/codegen.yml b/.github/workflows/codegen.yml index 9e8f8aa179..d15a213fd3 100644 --- a/.github/workflows/codegen.yml +++ b/.github/workflows/codegen.yml @@ -16,7 +16,7 @@ jobs: uses: ./.github/workflows/skip-ci.yml codegen: - runs-on: ubuntu-latest + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] needs: [diff_check] if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} strategy: diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index 7fe2e924f4..5410089bf6 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -26,7 +26,7 @@ jobs: analyze: name: Analyze - runs-on: ubuntu-latest + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] needs: [diff_check] if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} diff --git a/.github/workflows/danger.yml b/.github/workflows/danger.yml index d56e1585a1..e222a42b35 100644 --- a/.github/workflows/danger.yml +++ b/.github/workflows/danger.yml @@ -6,7 +6,7 @@ on: jobs: danger: - runs-on: ubuntu-latest + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] steps: - uses: getsentry/github-workflows/danger@17cc15eb58ea3687cd8f2714a4192dcee4aa09ef with: diff --git a/.github/workflows/e2e-v2.yml b/.github/workflows/e2e-v2.yml index ad5dabeb29..61bb26c44d 100644 --- a/.github/workflows/e2e-v2.yml +++ b/.github/workflows/e2e-v2.yml @@ -52,7 +52,7 @@ jobs: name: iOS appPlain: performance-tests/test-app-plain.ipa - platform: android - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:22.04", "runner_group_id:10"] + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:10"] name: Android appPlain: performance-tests/TestAppPlain/android/app/build/outputs/apk/release/app-release.apk steps: @@ -205,7 +205,7 @@ jobs: rn-version: '0.84.0' runs-on: ["ghcr.io/cirruslabs/macos-tahoe-xcode:26.2.0", "runner_group_id:10"] - platform: android - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:22.04", "runner_group_id:10"] + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:10"] exclude: # exclude JSC for new RN versions (keeping the matrix manageable) - rn-version: '0.84.0' @@ -332,9 +332,9 @@ jobs: include: - platform: ios rn-version: '0.84.0' - runs-on: macos-26 + runs-on: ["ghcr.io/cirruslabs/macos-tahoe-xcode:26.2.0", "runner_group_id:12"] - platform: android - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:22.04", "runner_group_id:10"] + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:10"] steps: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 diff --git a/.github/workflows/native-tests.yml b/.github/workflows/native-tests.yml index 29afab853c..e1ec2308c6 100644 --- a/.github/workflows/native-tests.yml +++ b/.github/workflows/native-tests.yml @@ -26,7 +26,7 @@ jobs: test-ios: name: ios - runs-on: macos-15 + runs-on: ["ghcr.io/cirruslabs/macos-tahoe-xcode:26.2.0", "runner_group_id:12"] needs: [diff_check] if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} steps: @@ -83,7 +83,7 @@ jobs: test-android: name: android - runs-on: ubuntu-latest + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] needs: [diff_check] if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} steps: diff --git a/.github/workflows/ready-to-merge-workflow.yml b/.github/workflows/ready-to-merge-workflow.yml index 48fcb7e1f2..b0d401ae14 100644 --- a/.github/workflows/ready-to-merge-workflow.yml +++ b/.github/workflows/ready-to-merge-workflow.yml @@ -14,7 +14,7 @@ on: jobs: ready-to-merge-gate: name: 'Missing "ready-to-merge" label' - runs-on: ubuntu-latest + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] steps: - name: Check for exact 'ready-to-merge' label if: ${{ inputs.is-pr }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 7ad72b0347..e124a450a3 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -18,7 +18,7 @@ permissions: jobs: release: - runs-on: ubuntu-latest + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] name: Release a new version steps: - name: Get auth token diff --git a/.github/workflows/sample-application-expo.yml b/.github/workflows/sample-application-expo.yml index a304dc7e33..cd17f88555 100644 --- a/.github/workflows/sample-application-expo.yml +++ b/.github/workflows/sample-application-expo.yml @@ -43,11 +43,11 @@ jobs: build-type: ['dev', 'production'] include: - platform: ios - runs-on: ["ghcr.io/cirruslabs/macos-sequoia-xcode:16.4", "runner_group_id:10"] + runs-on: ["ghcr.io/cirruslabs/macos-tahoe-xcode:16.4", "runner_group_id:10"] - platform: android - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:22.04", "runner_group_id:10"] + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:10"] - platform: web - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:22.04", "runner_group_id:10"] + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:10"] exclude: - platform: 'android' ios-use-frameworks: 'dynamic-frameworks' diff --git a/.github/workflows/sample-application.yml b/.github/workflows/sample-application.yml index 26c49289fb..d115555405 100644 --- a/.github/workflows/sample-application.yml +++ b/.github/workflows/sample-application.yml @@ -52,11 +52,11 @@ jobs: build-type: ['dev', 'production'] include: - platform: ios - runs-on: ["ghcr.io/cirruslabs/macos-sequoia-xcode:16.4", "runner_group_id:10"] + runs-on: ["ghcr.io/cirruslabs/macos-tahoe-xcode:26.2.0", "runner_group_id:10"] - platform: macos runs-on: ["ghcr.io/cirruslabs/macos-sequoia-xcode:16.4", "runner_group_id:10"] - platform: android - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:22.04", "runner_group_id:10"] + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:10"] exclude: - platform: 'android' ios-use-frameworks: 'dynamic-frameworks' @@ -210,13 +210,13 @@ jobs: matrix: include: - platform: ios - runs-on: macos-15 + runs-on: ["ghcr.io/cirruslabs/macos-tahoe-xcode:26.2.0", "runner_group_id:12"] rn-architecture: 'new' ios-use-frameworks: 'no-frameworks' build-type: 'production' - platform: android - runs-on: ubuntu-latest + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] rn-architecture: 'new' build-type: 'production' diff --git a/.github/workflows/testflight.yml b/.github/workflows/testflight.yml index ac48600ec2..c6b3955e55 100644 --- a/.github/workflows/testflight.yml +++ b/.github/workflows/testflight.yml @@ -3,7 +3,6 @@ on: push: branches: - main - - alwx/ci/macos-tahoe-cl-runners pull_request: paths: diff --git a/.github/workflows/update-deps.yml b/.github/workflows/update-deps.yml index ec4199a2fd..700b101cee 100644 --- a/.github/workflows/update-deps.yml +++ b/.github/workflows/update-deps.yml @@ -11,7 +11,7 @@ on: jobs: android: - runs-on: ubuntu-latest + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] steps: - uses: getsentry/github-workflows/updater@v3 with: @@ -20,7 +20,7 @@ jobs: ssh-key: ${{ secrets.CI_DEPLOY_KEY }} android-stubs: - runs-on: ubuntu-latest + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] steps: - uses: getsentry/github-workflows/updater@v3 with: @@ -29,7 +29,7 @@ jobs: ssh-key: ${{ secrets.CI_DEPLOY_KEY }} cocoa: - runs-on: ubuntu-latest + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] steps: - uses: getsentry/github-workflows/updater@v3 with: @@ -38,7 +38,7 @@ jobs: ssh-key: ${{ secrets.CI_DEPLOY_KEY }} javascript: - runs-on: ubuntu-latest + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] steps: - uses: getsentry/github-workflows/updater@v3 with: @@ -47,7 +47,7 @@ jobs: ssh-key: ${{ secrets.CI_DEPLOY_KEY }} wizard: - runs-on: ubuntu-latest + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] steps: - uses: getsentry/github-workflows/updater@v3 with: @@ -57,7 +57,7 @@ jobs: ssh-key: ${{ secrets.CI_DEPLOY_KEY }} cli: - runs-on: ubuntu-latest + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] steps: - uses: getsentry/github-workflows/updater@v3 with: @@ -66,7 +66,7 @@ jobs: ssh-key: ${{ secrets.CI_DEPLOY_KEY }} bundler-plugins: - runs-on: ubuntu-latest + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] steps: - uses: getsentry/github-workflows/updater@v3 with: @@ -75,7 +75,7 @@ jobs: ssh-key: ${{ secrets.CI_DEPLOY_KEY }} sample-rn: - runs-on: ubuntu-latest + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] steps: - uses: getsentry/github-workflows/updater@v3 with: @@ -86,7 +86,7 @@ jobs: ssh-key: ${{ secrets.CI_DEPLOY_KEY }} maestro: - runs-on: ubuntu-latest + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] steps: - uses: getsentry/github-workflows/updater@v3 with: @@ -97,7 +97,7 @@ jobs: ssh-key: ${{ secrets.CI_DEPLOY_KEY }} sentry-android-gradle-plugin: - runs-on: ubuntu-latest + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] steps: - uses: getsentry/github-workflows/updater@v3 with: From 5d81a1f6de5cf50bab89253be929309066a8be14 Mon Sep 17 00:00:00 2001 From: Alexander Pantiukhov Date: Mon, 23 Feb 2026 11:38:09 +0100 Subject: [PATCH 02/18] Corepack fix --- .github/workflows/buildandtest.yml | 14 +++++++------- .github/workflows/codegen.yml | 2 +- .github/workflows/native-tests.yml | 2 +- .github/workflows/release.yml | 2 +- .github/workflows/sample-application-expo.yml | 2 +- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/.github/workflows/buildandtest.yml b/.github/workflows/buildandtest.yml index 5c8312d9d7..9257db3177 100644 --- a/.github/workflows/buildandtest.yml +++ b/.github/workflows/buildandtest.yml @@ -22,7 +22,7 @@ jobs: if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} steps: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 - - run: npm i -g corepack + - run: corepack enable - uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6 with: package-manager-cache: false @@ -41,7 +41,7 @@ jobs: if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} steps: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 - - run: npm i -g corepack + - run: corepack enable - uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6 with: package-manager-cache: false @@ -87,7 +87,7 @@ jobs: if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} steps: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 - - run: npm i -g corepack + - run: corepack enable - uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6 with: package-manager-cache: false @@ -111,7 +111,7 @@ jobs: if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} steps: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 - - run: npm i -g corepack + - run: corepack enable - uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6 with: package-manager-cache: false @@ -155,7 +155,7 @@ jobs: YARN_ENABLE_IMMUTABLE_INSTALLS: false steps: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 - - run: npm i -g corepack + - run: corepack enable - uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6 with: package-manager-cache: false @@ -186,7 +186,7 @@ jobs: if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} steps: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 - - run: npm i -g corepack + - run: corepack enable - uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6 with: package-manager-cache: false @@ -221,7 +221,7 @@ jobs: dev: [true, false] steps: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 - - run: npm i -g corepack + - run: corepack enable - uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6 with: package-manager-cache: false diff --git a/.github/workflows/codegen.yml b/.github/workflows/codegen.yml index d15a213fd3..875c751dc3 100644 --- a/.github/workflows/codegen.yml +++ b/.github/workflows/codegen.yml @@ -36,7 +36,7 @@ jobs: --targetPlatform ios steps: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 - - run: npm i -g corepack + - run: corepack enable - uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6 with: package-manager-cache: false diff --git a/.github/workflows/native-tests.yml b/.github/workflows/native-tests.yml index e1ec2308c6..d27a345bbe 100644 --- a/.github/workflows/native-tests.yml +++ b/.github/workflows/native-tests.yml @@ -33,7 +33,7 @@ jobs: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 - name: Enable Corepack - run: npm i -g corepack + run: corepack enable - uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6 with: package-manager-cache: false diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index e124a450a3..0c26f6a86d 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -33,7 +33,7 @@ jobs: token: ${{ steps.token.outputs.token }} fetch-depth: 0 - - run: npm i -g corepack + - run: corepack enable - uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6 with: diff --git a/.github/workflows/sample-application-expo.yml b/.github/workflows/sample-application-expo.yml index cd17f88555..d95e44c165 100644 --- a/.github/workflows/sample-application-expo.yml +++ b/.github/workflows/sample-application-expo.yml @@ -43,7 +43,7 @@ jobs: build-type: ['dev', 'production'] include: - platform: ios - runs-on: ["ghcr.io/cirruslabs/macos-tahoe-xcode:16.4", "runner_group_id:10"] + runs-on: ["ghcr.io/cirruslabs/macos-tahoe-xcode:26.2.0", "runner_group_id:10"] - platform: android runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:10"] - platform: web From 2455944750be787d9e1b6c23948accadc1747771 Mon Sep 17 00:00:00 2001 From: Alexander Pantiukhov Date: Mon, 23 Feb 2026 14:15:37 +0100 Subject: [PATCH 03/18] Test fixes --- .github/workflows/buildandtest.yml | 11 +++++++++-- .github/workflows/native-tests.yml | 4 ++++ .github/workflows/sample-application.yml | 5 +++++ 3 files changed, 18 insertions(+), 2 deletions(-) diff --git a/.github/workflows/buildandtest.yml b/.github/workflows/buildandtest.yml index 9257db3177..9a308f8511 100644 --- a/.github/workflows/buildandtest.yml +++ b/.github/workflows/buildandtest.yml @@ -66,7 +66,7 @@ jobs: clang --version clang-format --version - - name: Install Swiftly + - name: Install Swiftly and Swift run: | SWIFTLY_FILE="swiftly-$(uname -m).tar.gz" curl -sL https://download.swift.org/swiftly/linux/swiftly-x86_64.tar.gz -o $SWIFTLY_FILE @@ -75,10 +75,17 @@ jobs: ./swiftly init --quiet-shell-followup . "${SWIFTLY_HOME_DIR:-$HOME/.local/share/swiftly}/env.sh" hash -r + + # Install Swift (required for SwiftLint) + swiftly install latest + swift --version + sudo apt-get -y install libcurl4-openssl-dev - name: Lint - run: yarn lint + run: | + . "${SWIFTLY_HOME_DIR:-$HOME/.local/share/swiftly}/env.sh" + yarn lint job_check_integrity: name: Check package integrity diff --git a/.github/workflows/native-tests.yml b/.github/workflows/native-tests.yml index d27a345bbe..a21f89e60f 100644 --- a/.github/workflows/native-tests.yml +++ b/.github/workflows/native-tests.yml @@ -44,6 +44,10 @@ jobs: - name: Install SDK JS Dependencies run: yarn install + - uses: ruby/setup-ruby@v1 + with: + ruby-version: '3.3.0' + - name: Install App Pods working-directory: packages/core/RNSentryCocoaTester run: pod install diff --git a/.github/workflows/sample-application.yml b/.github/workflows/sample-application.yml index d115555405..33c5f39762 100644 --- a/.github/workflows/sample-application.yml +++ b/.github/workflows/sample-application.yml @@ -135,6 +135,11 @@ jobs: - name: Build iOS App if: ${{ matrix.platform == 'ios' }} working-directory: ${{ env.REACT_NATIVE_SAMPLE_PATH }} + env: + # Fix for Xcode 26+ with MetalToolchain: use default Xcode toolchain to avoid + # missing Swift compatibility libraries (swiftCompatibility56, etc.) + # See: https://github.com/actions/runner-images/issues/13135 + TOOLCHAINS: com.apple.dt.toolchain.XcodeDefault run: | [[ "${{ matrix.build-type }}" == "production" ]] && export CONFIG='Release' || export CONFIG='Debug' From 058436c3f1b263a27f16c259d41344a63583f2cb Mon Sep 17 00:00:00 2001 From: Alexander Pantiukhov Date: Mon, 23 Feb 2026 14:46:47 +0100 Subject: [PATCH 04/18] Swift fixes --- .github/workflows/buildandtest.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/buildandtest.yml b/.github/workflows/buildandtest.yml index 9a308f8511..31665c0b00 100644 --- a/.github/workflows/buildandtest.yml +++ b/.github/workflows/buildandtest.yml @@ -82,6 +82,10 @@ jobs: sudo apt-get -y install libcurl4-openssl-dev + # Export Swift toolchain path for SwiftLint's SourceKit + SWIFT_PATH=$(dirname $(dirname $(which swift))) + echo "LINUX_SOURCEKIT_LIB_PATH=${SWIFT_PATH}/lib/swift/linux" >> $GITHUB_ENV + - name: Lint run: | . "${SWIFTLY_HOME_DIR:-$HOME/.local/share/swiftly}/env.sh" From 9eeabcddaccc32e86fd410da00c1d9d51479ac1b Mon Sep 17 00:00:00 2001 From: Alexander Pantiukhov Date: Tue, 24 Feb 2026 10:40:39 +0100 Subject: [PATCH 05/18] Trying a few things --- .github/workflows/buildandtest.yml | 7 +++---- .github/workflows/native-tests.yml | 10 ++++++++++ 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/.github/workflows/buildandtest.yml b/.github/workflows/buildandtest.yml index 31665c0b00..8e25dbdfb4 100644 --- a/.github/workflows/buildandtest.yml +++ b/.github/workflows/buildandtest.yml @@ -76,15 +76,14 @@ jobs: . "${SWIFTLY_HOME_DIR:-$HOME/.local/share/swiftly}/env.sh" hash -r - # Install Swift (required for SwiftLint) - swiftly install latest + # Install Swift 5.10 (compatible with SwiftLint 0.61.0) + swiftly install 5.10 swift --version sudo apt-get -y install libcurl4-openssl-dev # Export Swift toolchain path for SwiftLint's SourceKit - SWIFT_PATH=$(dirname $(dirname $(which swift))) - echo "LINUX_SOURCEKIT_LIB_PATH=${SWIFT_PATH}/lib/swift/linux" >> $GITHUB_ENV + echo "LINUX_SOURCEKIT_LIB_PATH=${SWIFTLY_HOME_DIR:-$HOME/.local/share/swiftly}/toolchains/5.10/usr/lib/swift/linux" >> $GITHUB_ENV - name: Lint run: | diff --git a/.github/workflows/native-tests.yml b/.github/workflows/native-tests.yml index a21f89e60f..574d5da819 100644 --- a/.github/workflows/native-tests.yml +++ b/.github/workflows/native-tests.yml @@ -44,10 +44,20 @@ jobs: - name: Install SDK JS Dependencies run: yarn install + - name: Setup Ruby + run: | + # Disable rbenv to avoid .ruby-version conflicts + echo 'export PATH="/usr/local/bin:$PATH"' >> $GITHUB_ENV + export RBENV_VERSION=system + echo "RBENV_VERSION=system" >> $GITHUB_ENV + - uses: ruby/setup-ruby@v1 with: ruby-version: '3.3.0' + - name: Install CocoaPods + run: gem install cocoapods + - name: Install App Pods working-directory: packages/core/RNSentryCocoaTester run: pod install From ff37e482500e6e768faedbbaa88ed6758d8e9799 Mon Sep 17 00:00:00 2001 From: Alexander Pantiukhov Date: Tue, 24 Feb 2026 11:27:40 +0100 Subject: [PATCH 06/18] Trying a few things --- .github/workflows/native-tests.yml | 4 ++++ .github/workflows/sample-application-expo.yml | 5 +++++ 2 files changed, 9 insertions(+) diff --git a/.github/workflows/native-tests.yml b/.github/workflows/native-tests.yml index 574d5da819..de8f02c9d5 100644 --- a/.github/workflows/native-tests.yml +++ b/.github/workflows/native-tests.yml @@ -70,6 +70,10 @@ jobs: env: SCHEME: RNSentryCocoaTester CONFIGURATION: Release + # Fix for Xcode 26+ with MetalToolchain: use default Xcode toolchain to avoid + # missing Swift compatibility libraries (swiftCompatibility56, etc.) + # See: https://github.com/actions/runner-images/issues/13135 + TOOLCHAINS: com.apple.dt.toolchain.XcodeDefault run: | # Find first available iPhone simulator from latest iOS runtime DEVICE_ID=$(xcrun simctl list devices available iPhone -j | jq -r ' diff --git a/.github/workflows/sample-application-expo.yml b/.github/workflows/sample-application-expo.yml index d95e44c165..0de331fb2d 100644 --- a/.github/workflows/sample-application-expo.yml +++ b/.github/workflows/sample-application-expo.yml @@ -125,6 +125,11 @@ jobs: - name: Build iOS App if: ${{ matrix.platform == 'ios' }} working-directory: samples/expo/ios + env: + # Fix for Xcode 26+ with MetalToolchain: use default Xcode toolchain to avoid + # missing Swift compatibility libraries (swiftCompatibility56, etc.) + # See: https://github.com/actions/runner-images/issues/13135 + TOOLCHAINS: com.apple.dt.toolchain.XcodeDefault run: | [[ "${{ matrix.build-type }}" == "production" ]] && CONFIG='Release' || CONFIG='Debug' echo "Building $CONFIG" From 89602d5b1b1eed327aa66bc8d9113d40f660d7a6 Mon Sep 17 00:00:00 2001 From: Alexander Pantiukhov Date: Tue, 24 Feb 2026 11:39:42 +0100 Subject: [PATCH 07/18] Ruby change --- .github/workflows/native-tests.yml | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/.github/workflows/native-tests.yml b/.github/workflows/native-tests.yml index de8f02c9d5..3e2e42783d 100644 --- a/.github/workflows/native-tests.yml +++ b/.github/workflows/native-tests.yml @@ -44,16 +44,12 @@ jobs: - name: Install SDK JS Dependencies run: yarn install - - name: Setup Ruby - run: | - # Disable rbenv to avoid .ruby-version conflicts - echo 'export PATH="/usr/local/bin:$PATH"' >> $GITHUB_ENV - export RBENV_VERSION=system - echo "RBENV_VERSION=system" >> $GITHUB_ENV - - uses: ruby/setup-ruby@v1 with: ruby-version: '3.3.0' + env: + # Disable rbenv to avoid .ruby-version conflicts + RBENV_VERSION: system - name: Install CocoaPods run: gem install cocoapods From acf3d9bf67c622587a617515e359e5372c5d544e Mon Sep 17 00:00:00 2001 From: Alexander Pantiukhov Date: Tue, 24 Feb 2026 11:43:57 +0100 Subject: [PATCH 08/18] Swiftly change --- .github/workflows/buildandtest.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/buildandtest.yml b/.github/workflows/buildandtest.yml index 8e25dbdfb4..a07b4fa54c 100644 --- a/.github/workflows/buildandtest.yml +++ b/.github/workflows/buildandtest.yml @@ -83,7 +83,10 @@ jobs: sudo apt-get -y install libcurl4-openssl-dev # Export Swift toolchain path for SwiftLint's SourceKit - echo "LINUX_SOURCEKIT_LIB_PATH=${SWIFTLY_HOME_DIR:-$HOME/.local/share/swiftly}/toolchains/5.10/usr/lib/swift/linux" >> $GITHUB_ENV + # Dynamically determine the path from the swift binary location + SWIFT_BIN=$(which swift) + SWIFT_TOOLCHAIN=$(dirname $(dirname "$SWIFT_BIN")) + echo "LINUX_SOURCEKIT_LIB_PATH=${SWIFT_TOOLCHAIN}/lib/swift/linux" >> $GITHUB_ENV - name: Lint run: | From 13d48a936c7e382a3029d8ddc273d4f830f3b0a0 Mon Sep 17 00:00:00 2001 From: Alexander Pantiukhov Date: Tue, 24 Feb 2026 13:40:43 +0100 Subject: [PATCH 09/18] Small-ish fixes and update-deps.yaml refactoring --- .github/workflows/buildandtest.yml | 6 +- .github/workflows/testflight.yml | 1 + .github/workflows/update-deps.yml | 145 ++++++++++------------------- 3 files changed, 55 insertions(+), 97 deletions(-) diff --git a/.github/workflows/buildandtest.yml b/.github/workflows/buildandtest.yml index a07b4fa54c..c1b4ba1652 100644 --- a/.github/workflows/buildandtest.yml +++ b/.github/workflows/buildandtest.yml @@ -68,6 +68,10 @@ jobs: - name: Install Swiftly and Swift run: | + # Install Swift dependencies first + sudo apt-get update + sudo apt-get -y install libcurl4-openssl-dev libz3-dev + SWIFTLY_FILE="swiftly-$(uname -m).tar.gz" curl -sL https://download.swift.org/swiftly/linux/swiftly-x86_64.tar.gz -o $SWIFTLY_FILE tar zxf $SWIFTLY_FILE @@ -80,8 +84,6 @@ jobs: swiftly install 5.10 swift --version - sudo apt-get -y install libcurl4-openssl-dev - # Export Swift toolchain path for SwiftLint's SourceKit # Dynamically determine the path from the swift binary location SWIFT_BIN=$(which swift) diff --git a/.github/workflows/testflight.yml b/.github/workflows/testflight.yml index c6b3955e55..aacc915ef1 100644 --- a/.github/workflows/testflight.yml +++ b/.github/workflows/testflight.yml @@ -3,6 +3,7 @@ on: push: branches: - main + - alwx/experiment/cirrus-labs-for-everythin pull_request: paths: diff --git a/.github/workflows/update-deps.yml b/.github/workflows/update-deps.yml index 700b101cee..6d667e6f10 100644 --- a/.github/workflows/update-deps.yml +++ b/.github/workflows/update-deps.yml @@ -9,100 +9,55 @@ on: branches: - main -jobs: - android: - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] - steps: - - uses: getsentry/github-workflows/updater@v3 - with: - path: scripts/update-android.sh - name: Android SDK - ssh-key: ${{ secrets.CI_DEPLOY_KEY }} - - android-stubs: - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] - steps: - - uses: getsentry/github-workflows/updater@v3 - with: - path: scripts/update-android-stubs.sh - name: Android SDK Stubs - ssh-key: ${{ secrets.CI_DEPLOY_KEY }} - - cocoa: - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] - steps: - - uses: getsentry/github-workflows/updater@v3 - with: - path: scripts/update-cocoa.sh - name: Cocoa SDK - ssh-key: ${{ secrets.CI_DEPLOY_KEY }} - - javascript: - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] - steps: - - uses: getsentry/github-workflows/updater@v3 - with: - path: scripts/update-javascript.sh - name: JavaScript SDK - ssh-key: ${{ secrets.CI_DEPLOY_KEY }} - - wizard: - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] - steps: - - uses: getsentry/github-workflows/updater@v3 - with: - path: scripts/update-wizard.sh - name: Wizard - changelog-entry: false - ssh-key: ${{ secrets.CI_DEPLOY_KEY }} +env: + UBUNTU_RUNNER: '["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"]' - cli: - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] - steps: - - uses: getsentry/github-workflows/updater@v3 - with: - path: scripts/update-cli.sh - name: CLI - ssh-key: ${{ secrets.CI_DEPLOY_KEY }} - - bundler-plugins: - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] - steps: - - uses: getsentry/github-workflows/updater@v3 - with: - path: scripts/update-bundler-plugins.sh - name: Bundler Plugins - ssh-key: ${{ secrets.CI_DEPLOY_KEY }} - - sample-rn: - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] - steps: - - uses: getsentry/github-workflows/updater@v3 - with: - path: scripts/update-rn.sh - name: React Native - pattern: '^v[0-9.]+$' # only match non-preview versions, also ignores "latest" - changelog-entry: false - ssh-key: ${{ secrets.CI_DEPLOY_KEY }} - - maestro: - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] - steps: - - uses: getsentry/github-workflows/updater@v3 - with: - path: scripts/update-maestro.sh - name: Maestro - pattern: '^v[0-9.]+$' # only match non-preview versions - changelog-entry: false - ssh-key: ${{ secrets.CI_DEPLOY_KEY }} - - sentry-android-gradle-plugin: - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] - steps: - - uses: getsentry/github-workflows/updater@v3 - with: - path: scripts/update-sentry-android-gradle-plugin.sh - name: Sentry Android Gradle Plugin - pattern: '^[0-9.]+$' - changelog-entry: false +jobs: + update-deps: + runs-on: ${{ fromJson(vars.UBUNTU_RUNNER || '["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"]') }} + strategy: + fail-fast: false + matrix: + include: + - path: scripts/update-android.sh + name: Android SDK + changelog-entry: true + - path: scripts/update-android-stubs.sh + name: Android SDK Stubs + changelog-entry: true + - path: scripts/update-cocoa.sh + name: Cocoa SDK + changelog-entry: true + - path: scripts/update-javascript.sh + name: JavaScript SDK + changelog-entry: true + - path: scripts/update-wizard.sh + name: Wizard + changelog-entry: false + - path: scripts/update-cli.sh + name: CLI + changelog-entry: true + - path: scripts/update-bundler-plugins.sh + name: Bundler Plugins + changelog-entry: true + - path: scripts/update-rn.sh + name: React Native + pattern: '^v[0-9.]+$' # only match non-preview versions, also ignores "latest" + changelog-entry: false + - path: scripts/update-maestro.sh + name: Maestro + pattern: '^v[0-9.]+$' # only match non-preview versions + changelog-entry: false + - path: scripts/update-sentry-android-gradle-plugin.sh + name: Sentry Android Gradle Plugin + pattern: '^[0-9.]+$' + changelog-entry: false + name: ${{ matrix.name }} + steps: + - uses: getsentry/github-workflows/updater@v3 + with: + path: ${{ matrix.path }} + name: ${{ matrix.name }} + pattern: ${{ matrix.pattern || '' }} + changelog-entry: ${{ matrix.changelog-entry }} ssh-key: ${{ secrets.CI_DEPLOY_KEY }} From ac32ec98f46ca788012c91267422b8e2017faf96 Mon Sep 17 00:00:00 2001 From: Alexander Pantiukhov Date: Tue, 24 Feb 2026 13:59:52 +0100 Subject: [PATCH 10/18] Updated; update-deps.yml is back to how it was --- .github/workflows/buildandtest.yml | 7 +- .github/workflows/update-deps.yml | 145 +++++++++++++++++++---------- 2 files changed, 99 insertions(+), 53 deletions(-) diff --git a/.github/workflows/buildandtest.yml b/.github/workflows/buildandtest.yml index c1b4ba1652..db4fb72557 100644 --- a/.github/workflows/buildandtest.yml +++ b/.github/workflows/buildandtest.yml @@ -72,9 +72,10 @@ jobs: sudo apt-get update sudo apt-get -y install libcurl4-openssl-dev libz3-dev - SWIFTLY_FILE="swiftly-$(uname -m).tar.gz" - curl -sL https://download.swift.org/swiftly/linux/swiftly-x86_64.tar.gz -o $SWIFTLY_FILE - tar zxf $SWIFTLY_FILE + ARCH=$(uname -m) + SWIFTLY_FILE="swiftly-${ARCH}.tar.gz" + curl -sL "https://download.swift.org/swiftly/linux/swiftly-${ARCH}.tar.gz" -o "$SWIFTLY_FILE" + tar zxf "$SWIFTLY_FILE" ./swiftly init --quiet-shell-followup . "${SWIFTLY_HOME_DIR:-$HOME/.local/share/swiftly}/env.sh" diff --git a/.github/workflows/update-deps.yml b/.github/workflows/update-deps.yml index 6d667e6f10..700b101cee 100644 --- a/.github/workflows/update-deps.yml +++ b/.github/workflows/update-deps.yml @@ -9,55 +9,100 @@ on: branches: - main -env: - UBUNTU_RUNNER: '["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"]' - jobs: - update-deps: - runs-on: ${{ fromJson(vars.UBUNTU_RUNNER || '["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"]') }} - strategy: - fail-fast: false - matrix: - include: - - path: scripts/update-android.sh - name: Android SDK - changelog-entry: true - - path: scripts/update-android-stubs.sh - name: Android SDK Stubs - changelog-entry: true - - path: scripts/update-cocoa.sh - name: Cocoa SDK - changelog-entry: true - - path: scripts/update-javascript.sh - name: JavaScript SDK - changelog-entry: true - - path: scripts/update-wizard.sh - name: Wizard - changelog-entry: false - - path: scripts/update-cli.sh - name: CLI - changelog-entry: true - - path: scripts/update-bundler-plugins.sh - name: Bundler Plugins - changelog-entry: true - - path: scripts/update-rn.sh - name: React Native - pattern: '^v[0-9.]+$' # only match non-preview versions, also ignores "latest" - changelog-entry: false - - path: scripts/update-maestro.sh - name: Maestro - pattern: '^v[0-9.]+$' # only match non-preview versions - changelog-entry: false - - path: scripts/update-sentry-android-gradle-plugin.sh - name: Sentry Android Gradle Plugin - pattern: '^[0-9.]+$' - changelog-entry: false - name: ${{ matrix.name }} - steps: - - uses: getsentry/github-workflows/updater@v3 - with: - path: ${{ matrix.path }} - name: ${{ matrix.name }} - pattern: ${{ matrix.pattern || '' }} - changelog-entry: ${{ matrix.changelog-entry }} + android: + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + steps: + - uses: getsentry/github-workflows/updater@v3 + with: + path: scripts/update-android.sh + name: Android SDK + ssh-key: ${{ secrets.CI_DEPLOY_KEY }} + + android-stubs: + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + steps: + - uses: getsentry/github-workflows/updater@v3 + with: + path: scripts/update-android-stubs.sh + name: Android SDK Stubs + ssh-key: ${{ secrets.CI_DEPLOY_KEY }} + + cocoa: + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + steps: + - uses: getsentry/github-workflows/updater@v3 + with: + path: scripts/update-cocoa.sh + name: Cocoa SDK + ssh-key: ${{ secrets.CI_DEPLOY_KEY }} + + javascript: + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + steps: + - uses: getsentry/github-workflows/updater@v3 + with: + path: scripts/update-javascript.sh + name: JavaScript SDK + ssh-key: ${{ secrets.CI_DEPLOY_KEY }} + + wizard: + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + steps: + - uses: getsentry/github-workflows/updater@v3 + with: + path: scripts/update-wizard.sh + name: Wizard + changelog-entry: false + ssh-key: ${{ secrets.CI_DEPLOY_KEY }} + + cli: + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + steps: + - uses: getsentry/github-workflows/updater@v3 + with: + path: scripts/update-cli.sh + name: CLI + ssh-key: ${{ secrets.CI_DEPLOY_KEY }} + + bundler-plugins: + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + steps: + - uses: getsentry/github-workflows/updater@v3 + with: + path: scripts/update-bundler-plugins.sh + name: Bundler Plugins + ssh-key: ${{ secrets.CI_DEPLOY_KEY }} + + sample-rn: + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + steps: + - uses: getsentry/github-workflows/updater@v3 + with: + path: scripts/update-rn.sh + name: React Native + pattern: '^v[0-9.]+$' # only match non-preview versions, also ignores "latest" + changelog-entry: false + ssh-key: ${{ secrets.CI_DEPLOY_KEY }} + + maestro: + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + steps: + - uses: getsentry/github-workflows/updater@v3 + with: + path: scripts/update-maestro.sh + name: Maestro + pattern: '^v[0-9.]+$' # only match non-preview versions + changelog-entry: false + ssh-key: ${{ secrets.CI_DEPLOY_KEY }} + + sentry-android-gradle-plugin: + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + steps: + - uses: getsentry/github-workflows/updater@v3 + with: + path: scripts/update-sentry-android-gradle-plugin.sh + name: Sentry Android Gradle Plugin + pattern: '^[0-9.]+$' + changelog-entry: false ssh-key: ${{ secrets.CI_DEPLOY_KEY }} From 05d1f4f7588a33d900070fad942bd77b4de6af57 Mon Sep 17 00:00:00 2001 From: Alexander Pantiukhov Date: Thu, 26 Feb 2026 10:43:31 +0100 Subject: [PATCH 11/18] reverts back some workflows Co-Authored-By: Oz --- .github/workflows/add-platform-label.yml | 2 +- .../workflows/changes-in-high-risk-code.yml | 4 ++-- .github/workflows/codeql-analysis.yml | 2 +- .github/workflows/danger.yml | 2 +- .github/workflows/ready-to-merge-workflow.yml | 2 +- .github/workflows/update-deps.yml | 20 +++++++++---------- 6 files changed, 16 insertions(+), 16 deletions(-) diff --git a/.github/workflows/add-platform-label.yml b/.github/workflows/add-platform-label.yml index e677044a10..1846933dc7 100644 --- a/.github/workflows/add-platform-label.yml +++ b/.github/workflows/add-platform-label.yml @@ -7,7 +7,7 @@ on: jobs: add_label: - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + runs-on: ubuntu-latest permissions: issues: write steps: diff --git a/.github/workflows/changes-in-high-risk-code.yml b/.github/workflows/changes-in-high-risk-code.yml index 5fff07e417..32c6a3d4e2 100644 --- a/.github/workflows/changes-in-high-risk-code.yml +++ b/.github/workflows/changes-in-high-risk-code.yml @@ -10,7 +10,7 @@ concurrency: jobs: files-changed: name: Detect changed files - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + runs-on: ubuntu-latest # Map a step output to a job output outputs: high_risk_code: ${{ steps.changes.outputs.high_risk_code }} @@ -31,7 +31,7 @@ jobs: validate-high-risk-code: if: needs.files-changed.outputs.high_risk_code == 'true' needs: files-changed - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + runs-on: ubuntu-latest steps: - name: Comment on PR to notify of changes in high risk files uses: actions/github-script@v8 diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index 5410089bf6..7fe2e924f4 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -26,7 +26,7 @@ jobs: analyze: name: Analyze - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + runs-on: ubuntu-latest needs: [diff_check] if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} diff --git a/.github/workflows/danger.yml b/.github/workflows/danger.yml index e222a42b35..d56e1585a1 100644 --- a/.github/workflows/danger.yml +++ b/.github/workflows/danger.yml @@ -6,7 +6,7 @@ on: jobs: danger: - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + runs-on: ubuntu-latest steps: - uses: getsentry/github-workflows/danger@17cc15eb58ea3687cd8f2714a4192dcee4aa09ef with: diff --git a/.github/workflows/ready-to-merge-workflow.yml b/.github/workflows/ready-to-merge-workflow.yml index b0d401ae14..48fcb7e1f2 100644 --- a/.github/workflows/ready-to-merge-workflow.yml +++ b/.github/workflows/ready-to-merge-workflow.yml @@ -14,7 +14,7 @@ on: jobs: ready-to-merge-gate: name: 'Missing "ready-to-merge" label' - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + runs-on: ubuntu-latest steps: - name: Check for exact 'ready-to-merge' label if: ${{ inputs.is-pr }} diff --git a/.github/workflows/update-deps.yml b/.github/workflows/update-deps.yml index 700b101cee..ec4199a2fd 100644 --- a/.github/workflows/update-deps.yml +++ b/.github/workflows/update-deps.yml @@ -11,7 +11,7 @@ on: jobs: android: - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + runs-on: ubuntu-latest steps: - uses: getsentry/github-workflows/updater@v3 with: @@ -20,7 +20,7 @@ jobs: ssh-key: ${{ secrets.CI_DEPLOY_KEY }} android-stubs: - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + runs-on: ubuntu-latest steps: - uses: getsentry/github-workflows/updater@v3 with: @@ -29,7 +29,7 @@ jobs: ssh-key: ${{ secrets.CI_DEPLOY_KEY }} cocoa: - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + runs-on: ubuntu-latest steps: - uses: getsentry/github-workflows/updater@v3 with: @@ -38,7 +38,7 @@ jobs: ssh-key: ${{ secrets.CI_DEPLOY_KEY }} javascript: - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + runs-on: ubuntu-latest steps: - uses: getsentry/github-workflows/updater@v3 with: @@ -47,7 +47,7 @@ jobs: ssh-key: ${{ secrets.CI_DEPLOY_KEY }} wizard: - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + runs-on: ubuntu-latest steps: - uses: getsentry/github-workflows/updater@v3 with: @@ -57,7 +57,7 @@ jobs: ssh-key: ${{ secrets.CI_DEPLOY_KEY }} cli: - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + runs-on: ubuntu-latest steps: - uses: getsentry/github-workflows/updater@v3 with: @@ -66,7 +66,7 @@ jobs: ssh-key: ${{ secrets.CI_DEPLOY_KEY }} bundler-plugins: - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + runs-on: ubuntu-latest steps: - uses: getsentry/github-workflows/updater@v3 with: @@ -75,7 +75,7 @@ jobs: ssh-key: ${{ secrets.CI_DEPLOY_KEY }} sample-rn: - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + runs-on: ubuntu-latest steps: - uses: getsentry/github-workflows/updater@v3 with: @@ -86,7 +86,7 @@ jobs: ssh-key: ${{ secrets.CI_DEPLOY_KEY }} maestro: - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + runs-on: ubuntu-latest steps: - uses: getsentry/github-workflows/updater@v3 with: @@ -97,7 +97,7 @@ jobs: ssh-key: ${{ secrets.CI_DEPLOY_KEY }} sentry-android-gradle-plugin: - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + runs-on: ubuntu-latest steps: - uses: getsentry/github-workflows/updater@v3 with: From aaa3ffe1f0483fdfc47e76e357fd17fb33c34a34 Mon Sep 17 00:00:00 2001 From: Alexander Pantiukhov Date: Thu, 26 Feb 2026 10:58:56 +0100 Subject: [PATCH 12/18] Runner group changes --- .github/workflows/buildandtest.yml | 14 +++++++------- .github/workflows/codegen.yml | 2 +- .github/workflows/e2e-v2.yml | 2 +- .github/workflows/native-tests.yml | 4 ++-- .github/workflows/release.yml | 2 +- .github/workflows/sample-application.yml | 4 ++-- 6 files changed, 14 insertions(+), 14 deletions(-) diff --git a/.github/workflows/buildandtest.yml b/.github/workflows/buildandtest.yml index db4fb72557..10506140d9 100644 --- a/.github/workflows/buildandtest.yml +++ b/.github/workflows/buildandtest.yml @@ -17,7 +17,7 @@ jobs: job_test: name: Test - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:10"] needs: [diff_check] if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} steps: @@ -36,7 +36,7 @@ jobs: job_lint: name: Lint - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:10"] needs: [diff_check] if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} steps: @@ -98,7 +98,7 @@ jobs: job_check_integrity: name: Check package integrity - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:10"] needs: [diff_check] if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} steps: @@ -122,7 +122,7 @@ jobs: job_build: name: Build - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:10"] needs: [diff_check] if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} steps: @@ -164,7 +164,7 @@ jobs: job_type_check: name: Type Check Typescript 3.8 - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:10"] needs: [job_build, diff_check] if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} env: @@ -197,7 +197,7 @@ jobs: run: yarn type-check job_circular_dep_check: name: Circular Dependency Check - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:10"] needs: [job_build, diff_check] if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} steps: @@ -226,7 +226,7 @@ jobs: job_bundle: name: Bundle - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:10"] needs: [job_test, job_build, diff_check] if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} strategy: diff --git a/.github/workflows/codegen.yml b/.github/workflows/codegen.yml index 875c751dc3..6d3bc6be6f 100644 --- a/.github/workflows/codegen.yml +++ b/.github/workflows/codegen.yml @@ -16,7 +16,7 @@ jobs: uses: ./.github/workflows/skip-ci.yml codegen: - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:10"] needs: [diff_check] if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} strategy: diff --git a/.github/workflows/e2e-v2.yml b/.github/workflows/e2e-v2.yml index 61bb26c44d..8b9c6dd609 100644 --- a/.github/workflows/e2e-v2.yml +++ b/.github/workflows/e2e-v2.yml @@ -332,7 +332,7 @@ jobs: include: - platform: ios rn-version: '0.84.0' - runs-on: ["ghcr.io/cirruslabs/macos-tahoe-xcode:26.2.0", "runner_group_id:12"] + runs-on: ["ghcr.io/cirruslabs/macos-tahoe-xcode:26.2.0", "runner_group_id:10"] - platform: android runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:10"] diff --git a/.github/workflows/native-tests.yml b/.github/workflows/native-tests.yml index 3e2e42783d..60f1afd8c6 100644 --- a/.github/workflows/native-tests.yml +++ b/.github/workflows/native-tests.yml @@ -26,7 +26,7 @@ jobs: test-ios: name: ios - runs-on: ["ghcr.io/cirruslabs/macos-tahoe-xcode:26.2.0", "runner_group_id:12"] + runs-on: ["ghcr.io/cirruslabs/macos-tahoe-xcode:26.2.0", "runner_group_id:10"] needs: [diff_check] if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} steps: @@ -97,7 +97,7 @@ jobs: test-android: name: android - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:10"] needs: [diff_check] if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} steps: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 0c26f6a86d..4f8e04a7c1 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -18,7 +18,7 @@ permissions: jobs: release: - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:10"] name: Release a new version steps: - name: Get auth token diff --git a/.github/workflows/sample-application.yml b/.github/workflows/sample-application.yml index 33c5f39762..fe0f129dfc 100644 --- a/.github/workflows/sample-application.yml +++ b/.github/workflows/sample-application.yml @@ -215,13 +215,13 @@ jobs: matrix: include: - platform: ios - runs-on: ["ghcr.io/cirruslabs/macos-tahoe-xcode:26.2.0", "runner_group_id:12"] + runs-on: ["ghcr.io/cirruslabs/macos-tahoe-xcode:26.2.0", "runner_group_id:10"] rn-architecture: 'new' ios-use-frameworks: 'no-frameworks' build-type: 'production' - platform: android - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:12"] + runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:10"] rn-architecture: 'new' build-type: 'production' From 5d0d21a3ebd181d8bce8e3bc63e6f03ab8174e0c Mon Sep 17 00:00:00 2001 From: Alexander Pantiukhov Date: Thu, 26 Feb 2026 11:26:19 +0100 Subject: [PATCH 13/18] sample-application-expo.yml and sample-application.yml are back to ubuntu runners --- .github/workflows/sample-application-expo.yml | 13 ++++++----- .github/workflows/sample-application.yml | 22 ++++++++++--------- 2 files changed, 19 insertions(+), 16 deletions(-) diff --git a/.github/workflows/sample-application-expo.yml b/.github/workflows/sample-application-expo.yml index 0de331fb2d..5cbdf706a6 100644 --- a/.github/workflows/sample-application-expo.yml +++ b/.github/workflows/sample-application-expo.yml @@ -45,22 +45,23 @@ jobs: - platform: ios runs-on: ["ghcr.io/cirruslabs/macos-tahoe-xcode:26.2.0", "runner_group_id:10"] - platform: android - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:10"] + runs-on: ubuntu-latest - platform: web - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:10"] + runs-on: ubuntu-latest exclude: - platform: 'android' ios-use-frameworks: 'dynamic-frameworks' steps: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 + - name: Enable Corepack (NPM) + if: ${{ matrix.platform != 'ios' }} + run: npm i -g corepack + - name: Enable Corepack + if: ${{ matrix.platform == 'ios' }} run: corepack enable - - name: Install Ninja - if: ${{ matrix.platform == 'android' }} - run: sudo apt-get update && sudo apt-get install -y ninja-build - - uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6 with: package-manager-cache: false diff --git a/.github/workflows/sample-application.yml b/.github/workflows/sample-application.yml index fe0f129dfc..d02ef28691 100644 --- a/.github/workflows/sample-application.yml +++ b/.github/workflows/sample-application.yml @@ -56,7 +56,7 @@ jobs: - platform: macos runs-on: ["ghcr.io/cirruslabs/macos-sequoia-xcode:16.4", "runner_group_id:10"] - platform: android - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:10"] + runs-on: ubuntu-latest exclude: - platform: 'android' ios-use-frameworks: 'dynamic-frameworks' @@ -69,13 +69,14 @@ jobs: steps: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 + - name: Enable Corepack (NPM) + if: ${{ matrix.platform != 'ios' }} + run: npm i -g corepack + - name: Enable Corepack + if: ${{ matrix.platform == 'ios' }} run: corepack enable - - name: Install Ninja - if: ${{ matrix.platform == 'android' }} - run: sudo apt-get update && sudo apt-get install -y ninja-build - - uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6 with: package-manager-cache: false @@ -221,7 +222,7 @@ jobs: build-type: 'production' - platform: android - runs-on: ["ghcr.io/cirruslabs/ubuntu-runner-amd64:24.04", "runner_group_id:10"] + runs-on: ubuntu-latest rn-architecture: 'new' build-type: 'production' @@ -233,10 +234,6 @@ jobs: with: version: ${{env.MAESTRO_VERSION}} - - name: Install Ninja - if: ${{ matrix.platform == 'android' }} - run: sudo apt-get update && sudo apt-get install -y ninja-build - - name: Download iOS App Archive if: ${{ matrix.platform == 'ios' }} uses: actions/download-artifact@v7 @@ -263,7 +260,12 @@ jobs: unzip ${{ env.ANDROID_APP_ARCHIVE_PATH }} rm app-androidTest.apk + - name: Enable Corepack (NPM) + if: ${{ matrix.platform != 'ios' }} + run: npm i -g corepack + - name: Enable Corepack + if: ${{ matrix.platform == 'ios' }} run: corepack enable - uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6 From ae4915361bee02ae7c50fda1c798a3b6a8337577 Mon Sep 17 00:00:00 2001 From: Alexander Pantiukhov Date: Thu, 26 Feb 2026 11:41:54 +0100 Subject: [PATCH 14/18] Small fix --- .github/workflows/sample-application-expo.yml | 4 ++-- .github/workflows/sample-application.yml | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/sample-application-expo.yml b/.github/workflows/sample-application-expo.yml index 5cbdf706a6..93f441bbc4 100644 --- a/.github/workflows/sample-application-expo.yml +++ b/.github/workflows/sample-application-expo.yml @@ -55,11 +55,11 @@ jobs: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 - name: Enable Corepack (NPM) - if: ${{ matrix.platform != 'ios' }} + if: ${{ matrix.platform == 'android' }} run: npm i -g corepack - name: Enable Corepack - if: ${{ matrix.platform == 'ios' }} + if: ${{ matrix.platform != 'android' }} run: corepack enable - uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6 diff --git a/.github/workflows/sample-application.yml b/.github/workflows/sample-application.yml index d02ef28691..9b64df36cf 100644 --- a/.github/workflows/sample-application.yml +++ b/.github/workflows/sample-application.yml @@ -70,11 +70,11 @@ jobs: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 - name: Enable Corepack (NPM) - if: ${{ matrix.platform != 'ios' }} + if: ${{ matrix.platform == 'android' }} run: npm i -g corepack - name: Enable Corepack - if: ${{ matrix.platform == 'ios' }} + if: ${{ matrix.platform != 'android' }} run: corepack enable - uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6 @@ -261,11 +261,11 @@ jobs: rm app-androidTest.apk - name: Enable Corepack (NPM) - if: ${{ matrix.platform != 'ios' }} + if: ${{ matrix.platform == 'android' }} run: npm i -g corepack - name: Enable Corepack - if: ${{ matrix.platform == 'ios' }} + if: ${{ matrix.platform != 'android' }} run: corepack enable - uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6 From 40d1d22326c7e6365af3ca5c81de7a6f1f6f817c Mon Sep 17 00:00:00 2001 From: Alexander Pantiukhov Date: Thu, 26 Feb 2026 13:25:26 +0100 Subject: [PATCH 15/18] Small fix (2) --- .github/workflows/sample-application-expo.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/sample-application-expo.yml b/.github/workflows/sample-application-expo.yml index 93f441bbc4..5cbdf706a6 100644 --- a/.github/workflows/sample-application-expo.yml +++ b/.github/workflows/sample-application-expo.yml @@ -55,11 +55,11 @@ jobs: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 - name: Enable Corepack (NPM) - if: ${{ matrix.platform == 'android' }} + if: ${{ matrix.platform != 'ios' }} run: npm i -g corepack - name: Enable Corepack - if: ${{ matrix.platform != 'android' }} + if: ${{ matrix.platform == 'ios' }} run: corepack enable - uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6 From 171b87a8c7db6fcfc939a973bf9f5c792b00f422 Mon Sep 17 00:00:00 2001 From: Alexander Pantiukhov Date: Thu, 26 Feb 2026 13:33:15 +0100 Subject: [PATCH 16/18] Build and Test step fix --- .github/workflows/buildandtest.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/buildandtest.yml b/.github/workflows/buildandtest.yml index 10506140d9..3893cfc52e 100644 --- a/.github/workflows/buildandtest.yml +++ b/.github/workflows/buildandtest.yml @@ -89,7 +89,9 @@ jobs: # Dynamically determine the path from the swift binary location SWIFT_BIN=$(which swift) SWIFT_TOOLCHAIN=$(dirname $(dirname "$SWIFT_BIN")) - echo "LINUX_SOURCEKIT_LIB_PATH=${SWIFT_TOOLCHAIN}/lib/swift/linux" >> $GITHUB_ENV + # Temp solution (todo(alwx): remove) + find "${SWIFT_TOOLCHAIN}" -name "libsourcekitdInProc.so" 2>/dev/null + echo "LINUX_SOURCEKIT_LIB_PATH=${SWIFT_TOOLCHAIN}/lib" >> $GITHUB_ENV - name: Lint run: | From e1c20c343cfa175b61b95633bb0285f0f9b506ea Mon Sep 17 00:00:00 2001 From: Alexander Pantiukhov Date: Thu, 26 Feb 2026 16:50:18 +0100 Subject: [PATCH 17/18] Swiftly update --- .github/workflows/buildandtest.yml | 4 ++-- .swiftlint.yml | 4 ++-- scripts/swiftlint.sh | 8 ++++---- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/buildandtest.yml b/.github/workflows/buildandtest.yml index 3893cfc52e..807327eaac 100644 --- a/.github/workflows/buildandtest.yml +++ b/.github/workflows/buildandtest.yml @@ -81,8 +81,8 @@ jobs: . "${SWIFTLY_HOME_DIR:-$HOME/.local/share/swiftly}/env.sh" hash -r - # Install Swift 5.10 (compatible with SwiftLint 0.61.0) - swiftly install 5.10 + # Install Swift 6.0 (compatible with SwiftLint 0.63.2) + swiftly install 6.0 swift --version # Export Swift toolchain path for SwiftLint's SourceKit diff --git a/.swiftlint.yml b/.swiftlint.yml index efdb728bf9..67291fe397 100755 --- a/.swiftlint.yml +++ b/.swiftlint.yml @@ -50,13 +50,13 @@ only_rules: - number_separator - opening_brace - operator_usage_whitespace - - operator_whitespace + - function_name_whitespace - overridden_super_call - private_outlet - private_unit_test - prohibited_super_call - redundant_nil_coalescing - - redundant_optional_initialization + - implicit_optional_initialization - redundant_string_enum_value - redundant_void_return - return_arrow_whitespace diff --git a/scripts/swiftlint.sh b/scripts/swiftlint.sh index bd0cb23f3f..cce2bc42d4 100755 --- a/scripts/swiftlint.sh +++ b/scripts/swiftlint.sh @@ -21,10 +21,10 @@ if [ -z "$SWIFT_PATH" ]; then exit 1 fi -LINUX_BIN="https://github.com/realm/SwiftLint/releases/download/0.61.0/swiftlint_linux_amd64.zip" -LINUX_SHA="sha256:02f4f580bbb27fb618dbfa24ce2f14c926461c85c26941289f58340151b63ae4" -DARWIN_BIN="https://github.com/realm/SwiftLint/releases/download/0.61.0/portable_swiftlint.zip" -DARWIN_SHA="sha256:2342f3784307a02117e18f745fcd350c6acc6cab0e521c0c0e01c32a53a3b274" +LINUX_BIN="https://github.com/realm/SwiftLint/releases/download/0.63.2/swiftlint_linux_amd64.zip" +LINUX_SHA="sha256:dd1017cfd20a1457f264590bcb5875a6ee06cd75b9a9d4f77cd43a552499143b" +DARWIN_BIN="https://github.com/realm/SwiftLint/releases/download/0.63.2/portable_swiftlint.zip" +DARWIN_SHA="sha256:c59a405c85f95b92ced677a500804e081596a4cae4a6a485af76065557d6ed29" if [[ "$OSTYPE" == "darwin"* ]]; then EXPECTED_SHA="$DARWIN_SHA" From f02d8d2b470e8e7409e8dad7d68705a91981d95a Mon Sep 17 00:00:00 2001 From: Alexander Pantiukhov Date: Thu, 26 Feb 2026 17:58:57 +0100 Subject: [PATCH 18/18] Swiftly update --- .github/workflows/buildandtest.yml | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/.github/workflows/buildandtest.yml b/.github/workflows/buildandtest.yml index 807327eaac..ad81491e2b 100644 --- a/.github/workflows/buildandtest.yml +++ b/.github/workflows/buildandtest.yml @@ -70,7 +70,7 @@ jobs: run: | # Install Swift dependencies first sudo apt-get update - sudo apt-get -y install libcurl4-openssl-dev libz3-dev + sudo apt-get -y install libcurl4-openssl-dev libz3-dev libncurses-dev libedit-dev libxml2-dev ARCH=$(uname -m) SWIFTLY_FILE="swiftly-${ARCH}.tar.gz" @@ -86,12 +86,15 @@ jobs: swift --version # Export Swift toolchain path for SwiftLint's SourceKit - # Dynamically determine the path from the swift binary location SWIFT_BIN=$(which swift) SWIFT_TOOLCHAIN=$(dirname $(dirname "$SWIFT_BIN")) - # Temp solution (todo(alwx): remove) - find "${SWIFT_TOOLCHAIN}" -name "libsourcekitdInProc.so" 2>/dev/null - echo "LINUX_SOURCEKIT_LIB_PATH=${SWIFT_TOOLCHAIN}/lib" >> $GITHUB_ENV + SOURCEKIT_PATH=$(find "${SWIFT_TOOLCHAIN}" -name "libsourcekitdInProc.so" -print -quit 2>/dev/null) + if [ -n "$SOURCEKIT_PATH" ]; then + echo "LINUX_SOURCEKIT_LIB_PATH=$(dirname "$SOURCEKIT_PATH")" >> $GITHUB_ENV + else + echo "ERROR: libsourcekitdInProc.so not found under ${SWIFT_TOOLCHAIN}" + exit 1 + fi - name: Lint run: |