Skip to content

chore: default deployment target to iOS 15.0, keep 14.0 for release builds - #95

Merged
gmegidish merged 1 commit into
mainfrom
chore/deployment-target-15
Oct 1, 2026
Merged

gmegidish merged 1 commit into
mainfrom
chore/deployment-target-15

Conversation

@gmegidish

Copy link
Copy Markdown
Member

Why

Xcode 27 only accepts deployment targets from iOS 15.0, so make sim-install and every other local build failed on main with IPHONEOS_DEPLOYMENT_TARGET is set to 14.0 unless you passed an override by hand.

What

  • Project: IPHONEOS_DEPLOYMENT_TARGET goes from 14.0 to 15.0 in all 4 build configurations, so local builds work out of the box.
  • Makefile: a new optional IPHONEOS_DEPLOYMENT_TARGET variable. When set, ipa-unsigned, sim-zip-arm64 and sim-zip-x86_64 pass it to xcodebuild; when unset, nothing changes.
  • Workflow: the build-ipa and build-sim steps set IPHONEOS_DEPLOYMENT_TARGET: "14.0", so released IPAs and simulator zips still support iOS 14 (chore: restore iOS 14 deployment target #75, fix: mirror swift concurrency runtime into runner below ios 15 #76).
  • README: the "Building with Newer Xcode" section now describes this setup instead of the manual override.

Test plan

  • make clean && make sim-install on Xcode 27.1 with no override: builds and installs
  • make -n: the setting is left out when unset, and passed to all 3 release targets when it is 14.0
  • CI: the build-ipa and build-sim jobs succeed with 14.0 on macos-latest

Note: this depends on the Xcode on macos-latest still accepting 14.0. If that runner image moves to Xcode 27, the release builds will need a pinned Xcode or will have to drop iOS 14.

…uilds

Xcode 27 rejects 14.0, so every local build needed a manual override.
The project now targets 15.0; the build workflow sets
IPHONEOS_DEPLOYMENT_TARGET=14.0, which ipa-unsigned and sim-zip pass to
xcodebuild, so published artifacts keep supporting iOS 14.
@coderabbitai

coderabbitai Bot commented Oct 1, 2026

Copy link
Copy Markdown

Warning

Review limit reached

  • Run on-demand review

This review includes 4 billable files and costs up to $1.00.

  • Ask an admin to make reviews automatic

Open in CodeRabbit

Reviews can continue after your included limit without a manual trigger. An admin must approve usage-based billing.

Or wait 26 minutes for your next included review.

Check out review usage here.

View limit details

Limit details: You’ve used all 2 included reviews currently available. Your 56 included PR review attempts over the past 7 days set your current allowance at 2 reviews per hour.

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Essentials

Run ID: 17e430ab-0be7-4373-b269-8bf36add2381

📥 Commits

Reviewing files that changed from the base of the PR and between 5d72265 and 3e970ba.

📒 Files selected for processing (4)
  • .github/workflows/build.yml
  • Makefile
  • README.md
  • devicekit-ios.xcodeproj/project.pbxproj

Comment @coderabbitai help to get the list of available commands.

@gmegidish

Copy link
Copy Markdown
Member Author

@hakanor I have changed the default to 15.0 with github building it for 14.0. Otherwise you cannot use local xcode 27.0 to compile this anymore, and it's annoying :).

@gmegidish
gmegidish merged commit e3c3334 into main Oct 1, 2026
5 checks passed
@gmegidish
gmegidish deleted the chore/deployment-target-15 branch October 1, 2026 08:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant