From b1d5ab1b990f9fe72c7777c5ba6318ab2de9f49e Mon Sep 17 00:00:00 2001 From: Anurag Rajawat Date: Wed, 22 Apr 2026 12:23:56 +0530 Subject: [PATCH 1/2] chore: Cherry-picked changes from upstream Signed-off-by: Anurag Rajawat --- .github/workflows/e2e.yml | 50 +++++++++++++++------------------------ README.md | 12 +++++----- package-lock.json | 38 ++++++++++++++++++++++------- package.json | 2 +- 4 files changed, 55 insertions(+), 47 deletions(-) diff --git a/.github/workflows/e2e.yml b/.github/workflows/e2e.yml index 8bd2dfd..86f5a7c 100644 --- a/.github/workflows/e2e.yml +++ b/.github/workflows/e2e.yml @@ -5,40 +5,28 @@ on: - main pull_request: -jobs: - versions-macOS-15: - name: macOS 15 - runs-on: macos-15 - strategy: - matrix: - xcode-version: ['16.0', '16.4', '26.0.1', '26.2', latest, latest-stable] - fail-fast: false - steps: - - name: Harden the runner (Audit all outbound calls) - uses: step-security/harden-runner@20cf305ff2072d973412fa9b1e3a4f227bda3c76 # v2.14.0 - with: - egress-policy: audit - - - name: Checkout - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 +permissions: + contents: read - - uses: ./ - name: Setup Xcode - id: setup-xcode - with: - xcode-version: ${{ matrix.xcode-version }} - - name: Print output variables - run: | - echo "Version: ${{ steps.setup-xcode.outputs.version }}" - echo "Path: ${{ steps.setup-xcode.outputs.path }}" - - versions-macOS-14: - name: macOS 14 - runs-on: macos-14 +jobs: + versions: + name: ${{ matrix.runner }} / ${{ matrix.xcode-version }} + runs-on: ${{ matrix.runner }} strategy: matrix: - # https://github.com/actions/runner-images/blob/main/images/macos/macos-14-Readme.md#xcode - xcode-version: ['16.2', '15.2', '15.3', latest, latest-stable] + runner: [macos-15, macos-26] + xcode-version: [latest, latest-stable] + include: + # https://github.com/actions/runner-images/blob/main/images/macos/macos-15-Readme.md#xcode + - runner: macos-15 + xcode-version: '16.2' + - runner: macos-15 + xcode-version: '16.4' + # https://github.com/actions/runner-images/blob/main/images/macos/macos-26-Readme.md#xcode + - runner: macos-26 + xcode-version: '26.2' + - runner: macos-26 + xcode-version: '26.3' fail-fast: false steps: - name: Harden the runner (Audit all outbound calls) diff --git a/README.md b/README.md index e1944ee..7888e89 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ The list of all available versions can be found in [runner-images](https://githu **Notes:** - `latest-stable` points to the latest stable version of Xcode - `latest` *includes* beta releases that GitHub actions has installed -- SemVer examples: `14`, `14.1`, `14.3.1`, `^14.3.0` (find more examples in [SemVer cheatsheet](https://devhints.io/semver)) +- SemVer examples: `16`, `16.4`, `26.3`, `^16.2.0` (find more examples in [SemVer cheatsheet](https://devhints.io/semver)) - `-beta` suffix after SemVer will only select among beta releases that GitHub actions has installed - If sets a specific version, wraps it to single quotes in YAML like `'12.0'` to pass it as string because GitHub trimmes trailing `.0` from numbers @@ -45,22 +45,22 @@ Set the specific stable version of Xcode: ``` jobs: build: - runs-on: macos-13 + runs-on: macos-15 steps: - uses: step-security/setup-xcode@v1 with: - xcode-version: '14.3.1' + xcode-version: '16.4' ``` -Set the specific beta version of Xcode: +Set a specific Xcode version on `macos-26`: ``` jobs: build: - runs-on: macos-13 + runs-on: macos-26 steps: - uses: step-security/setup-xcode@v1 with: - xcode-version: '15.0-beta' + xcode-version: '26.3' ``` # License The scripts and documentation in this project are released under the [MIT License](LICENSE) diff --git a/package-lock.json b/package-lock.json index b54e3c1..6e7f190 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,7 +16,7 @@ }, "devDependencies": { "@types/jest": "^29.5.5", - "@types/node": "^20.6.3", + "@types/node": "^24.0.0", "@types/plist": "^3.0.2", "@types/semver": "^7.5.2", "@typescript-eslint/eslint-plugin": "^6.7.2", @@ -1176,10 +1176,14 @@ "dev": true }, "node_modules/@types/node": { - "version": "20.6.3", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.6.3.tgz", - "integrity": "sha512-HksnYH4Ljr4VQgEy2lTStbCKv/P590tmPe5HqOnv9Gprffgv5WXAY+Y5Gqniu0GGqeTCUdBnzC3QSrzPkBkAMA==", - "dev": true + "version": "24.12.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.12.2.tgz", + "integrity": "sha512-A1sre26ke7HDIuY/M23nd9gfB+nrmhtYyMINbjI1zHJxYteKR6qSMX56FsmjMcDb3SMcjJg5BiRRgOCC/yBD0g==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~7.16.0" + } }, "node_modules/@types/plist": { "version": "3.0.2", @@ -5207,6 +5211,13 @@ "node": ">=14.17" } }, + "node_modules/undici-types": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz", + "integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==", + "dev": true, + "license": "MIT" + }, "node_modules/uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", @@ -6249,10 +6260,13 @@ "dev": true }, "@types/node": { - "version": "20.6.3", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.6.3.tgz", - "integrity": "sha512-HksnYH4Ljr4VQgEy2lTStbCKv/P590tmPe5HqOnv9Gprffgv5WXAY+Y5Gqniu0GGqeTCUdBnzC3QSrzPkBkAMA==", - "dev": true + "version": "24.12.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.12.2.tgz", + "integrity": "sha512-A1sre26ke7HDIuY/M23nd9gfB+nrmhtYyMINbjI1zHJxYteKR6qSMX56FsmjMcDb3SMcjJg5BiRRgOCC/yBD0g==", + "dev": true, + "requires": { + "undici-types": "~7.16.0" + } }, "@types/plist": { "version": "3.0.2", @@ -9038,6 +9052,12 @@ "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==", "dev": true }, + "undici-types": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz", + "integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==", + "dev": true + }, "uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", diff --git a/package.json b/package.json index 8f94481..48383df 100644 --- a/package.json +++ b/package.json @@ -30,7 +30,7 @@ }, "devDependencies": { "@types/jest": "^29.5.5", - "@types/node": "^20.6.3", + "@types/node": "^24.0.0", "@types/plist": "^3.0.2", "@types/semver": "^7.5.2", "@typescript-eslint/eslint-plugin": "^6.7.2", From 4603da00072d56a0ae06efb955e3bf721ac98a10 Mon Sep 17 00:00:00 2001 From: Anurag Rajawat Date: Wed, 22 Apr 2026 12:32:35 +0530 Subject: [PATCH 2/2] docs: update code block syntax in README to YAML --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 7888e89..0213a84 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,7 @@ The list of all available versions can be found in [runner-images](https://githu # Usage Set the latest stable Xcode version: -``` +```yaml jobs: build: runs-on: macos-latest @@ -31,7 +31,7 @@ jobs: ``` Set the latest Xcode version including beta releases: -``` +```yaml jobs: build: runs-on: macos-latest @@ -42,7 +42,7 @@ jobs: ``` Set the specific stable version of Xcode: -``` +```yaml jobs: build: runs-on: macos-15 @@ -53,7 +53,7 @@ jobs: ``` Set a specific Xcode version on `macos-26`: -``` +```yaml jobs: build: runs-on: macos-26