Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion .github/file-filters.yml
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,6 @@ run_api_stability_for_prs: &run_api_stability_for_prs

# API files
- "sdk_api.json"
- "sdk_api_v9.json"

# Build configuration
- "Makefile"
Expand Down
25 changes: 6 additions & 19 deletions .github/workflows/api-stability.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,13 +34,10 @@ jobs:
filters: .github/file-filters.yml

api-stability:
name: Check API Stability (${{ matrix.version }})
name: Check API Stability
if: needs.files-changed.outputs.run_api_stability_for_prs == 'true'
needs: files-changed
runs-on: macos-15
strategy:
matrix:
version: [default, v9]
steps:
- name: Checkout code
uses: actions/checkout@v5
Expand All @@ -49,21 +46,15 @@ jobs:

- name: Generate HEAD SDK
run: |
if [ "${{ matrix.version }}" = "v9" ]; then
mv sdk_api_v9.json sdk_api_base.json
./scripts/update-api.sh V9
mv sdk_api_v9.json sdk_api.json
else
mv sdk_api.json sdk_api_base.json
./scripts/update-api.sh
fi
mv sdk_api.json sdk_api_base.json
./scripts/update-api.sh

- name: Diagnose breaking changes
run: |
if diff -q "sdk_api_base.json" "sdk_api.json" > /dev/null; then
echo "No API changes detected for ${{ matrix.version }} version."
echo "No API changes detected."
else
echo "❌ Public API changes are detected for ${{ matrix.version }} version. If they're intended run "make generate-public-api" and commit the changes."
echo "❌ Public API changes are detected. If they're intended run "make generate-public-api" and commit the changes."
diff "sdk_api_base.json" "sdk_api.json" || true
xcrun --sdk iphoneos swift-api-digester \
-diagnose-sdk \
Expand All @@ -84,11 +75,7 @@ jobs:
# So, we don't have to run API stability checks, for example, for Changelog or ReadMe changes.

api-stability-required-check:
needs:
[
files-changed,
api-stability,
]
needs: [files-changed, api-stability]
name: API Stability
# This is necessary since a failed/skipped dependent job would cause this job to be skipped
if: always()
Expand Down
21 changes: 6 additions & 15 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -212,15 +212,6 @@ jobs:
include:
# We are running tests on iOS 17 and later, as there were OS-internal changes introduced in succeeding versions.

# iOS 16
- name: iOS 16 Sentry
runs-on: macos-13
platform: "iOS"
xcode: "14.3.1"
test-destination-os: "16.4"
device: "iPhone 14 Pro"
scheme: "Sentry"

# iOS 17
- name: iOS 17 Sentry
runs-on: macos-14
Expand All @@ -243,8 +234,8 @@ jobs:
- name: iOS 26 Sentry
runs-on: macos-26
platform: "iOS"
xcode: "26.1"
test-destination-os: "26.1"
xcode: "26.2"
test-destination-os: "26.2"
device: "iPhone 17 Pro"
scheme: "Sentry"

Expand Down Expand Up @@ -272,8 +263,8 @@ jobs:
- name: macOS 26 Sentry
runs-on: macos-26
platform: "macOS"
xcode: "26.1"
test-destination-os: "26.1"
xcode: "26.2"
test-destination-os: "26.2"
scheme: "Sentry"

# Catalyst. We test the latest version, as the risk something breaking on Catalyst and not
Expand Down Expand Up @@ -328,8 +319,8 @@ jobs:
- name: tvOS 26 Sentry
runs-on: macos-26
platform: "tvOS"
xcode: "26.1"
test-destination-os: "26.1"
xcode: "26.2"
test-destination-os: "26.2"
device: "Apple TV"
scheme: "Sentry"

Expand Down
12 changes: 1 addition & 11 deletions .github/workflows/ui-tests-critical.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,16 +51,6 @@ jobs:
fail-fast: false
matrix:
include:
# As of 25th March 2025, the preinstalled iOS simulator version is 16.4 for macOS 13 and Xcode 14.3.1; see
# https://github.com/actions/runner-images/blob/main/images/macos/macos-13-Readme.md#installed-sdks
- name: iOS 16
platform:
runs-on: macos-13
xcode: "14.3.1"
platform: "iOS"
device: "iPhone 14 Pro"
test-destination-os: "16.4"

# macos-14 iOS 17 not included due to the XCUIServerNotFound errors causing flaky tests

# As of 14th August 2025, the preinstalled iOS simulator version is 18.4 for macOS 15 and Xcode 16.4; see
Expand All @@ -76,7 +66,7 @@ jobs:
- name: iOS 26
platform:
runs-on: macos-15
xcode: "26.1"
xcode: "26.1.1"
platform: "iOS"
device: "iPhone 16 Pro"
test-destination-os: "26.1"
Expand Down
9 changes: 2 additions & 7 deletions .github/workflows/ui-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -80,11 +80,6 @@ jobs:
fail-fast: false
matrix:
include:
- name: iOS 16
runs-on: macos-13
xcode: "14.3.1"
device: iPhone 14 Pro
test-destination-os: "16.4"
- name: iOS 17
runs-on: macos-14
xcode: "15.4"
Expand All @@ -98,7 +93,7 @@ jobs:
- name: iOS 26
runs-on: macos-15
platform: "iOS"
xcode: "26.1"
xcode: "26.1.1"
device: iPhone 16 Pro
test-destination-os: "26.1"
with:
Expand Down Expand Up @@ -142,7 +137,7 @@ jobs:
ui-tests-swift,
ui-tests-swift6,
]
name: UI Tests
name: UI Tests - Check
# This is necessary since a failed/skipped dependent job would cause this job to be skipped
if: always()
runs-on: ubuntu-latest
Expand Down
1 change: 0 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,6 @@ format-yaml:

generate-public-api:
./scripts/update-api.sh
./scripts/update-api.sh V9

## Current git reference name
GIT-REF := $(shell git rev-parse --abbrev-ref HEAD)
Expand Down
Loading
Loading