Xcode 27 Is Out: Requirements, Targets, and What Broke

Xcode 27 shipped on September 14, 2026 as build 27A266a, three days after the feed’s iOS 27.0 RC item and alongside iOS 27.0 (24A437), macOS 27.0 (26A428), and the rest of the 27 platforms; App Store Connect began accepting builds made with the 27.0 GA SDKs the same day, having taken RC-SDK builds since September 9.15 It requires macOS Tahoe 26.6 or later and an Apple silicon Mac, carries Swift 6.4 and the 27 SDKs, debugs devices running iOS 17 or later, and raises three deployment floors: macOS 12, watchOS 9, and DriverKit 21.23 For existing projects it brings three hard failures (the @State macro, an SE-0508 source break, and the -ld64 linker flag), one dependency-scan rule that may error, one silent change to ARCHS_STANDARD, and two warnings; I run every one of them below on 27A266a.246

TL;DR

  • Dates and builds. Apple’s releases feed lists Xcode 27 (27A266a) and all six 27.0 operating systems on Monday, September 14; its “iOS 27.0 RC (24A437)” item carries a Friday, September 11 date, two days after App Store Connect began taking RC-SDK uploads, and the GA carries the same build number.15 App Store Connect’s own release notes for September 14 say you can now upload apps built with Xcode 27 for the store and for TestFlight.5
  • Requirements and floors moved. Xcode 26.6 ran on macOS 26.2 and debugged iOS 15 devices; Xcode 27 needs macOS 26.6, runs only on Apple silicon, and debugs iOS 17, tvOS 17, and watchOS 10 or later, in the simulator as well as on hardware. Minimum deployment targets rise from macOS 11 to 12, watchOS 8 to 9, and DriverKit 20 to 21; iOS, iPadOS, and tvOS stay at 15, visionOS at 1.23
  • Three hard failures. The @State macro: Apple’s own example, an initializer that assigns a @State property carrying a declaration-site value before the other stored properties, fails with variable 'self.title' used before being initialized; a computed property with an array or dictionary literal initial value and an init accessor fails to compile when the getter comes first, a source break Apple attributes to SE-0508; and the -ld64 linker flag, which Xcode 15 documented, fails the link with ld: library 'd64' not found.2468
  • Four changes that warn, may error, or say nothing. The linker ignores -ld_classic with a warning because ld64 is gone; duplicate Clang module names within one dependency scan “may report an error”; a macOS-only target set to 27.0 builds arm64 only unless you add x86_64 back, and nothing warns; and PreviewProvider carries a 27.0 deprecation with “Use #Preview instead.” while each preview modifier carries its own replacement message, none of which the compiler shows below a 27.0 deployment target.24
  • Apple has not released Xcode 27.1 as of September 15. Neither the releases feed nor the release-notes index lists it, and Apple’s iPhone Duo developer page still dates the 27.1 beta to “later this month”; the SDK gap described in my Duo developer post still stands.1 (September 17: still no 27.1, but Xcode 27.2 beta shipped on September 16 and its notes name 27.1 as the release that carries the Duo SDK; the update below has the detail.9) (September 19: Xcode 27.1 beta (27A9269) shipped on September 18 with an iOS 27.1 SDK; the second update below has its notes.10) (October 1: still only that first 27.1 beta.11) (October 11: Xcode 27.1 RC (27A9275) shipped on October 5, a release candidate rather than the release, and App Store Connect’s entry for that day reads “You can now upload apps built with Xcode 27.1 RC using the SDK for iOS 27.1, iPadOS 27.0, macOS 27.0, tvOS 27.0, visionOS 27.0, and watchOS 27.0 for the App Store, and for internal and external testing through TestFlight.”12) (October 14: Xcode 27.2 beta 3 (27B5038j) shipped; Xcode 27.1 is still at its RC and Xcode 27 is still the release; the fourth update below has the beta 3 notes.13)

Update, September 17: the 27.2 beta came first, and 27.1 has a job

Apple’s releases feed dates a full 27.2 beta wave to Wednesday, September 16: Xcode 27.2 beta (27B5019j), iOS and iPadOS 27.2 beta (24B5084k), macOS 27.2 beta (26B5086k), tvOS 27.2 beta (24K5088l), visionOS 27.2 beta (24N5088l), and watchOS 27.2 beta (24S5086l), plus a TestFlight update, and no item in the feed names 27.1.9 The Xcode 27.2 beta notes explain the gap in one sentence: “The iOS SDK and simulator support for iPhone Duo will be available later this month in an upcoming release of Xcode 27.1.” So 27.1 carries the Duo SDK, 27.2 is a separate beta with its own new features, and the beta keeps the GA floor: “Xcode 27.2 beta requires a Mac running macOS Tahoe 26.6 or later.”9

Two entries in that beta’s notes add to this post, and the simulator-runtime Known Issue quoted below, 141290052, is still open in 27.2. Under Project Format: “Xcode now supports a JSON-based project format (.xcproj) that’s more readable, merge-friendly, and easier for coding agents to edit,” enabled in the file inspector, and “Projects using .xcproj also open in earlier versions of Xcode 27.” Under SDK, a Known Issue: “macOS, watchOS, tvOS, and visionOS SDKs in Xcode 27.2 incorrectly report 27.1 as a valid deployment target,” with “unexpected behavior if this deployment target is used,” and “Mac Catalyst builds with a 27.1 or 27.2 deployment target may be unable to use newly introduced API.”9 Apple also added one Known Issue to the Xcode 27 notes themselves between my September 16 and September 17 fetches, under Enhanced Security: “Apps with Hardware-Checked Pointer Arithmetic Slice feature enabled cannot be uploaded to the App Store on macOS Tahoe 26.6 with Xcode automatic signing enabled.” The workaround is “Distribute with macOS 27 and Xcode 27 or use manual signing.” My arm64e.x1 post carries it.9 Nothing in the 27.2 beta notes touches the linker, the module-name rule, the @State macro, or the preview deprecations below; the first three live in the Xcode 27 notes and the @State entry in the iOS and iPadOS 27 notes, and the Xcode 27 entries quoted in this post read the same on September 17 as on September 15.69

Update, September 19: Xcode 27.1 beta is out, with an iOS 27.1 SDK

Apple’s releases feed dates Xcode 27.1 beta (27A9269) to Friday, September 18, two days after the 27.2 beta wave, and the Xcode release-notes index now lists three 27 entries: Xcode 27, Xcode 27.1 Beta, and Xcode 27.2 Beta.10 The 27.1 beta notes are short. Their Overview: “Xcode 27.1 beta includes Swift 6.4 and SDKs for iOS 27.1, iPadOS 27, tvOS 27, watchOS 27, macOS 27, and visionOS 27,” with the same on-device debugging floors as 27.0 and the same requirement, “a Mac running macOS Tahoe 26.6 or later.” Read that SDK list as written, with one wrinkle: the Overview puts iPadOS at 27 while App Store Connect’s line below and Apple’s API pages say iPadOS 27.1 beta, and I quote both rather than resolve it. iOS 27.1 is the release Apple’s September 16 news post says iPhone Duo “will run” when it ships on October 23.10 App Store Connect’s release notes carry the matching line for September 18, under TestFlight: “You can now submit apps built with Xcode 27.1 beta using the SDK for iOS 27.1 beta or iPadOS 27.1 beta for internal and external testing.”10 Apple also rewrote the 27.2 beta notes’ Overview between my September 17 and September 19 fetches: the sentence quoted in the update above, “The iOS SDK and simulator support for iPhone Duo will be available later this month in an upcoming release of Xcode 27.1,” is gone, and an aside in its place reads “Download Xcode 27.1 beta to get the iOS SDK and simulator support for iPhone Duo,” linking to the downloads page.10 Apple’s documentation now lists five of the iPhone Duo APIs at iOS 27.1, in beta; my Duo developer post has the names.

The 27.1 beta notes have three sections, and two of them hold Known Issues. Under Mac Catalyst: “Projects that use APIs specific to iOS 27.1 show compile errors when building for Mac Catalyst (“undeclared identifier”, “not found”, “has no member”, “cannot find”, etc).” (185924957), with the workaround “Use build-time conditionals like #if !targetEnvironment(macCatalyst) (Swift) or #if !TARGET_OS_MACCATALYST (ObjC) to isolate affected code,” and “Projects that target iOS 27.1 show no Mac Catalyst run destination available.” (187046347), with the workaround “Add a Mac Catalyst 27.0 minimum deployment in target settings.” They sit beside the 27.2 beta’s SDK Known Issue quoted in the September 17 update, 187160501, which on my reading is the same 27.1 gap seen from the macOS SDK. Under Simulator, three Known Issues: “Initial Simulator launch can take several minutes.” (187708500), “StandBy is unavailable in the iPhone Duo Simulator runtime.” (187708663), and “Running and debugging most app extensions is unavailable in the iPhone Duo Simulator runtime.” (187708767). The third section, Previews, carries one New Feature: “The canvas overrides picker now includes a Display group for previewing content on a device’s alternative display.” (182598534).10 Nothing in the 27.1 beta notes touches the linker, the module-name rule, the @State macro, or the preview deprecations below, and the Xcode 27 notes re-fetched on September 19 read the same as on September 17.10

One more date belongs in this post, from Apple’s September 9 news post on App Store submissions: “Starting April 2027, apps and games uploaded to App Store Connect need to meet the following minimum requirements: iOS and iPadOS apps must be built with the iOS 27 & iPadOS 27 SDK or later,” with tvOS, visionOS, and watchOS apps held to their 27 SDKs the same way. Apple’s Upcoming Requirements page did not list it as of September 19; its newest entry is still the April 28, 2026 floor of Xcode 26 and the 26 SDKs. So the 27 SDKs this post describes become the upload floor in April 2027.10

Update, October 1: Xcode 27.2 beta 2, and no Xcode 27.0.1

Apple’s releases feed dates Xcode 27.2 beta 2 (27B5028f) to Monday, September 28, the same day as the 27.0.1 updates for iOS, iPadOS, macOS, visionOS, and watchOS. There is no Xcode 27.0.1 in the feed: Xcode 27 (27A266a) is still the release, and the text of its notes page is identical to my September 26 copy.11 The beta 2 notes add a GetCodeCoverage MCP tool, list the first beta’s Device Hub input problems as fixed, and still send iPhone Duo work to Xcode 27.1 beta while listing two iPhone Duo known issues of their own and repeating two 27.1 beta entries quoted in the September 19 update, 185924957 and 182598534; the 27.2 post reads them entry by entry. The simulator-runtime issue quoted below, 141290052, is listed as fixed in 27.2 beta 2; Xcode 27 still lists it as a Known Issue.11

Update, October 14: Xcode 27.2 beta 3, and the Duo aside is gone

Apple’s releases feed dates Xcode 27.2 beta 3 (27B5038j) to Wednesday, October 14, the day after the fourth 27.2 betas of iOS, iPadOS, macOS, visionOS, and watchOS (tvOS had none). Xcode 27 (27A266a) is still the release, Xcode 27.1 is still at its October 5 RC, and the text of the Xcode 27 notes page is unchanged from a copy I saved on October 11.13 The beta 3 notes drop the aside that sent iPhone Duo work to Xcode 27.1 beta and put nothing in its place, so nothing says the Duo SDK moved to 27.2, and on my reading the 27.1 RC stays the Duo build; add two Interface Builder fixes for the toolchain compilation mode; move the simulator-cloning issue under a Simulator Runtimes heading with a find command as its workaround; and refile the runtime-reinstall issue, 187950199, as resolved in beta 2; the 27.2 post reads them entry by entry. The simulator-runtime issue quoted below, 141290052, a different entry, is still listed as fixed in 27.2 beta 2 and still a Known Issue on the Xcode 27 page. App Store Connect’s TestFlight entry of the same day accepts builds from 27.2 beta 3 for testing, not for the store.13

What shipped on September 14?

Item Build Feed date
Xcode 27 27A266a Mon, Sep 14, 2026
iOS 27.0 / iPadOS 27.0 24A437 Mon, Sep 14; the feed’s “iOS 27.0 RC (24A437)” item carries a Fri, Sep 11 date, and App Store Connect took RC-SDK uploads from Wed, Sep 9
macOS 27.0 26A428 Mon, Sep 14
tvOS 27.0 24J361 Mon, Sep 14
visionOS 27.0 24M362 Mon, Sep 14
watchOS 27.0 24R364 Mon, Sep 14
App Store Connect “You can now upload apps built with Xcode 27 using the SDK for iOS 27.0, iPadOS 27.0, macOS 27.0, tvOS 27.0, visionOS 27.0, and watchOS 27.0 for the App Store, and for internal and external testing through TestFlight.” Sep 14

The release notes’ Overview reads: “Xcode 27 includes Swift 6.4 and SDKs for iOS 27, iPadOS 27, tvOS 27, watchOS 27, macOS 27, and visionOS 27. Xcode 27 supports on-device debugging in iOS 17 and later, tvOS 17 and later, watchOS 10 and later, and visionOS. Xcode 27 requires a Mac running macOS Tahoe 26.6 or later.”2 On this Mac, xcodebuild -version prints Xcode 27.0 Build version 27A266a and swift --version prints Apple Swift version 6.4 (swiftlang-6.4.0.34.1 clang-2100.3.34.1).4

Timeline of the 27 cycle: iPhone Duo announced on September 9, the iOS 27.0 RC on September 11, GA on September 14, the 27.2 betas on September 16, the Xcode 27.1 beta with the iPhone Duo SDK on September 18, the Xcode 27.1 release undated, and iPhone Duo shipping on October 23 on iOS 27.1.

What do the Xcode 27 release notes contain?

The notes are one page under Xcode Release Notes on Apple’s developer documentation site, and they are long: 41 headed areas and 296 list entries, which count out to 134 new features, 134 resolved issues, 19 known issues, and 9 deprecations. Instruments carries the most entries at 60, then Device Hub at 36, Coding Intelligence at 29, Previews at 27, Previews & Playgrounds at 18, Testing at 16, and Localization at 15. The nine deprecations sit under C++ Standard Library, Device Hub, devicectl, Instruments, Intel Deprecation, Linking, On Demand Resources, Previews, and USDKit; the Linking and Intel entries are the ones that change builds, and the sections below quote them. The counts are my tally of the list items under each heading on September 26.2

What does Xcode 27 require, compared with 26.6?

Apple’s compatibility table is the document to check before upgrading a build machine. The two rows, side by side:3

Xcode 26.6 Xcode 27
macOS to run it Tahoe 26.2 to 26.x Tahoe 26.6 or later, Apple silicon only2
SDKs iOS, tvOS, watchOS, visionOS, macOS 26.5; DriverKit 25.5 iOS, tvOS, watchOS, visionOS, macOS 27; DriverKit 27
Deployment targets iOS 15, tvOS 15, watchOS 8, visionOS 1, macOS 11, DriverKit 20 iOS 15, tvOS 15, watchOS 9, visionOS 1, macOS 12, DriverKit 21
Devices you can debug iOS 15, tvOS 15, watchOS 8, visionOS 1 or later iOS 17, tvOS 17, watchOS 10, visionOS 1 or later
Simulators iOS 15, tvOS 15, watchOS 8, visionOS 1 or later iOS 17, tvOS 17, watchOS 10, visionOS 1 or later
Swift compiler 6.3 6.4 (language modes 6, 5, 4.2, 4)

Two consequences hide behind those rows. Instruments now refuses devices older than iOS 17, watchOS 10, or tvOS 17, so a profiling rig built on an old iPhone stops working before any app code does.2 And Apple scopes the Device Hub’s keyboard and pointer interactions with one sentence: “only supported on the following OS versions and newer: macOS 15.0, iOS 18.0, tvOS 18.0, watchOS 11.0, visionOS 2.0.”2

The Apple silicon requirement has no workaround for the Mac you run Xcode on, and it is old news for anyone who read the Intel post in July; the GA notes keep the July wording in full: “Xcode 27 will only install and run on Apple silicon Macs. The macOS 27 SDK supports back deploying Universal (Intel and Apple Silicon) apps to macOS 12 and later. Intel development is still possible with macOS versions that support Rosetta like macOS 27.”2 The third sentence is the workaround for the Macs you ship to, not the one you build on.

Xcode 27 changes sorted by whether they stop the build: the @State initializer order, the SE-0508 accessor order, and the -ld64 flag stop it; -ld_classic, the module-name scan rule, ARCHS_STANDARD at a 27.0 target, and the PreviewProvider modifiers do not.

What changed in the toolchain?

The linker. The GA notes say it in one sentence: “The ld64 linker has been removed and the -ld_classic option is no longer supported.”2 What that looks like on 27A266a: the toolchain’s usr/bin contains a single linker binary, ld, which reports itself as ld-27037.1 built August 25, 2026. Passing the old flag does not fail the link. With hello.c holding the one line int main(void){return 0;}, clang hello.o -o hello_classic -Xlinker -ld_classic prints ld: warning: -ld_classic is no longer supported and will be ignored, exits 0, and writes the executable. The other spelling Apple documented in Xcode 15, -ld64, fares worse:8 clang hello.c -o hello_ld64 -Wl,-ld64 fails with ld: library 'd64' not found and exits 1, because the new linker reads -ld64 as -l d64, a request for a library named d64.4 So a project that carries -ld_classic in OTHER_LDFLAGS keeps building, with a new warning on every link, and any behavior it was buying from the old linker is gone; a project that carries -ld64 stops linking, with an error that never names the linker. My ld64 post audits where those flags came from and records both runs.

The default architectures. The Intel Deprecation section states the rule: “Build targets with a min deployment target set to macOS 27.0 or DriverKit 27.0 will not build Universal by default. The ARCHS_STANDARD build setting will no longer include x86_64 when MACOSX_DEPLOYMENT_TARGET or DRIVERKIT_DEPLOYMENT_TARGET >= 27.0.”2 I reproduced it on a multiplatform project (Yawara, with SUPPORTED_PLATFORMS = iphoneos iphonesimulator macosx xros xrsimulator) with xcodebuild -showBuildSettings -sdk macosx; without the -sdk argument the project resolves no ARCHS_STANDARD at all, a wrinkle the Intel post covers. At MACOSX_DEPLOYMENT_TARGET = 26.0 the setting resolves to ARCHS_STANDARD = arm64 x86_64; at 27.0 it resolves to ARCHS_STANDARD = arm64, while ARCHS_STANDARD_64_BIT stays arm64 x86_64 in both.4 Nothing warns. If you ship Universal and raise the target, add x86_64 to ARCHS yourself.

The C++ standard library. “The minimum supported deployment target on macOS for the C++ standard library has been increased to 11.0,” and the notes list behavior changes under “Potentially breaking changes,” starting with multi{map,set}::find no longer necessarily returning the first matching element.2 The new-feature list is long: hashing for std::chrono values, zip, std::optional<T&>, std::views::indices(n), and more.2

Dependency scanning, and the rule that can fail it. Apple says it optimized the Swift dependency scanner “to avoid redundant setup work and header searches when looking up Clang modules during a single dependency-scan action,” and the speed change carries a requirement: “every Clang module reachable from a single Swift dependency-scan action must have a unique module name. If two module maps visible to the same scan declare a Clang module with the same name, the scan may report an error. Previously, the scanner may have tolerated duplicating names.”2 Apple names the two shapes that trip it: “projects or SDKs that vend the same Clang module name from more than one location on the header search path, and vendored third-party sources that ship a module.modulemap redeclaring an SDK module.”2 Like the linker removal, the rule fires on toolchain upgrade rather than on a deployment target. On 27A266a the first shape reports the error Apple’s “may” anticipates: two module maps declaring module Widget on one search path make swiftc -scan-dependencies print error: redefinition of module 'Widget' on 20 runs out of 20 while exiting 0 on 20 out of 20 and resolving the module to the first -I directory; Xcode 26.6 crashed or aborted 14 of 20 runs of the same input in July. The compile still stops, because -typecheck fails 20 of 20 with the same error. The second shape, a vendored map redeclaring the SDK’s SQLite3, scans clean with nothing on stderr and shadows the SDK module silently.4 My ld64 post has both runs on 26.6 and on GA, plus an audit of seven projects for both shapes.

What stops compiling?

The @State macro. The change lives in the iOS 27 release notes rather than the Xcode ones, and it keys off the compiler you build with, not the target you deploy to: “Xcode 27 introduces a new @State implementation that avoids this repeated evaluation. This new behavior back-deploys to iOS 17 aligned OSes. The new @State is implemented with a Swift macro. It is largely source compatible with the property wrapper version, with a few exceptions.”6 Apple names four exceptions and gives two of them code listings; the other two get a sentence or two each: “In rare situations, the automatic inference of generic arguments of @State is less flexible with the macro implementation. Write the type with more specificity.” and “Composing @State with other property wrappers or macros is not supported.”6 The two with listings are the ones that catch existing code. An initializer that assigns a @State property which already has a declaration-site value: SwiftUI always discarded the assignment, and now “some such cases no longer compile.”6 And the private memberwise initializer the compiler synthesizes when every stored member is private: “The state macro disables this synthesized initializer. So the code above no longer compiles.”6 On 27A266a the first example fails as written, with error: variable 'self.title' used before being initialized on the line that assigns page, because the macro’s setter runs against self before title exists; move self.title = title above it and the same file compiles, with the @State assignment discarded as before.46 The second example, an extension calling self.init(page: page, title: title) on a struct whose @State has no declaration-site value, compiled unchanged in my run, and the macro expansion shows the shape that lets it: the macro emits private var _page: SwiftUICore.State<StickerPage> behind a @storageRestrictions(initializes: _page) init accessor, the construct that lets a memberwise initializer take page:.4 Read the note as a description of shapes to check, then confirm each one on your own code. The @State macro post counts both patterns across four shipping apps; I wrote it from the beta notes in July, before this GA test, and its open question closes here as well: assigning the backing storage directly, _page = State(initialValue:) inside an initializer, compiles on 27A266a both with and without a declaration-site value.4

The SE-0508 break. Under Swift Compiler, Known Issues: “A computed property with both an init accessor and an array/dictionary literal initial value will no longer compile if the getter is declared before the init accessor.” A code listing follows, then the attribution: “This is a known source break from SE-0508.” The workaround, in full: “Swap the init accessor and the getter such that the init accessor is declared first.”2 SE-0508 is “Array expression trailing closures,” implemented in Swift 6.4, and the proposal predicts this exact case: “If the getter is declared before the init accessor, we will now attempt to parse as a trailing closure,” adding that “init accessors are however considered for disambiguation, so swapping the accessors is sufficient to make this valid regardless of initial value used,” and that the case “does not appear in the source compatibility suite, or for internal Swift projects at Apple.”7 It reproduces with a nine-line struct. With the getter first, swiftc fails on the accessor line with error: initializers may only be declared within a type; move the @storageRestrictions(initializes:) init accessor above get, and the same file compiles.4

struct Container {
    private var storage: [Int] = []
    var items: [Int] = [] {
        @storageRestrictions(initializes: storage)
        init(initialValue) { storage = initialValue }   // must precede get
        get { storage }
        set { storage = newValue }
    }
}

PreviewProvider. The Previews section lists one deprecation: “PreviewProvider and its family of preview modifiers.”2 The SDK carries it, with one message for the protocol and a different one for each modifier. In the iOS 27 SDK’s SwiftUI interface, public protocol PreviewProvider sits under @available(anyAppleOS, deprecated: 27.0, message: "Use #Preview instead."); previewLayout says “Use #Preview(traits: .sizeThatFitsLayout) or .fixedLayout(width:height:) instead.”; previewDisplayName says “Use #Preview(“name”) instead.”; previewInterfaceOrientation says “Use #Preview(traits: .landscapeLeft) or other orientation traits instead.”; previewDevice says “Use the device picker in Xcode’s canvas.”; and previewContext, with the PreviewContext and PreviewContextKey protocols, says “Use #Preview with a Widget timeline provider or entries instead.”4 Two facts decide whether you ever see those messages. The compiler compares a deprecation version against the deployment target, so the modifiers warn only in a target whose minimum is 27.0: a file that uses previewLayout, previewDisplayName, and previewDevice produced three warnings at -target arm64-apple-ios27.0-simulator and none at 17.0 or 26.0. And PreviewProvider itself never warns, for a different reason. The SDK declares it with @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *) directly above the anyAppleOS deprecation, and in my probe a protocol carrying that pair produced no warning for a conformance or a use as a parameter type at a 27.0 target, while the same protocol deprecated with @available(iOS, deprecated: 27.0) alone, or with the anyAppleOS form alone, warned on both; the modifiers carry only the anyAppleOS deprecation on their own declarations (the extension SwiftUICore.View that holds them carries the introduced attribute, and that inherited form does not suppress the warning), which is why they warn and the protocol does not.4 At any shipping deployment target the build log is silent either way, so search for PreviewProvider and the modifiers and move to #Preview, which the canvas now renders in grids per argument through the new #Preview(arguments:) syntax.24

System’s new stat(). The System library now provides Swift APIs for stat, lstat, fstat, and fstatat, with a Stat type and FilePath.stat() instance methods.2 The notes list as fixed a conflict where an extension calling an unqualified stat() collided with the new methods; if you added the Darwin. qualification while that conflict was live, it can stay.2

Address Sanitizer, the other direction. “Address Sanitizer might fail to launch on iOS 27.0, tvOS 27.0, watchOS 27.0, and visionOS 27.0 when building with Xcode 26.4 or older.” The workaround is Xcode 26.5 or later, which matters for teams that keep an older Xcode on the CI box while devices update to 27.0.2

What changed in the IDE and the tools?

  • Interface Builder builds without a simulator. A new compilation mode, toolchain, “for UIKit (Cocoa Touch) based documents. Enabled by default, toolchain allows compiling IB documents without the need to download a simulator, which is especially useful for build servers.”2
  • Simulators boot faster, and reboot. “The simulator runtimes now contain a pre-built dyld cache. This will make first launch of a simulator much faster,” and simctl gains a reboot command.2 One known issue survives, in Apple’s words: “Some simulator runtimes are not completely deleted when removed, re-appearing after a reboot.”2
  • devicectl JSON is at version 5. xcrun devicectl --version reports 642.16 and list devices --json-output writes "jsonVersion": 5; Apple deprecates the hardwareProperties, deviceProperties, and connectionProperties fields in favor of a properties dictionary, and any result that still contains them carries a _deprecationNotice.24
  • StoreKit testing. The StoreKit configuration UI can define offer codes, you can configure subscription bundles for local testing, and the Transaction Manager can exercise purchases with offer codes off-device.2
  • Organizer. An Insights Overview “summarizes high-impact performance regressions,” and a Hitches metric replaces the Scrolling metric.2
  • Coding assistant. Google Gemini joins the model list, and “Planning with agents is now first class in Xcode,” with plans as editable Markdown artifacts you approve before the agent proceeds; my coding-agents post covers the workflow from the beta, and the GA notes list a Markdown editor for exactly those artifacts.2
  • Localization. Agents can translate String Catalog entries, and exporting localizations now extracts NSLocalizedString and similar macros from header files.2
  • Icon Composer. The notes call it Icon Composer 2.0, “a new sharper rendering mode for upcoming 2027 operating systems”; the bundle inside 27A266a reports version 27.0.24
  • Testing. A test plan can set how Xcode treats a target app crash during UI testing, from off to fatal failure, and swift test gains --maximum-repetitions with --repeat-until [pass|fail] plus a failure summary at the end.2
  • Debugging. With bridging headers, LLDB “can now directly import explicitly built Swift modules and PCH from DerivedData,” and a language swift task tree command lists Swift concurrency tasks.2

What I would do this week

  1. Read the compatibility rows before touching CI: macOS 26.6 on the build Macs, Apple silicon only, iOS 17 as the oldest test device, and whichever of macOS 12, watchOS 9, or DriverKit 21 your product falls under.23
  2. Grep for -ld_classic and -ld64 and remove both; the linker ignores the first with a warning on every link and fails outright on the second. While you are in the build settings, look for hand-authored module.modulemap files that redeclare an SDK module, the shape Apple names for the unique-module-name rule.24
  3. If you set any macOS or DriverKit target to 27.0 and ship Intel, set ARCHS explicitly; ARCHS_STANDARD alone gives you arm64, which I reproduced for macOS and Apple states for both.24
  4. Search for PreviewProvider, previewLayout, previewDisplayName, and previewDevice, and follow each annotation’s own message: the protocol to #Preview, previewLayout to #Preview(traits: .sizeThatFitsLayout) or .fixedLayout(width:height:), previewDisplayName to #Preview("name"), and previewDevice to the device picker in the canvas. The modifiers warn only at a 27.0 deployment target and the PreviewProvider conformance never warns at any target, so a shipping target’s build log stays silent.4
  5. Build once with Xcode 27 and read two diagnostics: variable 'self.title' used before being initialized on an initializer that assigns a @State property that already carries a declaration-site value before the other stored properties, which the @State macro post walks through, and initializers may only be declared within a type on properties with an array or dictionary literal initial value and an init accessor, where you move the accessor above the getter.246
  6. Upload a TestFlight build with the 27 SDKs now that App Store Connect accepts them, and keep the launch screen rule and the UIKit scene mandate in mind, since both bind an app the moment it links against 27.56

FAQ

When did Xcode 27 come out?

Monday, September 14, 2026, as build 27A266a, on the same day as iOS 27.0, iPadOS 27.0, macOS 27.0, tvOS 27.0, visionOS 27.0, and watchOS 27.0; the feed dates its iOS 27.0 RC (24A437) item September 11, two days after App Store Connect began taking RC-SDK builds.15

What macOS does Xcode 27 require?

macOS Tahoe 26.6 or later on an Apple silicon Mac. It does not install or run on Intel Macs. It runs on macOS 27.0, which shipped the same day.23

What are the minimum deployment targets in Xcode 27?

iOS 15, iPadOS 15, tvOS 15, watchOS 9, visionOS 1, macOS 12, and DriverKit 21. Compared with Xcode 26.6, watchOS rose from 8, macOS from 11, and DriverKit from 20.3

Does Xcode 27 still build Universal Mac apps?

Yes, back to macOS 12, but not by default once a target’s MACOSX_DEPLOYMENT_TARGET is 27.0: ARCHS_STANDARD then resolves to arm64 alone, and you add x86_64 to ARCHS yourself.24

Is Xcode 27.1 out?

Not as of September 15, 2026. Apple’s releases feed and the Xcode release-notes index list only Xcode 27, and Apple’s iPhone Duo developer page still lists the Xcode 27.1 beta as “Coming later this month”; the iPhone Duo SDK is not part of this release.1 (September 17: still no 27.1. Xcode 27.2 beta (27B5019j) shipped on September 16, and its release notes say the iOS SDK and simulator support for iPhone Duo “will be available later this month in an upcoming release of Xcode 27.1.”9) (September 19: as a beta, yes. Xcode 27.1 beta (27A9269) shipped on September 18 with an iOS 27.1 SDK and, in the 27.2 beta notes’ words, “simulator support for iPhone Duo,” and App Store Connect accepts its builds for TestFlight; there is no 27.1 release yet, and Apple’s September 16 news post says iPhone Duo “will run iOS 27.1” when it ships on October 23.10) (October 1: still only the first 27.1 beta, 27A9269.11) (October 11: as a release candidate, yes. Xcode 27.1 RC (27A9275) shipped on October 5 with Swift 6.4 and the iOS 27.1 SDK, and App Store Connect takes its builds for the App Store; the releases feed lists no final Xcode 27.1 yet.12) (October 14: still the RC; Xcode 27.2 beta 3 shipped that day with no Xcode 27.1 release beside it.13)

Where are the Xcode 27 release notes?

On Apple’s developer documentation site under Xcode Release Notes, one page for the release; the sections cited here are Overview, Linking, Intel Deprecation, Previews, Swift Compiler, Address Sanitizer, Instruments, Device Hub, devicectl, Simulator, Interface Builder, C++ Standard Library, Organizer, Coding Intelligence, Source Editor, Icon Composer, StoreKit Testing in Xcode, Localization, Testing, Swift Package Manager, Debugging, and System, and, from the September 17 update, Enhanced Security.29 The @State macro change is in the iOS and iPadOS 27 release notes instead, under SwiftUI.6

Sources


  1. Apple, Releases, RSS feed fetched September 15, 2026: “Xcode 27 (27A266a)”, “iOS 27.0 (24A437)”, “iPadOS 27.0 (24A437)”, “macOS 27.0 (26A428)”, “tvOS 27.0 (24J361)”, “visionOS 27.0 (24M362)”, “watchOS 27.0 (24R364)”, and “App Store Connect Update”, all dated Mon, 14 Sep 2026; “iOS 27.0 RC (24A437)” dated Fri, 11 Sep 2026. The Xcode Release Notes index lists a single 27 entry, “Xcode 27 Release Notes”; no 27.1 item appears in either place. Apple Developer, Get Ready for iPhone Duo, fetched September 15, 2026: “Xcode 27.1 beta. Get the latest SDKs to build, run, and test your app for iPhone Duo. Coming later this month”. ↩↩↩↩↩

  2. Apple, Xcode 27 Release Notes, fetched September 15, 2026 after the GA release. Quoted sections: Overview; Linking, Deprecations (“The ld64 linker has been removed and the -ld_classic option is no longer supported.” 165165518); Intel Deprecation, New Features (ARCHS_STANDARD, 161837535) and Deprecations (Apple silicon only, quoted in full, 162138432); Previews, Deprecations (“PreviewProvider and its family of preview modifiers.” 144168701) and New Features (#Preview(arguments:), 167544057); Swift Compiler, New Features (dependency scanner and the unique-module-name requirement, excerpted, 136303612) and Known Issues (SE-0508, 180969028; workaround sentence quoted in full); System, New Features and Resolved Issues (177911316); Address Sanitizer, Known Issues (178072780); Instruments, Deprecations (166097304); Device Hub, Deprecations (160482487); devicectl, New Features (170812159) and Deprecations (183772705); Simulator, New Features (179846743, 172303413) and Known Issues (141290052); Interface Builder, New Features; C++ Standard Library, New Features and Deprecations; Organizer; Coding Intelligence (171990272, 172857081); Source Editor, New Features (Markdown editor, 175022151); Localization; Icon Composer; StoreKit Testing in Xcode; Testing; Swift Package Manager, New Features (--maximum-repetitions, 177561078; failure summary, 168311253); Debugging. ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩

  3. Apple, Xcode support: minimum requirements and supported SDKs, fetched September 15, 2026. Xcode 27 row: macOS Tahoe 26.6 or later; SDKs iOS 27, tvOS 27, watchOS 27, visionOS 27, macOS 27, DriverKit 27; deployment targets iOS 15 to 27, iPadOS 15 to 27, tvOS 15 to 27, watchOS 9 to 27, visionOS 1 to 27, macOS 12 to 27, DriverKit 21 to 27; device support iOS 17, tvOS 17, watchOS 10, visionOS 1 or later; simulator iOS 17, tvOS 17, watchOS 10, visionOS 1 or later; Swift 6.4 compiler with language modes 6, 5, 4.2, and 4. Xcode 26.6 row: macOS Tahoe 26.2 to 26.x; SDKs at 26.5 with DriverKit 25.5; deployment targets iOS 15, tvOS 15, watchOS 8, visionOS 1, macOS 11, DriverKit 20; device and simulator support from iOS 15, tvOS 15, watchOS 8, visionOS 1; Swift 6.3. ↩↩↩↩↩↩

  4. Author reproduction on Xcode 27.0 (27A266a) with DEVELOPER_DIR pointed at it, macOS 26.6.2 (25G83), September 15, 2026. xcodebuild -version: “Xcode 27.0 Build version 27A266a”; swift --version: “Apple Swift version 6.4 (swiftlang-6.4.0.34.1 clang-2100.3.34.1)”; the toolchain’s usr/bin lists one linker, ld, and ld -v prints “PROJECT:ld-27037.1” built “Aug 25 2026”; with hello.c containing int main(void){return 0;}, clang hello.o -o hello_classic -Xlinker -ld_classic printed “ld: warning: -ld_classic is no longer supported and will be ignored” and exited 0, and clang hello.c -o hello_ld64 -Wl,-ld64 printed “ld: library ‘d64’ not found” and “clang: error: linker command failed with exit code 1 (use -v to see invocation)” and exited 1 with no output file. xcodebuild -showBuildSettings -sdk macosx on Yawara.xcodeproj, a multiplatform project (SUPPORTED_PLATFORMS = iphoneos iphonesimulator macosx xros xrsimulator) that prints no ARCHS_STANDARD line without an -sdk argument: ARCHS_STANDARD = arm64 x86_64 at MACOSX_DEPLOYMENT_TARGET = 26.0, ARCHS_STANDARD = arm64 at 27.0, ARCHS_STANDARD_64_BIT = arm64 x86_64 in both. The nine-line Container struct with var items: [Int] = [] and a @storageRestrictions(initializes: storage) init(initialValue) accessor: getter first fails with “error: initializers may only be declared within a type” at the init line; accessor first compiles with exit 0. SwiftUI.swiftmodule/arm64e-apple-ios.swiftinterface in the iPhoneOS 27.0 SDK: @available(anyAppleOS, deprecated: 27.0, message: "Use #Preview instead.") at lines 14971 (public protocol PreviewProvider), 14978 (its extension), and 14991 (PreviewPlatform); “Use #Preview with a Widget timeline provider or entries instead.” at 15023 (PreviewContextKey), 15029 (PreviewContext), and 15069 (previewContext); “Use the device picker in Xcode’s canvas.” at 15053 (previewDevice); “Use #Preview(traits: .sizeThatFitsLayout) or .fixedLayout(width:height:) instead.” at 15058 (previewLayout); “Use #Preview("name") instead.” at 15063 (previewDisplayName); “Use #Preview(traits: .landscapeLeft) or other orientation traits instead.” at 15075 (previewInterfaceOrientation); a swiftc -c of a bare PreviewProvider conformance emitted no warning at -target arm64-apple-ios27.0-simulator, ios26.0, or ios17.0; a file applying previewLayout(.sizeThatFits), previewDisplayName("Card"), and previewDevice(PreviewDevice(rawValue: "iPhone 18 Pro")) inside a PreviewProvider emitted three [#DeprecatedDeclaration] warnings at ios27.0 (“‘previewLayout’ was deprecated in any Apple OS 27.0: Use #Preview(traits: .sizeThatFitsLayout) or .fixedLayout(width:height:) instead.”, and the matching previewDisplayName and previewDevice messages) and none at ios26.0 or ios17.0. A probe with four protocols, each with a conforming struct and an any P parameter in one function signature, compiled at -target arm64-apple-ios27.0-simulator: @available(iOS, deprecated: 27.0) alone, @available(anyAppleOS, deprecated: 27.0) alone, and @available(iOS 13.0, *) above @available(iOS, deprecated: 27.0) each warned on the conformance line and on the any P parameter type (“‘P1’ was deprecated in iOS 27.0”, “‘P2’ was deprecated in any Apple OS 27.0”, “‘P4’ was deprecated in iOS 27.0”), while the SDK’s pair, @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *) above @available(anyAppleOS, deprecated: 27.0), produced no warning on either; the method calls through those existentials produced no diagnostic for any of the four, and at ios26.0 none of the four warned. In the interface, PreviewProvider sits at lines 14970 to 14972 under exactly that pair; previewLayout at lines 15058 to 15059 carries only the anyAppleOS deprecation on its own declaration, inside an extension SwiftUICore.View whose introduced attribute sits at line 15051. Module-map probes against the iPhoneSimulator 27.0 SDK at -target arm64-apple-ios27.0-simulator: two directories, each holding a module.modulemap that declares module Widget, plus one main.swift importing it; with both on the search path, swiftc -typecheck exited 1 on 20 of 20 runs (“error: redefinition of module ‘Widget’”, “note: previously defined here”) and swiftc -scan-dependencies exited 0 on 20 of 20 runs while printing the same error and note to stderr on every run and writing a graph whose Widget entry points at the first directory’s module map, and at the other directory’s map once I reversed the two -I arguments; a Vendor/module.modulemap declaring SQLite3 on the search path scanned with exit 0 and empty stderr on 20 of 20 runs, resolved SQLite3 to the vendored map, and a file calling sqlite3_open failed to typecheck with “error: cannot find ‘sqlite3_open’ in scope” until the directory left the search path. A file with two views assigning _page = State(initialValue: StickerPage(title: title)) inside init(title:), one with @State private var page: StickerPage and one with @State private var page = StickerPage(), compiled at ios27.0 with exit 0 and no diagnostics. The @State probes, each a StickerPageView with @State private var page and let title: String, compiled with swiftc -c -target arm64-apple-ios27.0-simulator against the iPhoneSimulator 27.0 SDK: Apple’s first example, @State private var page = StickerPage() with an init(title:) that assigns self.page and then self.title, failed with “error: variable ‘self.title’ used before being initialized” on the self.page line, exit 1; the same file with self.title = title moved above the self.page assignment compiled, exit 0; Apple’s second example, @State private var page: StickerPage with no initial value and an extension calling self.init(page: page, title: title), compiled, exit 0, and -Xfrontend -dump-macro-expansions showed the macro emitting private var _page: SwiftUICore.State<StickerPage> with a @storageRestrictions(initializes: _page) init(initialValue) accessor. xcrun devicectl --version: 642.16; devicectl list devices --json-output wrote "jsonVersion": 5. Icon Composer’s Info.plist inside 27A266a: CFBundleShortVersionString 27.0. ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩

  5. Apple, App Store Connect release notes, fetched September 15, 2026. September 14, 2026 entry quoted in full in the table above; the September 9, 2026 entries record RC-SDK uploads and add screenshot and app preview specifications for iPhone Duo, iPhone 18 Pro Max, iPhone 18 Pro, Apple Watch Ultra 4, and Apple Watch Series 12, with “Support for uploading assets for iPhone Duo in App Store Connect will be available later this year.” ↩↩↩↩↩

  6. Apple, iOS & iPadOS 27 Release Notes, SwiftUI, New Features (105893279), fetched September 15, 2026. Source of “Xcode 27 introduces a new @State implementation that avoids this repeated evaluation. This new behavior back-deploys to iOS 17 aligned OSes. The new @State is implemented with a Swift macro. It is largely source compatible with the property wrapper version, with a few exceptions.”; of “If you provide an initial value at @State declaration, and also try to assign a value to it in an initializer, the initializer value is discarded. This behavior has not changed because of the macro, but some such cases no longer compile:” with the StickerPageView listing; of “When all stored members of a struct are private, the compiler synthesizes a private init that can be used in an extension of the same type:” with its listing; and of “The state macro disables this synthesized initializer. So the code above no longer compiles. To mitigate, assign value to members explicitly:”; also of the two exceptions without listings, “In rare situations, the automatic inference of generic arguments of @State is less flexible with the macro implementation. Write the type with more specificity.” and “Composing @State with other property wrappers or macros is not supported.” The same document’s UIKit section carries the two requirements cited in step 6: New Features, “iOS and iPadOS apps built with the 27.0 SDK or later are required to include a launch screen.” (168247372), and Deprecations, “Apps built with the latest SDK must adopt the scene-based life cycle or they fail to launch.” (141837548). ↩↩↩↩↩↩↩↩↩↩↩

  7. Cal Stephens, SE-0508: Array expression trailing closures, Swift Evolution, status “Implemented (Swift 6.4)”, implementation swiftlang/swift#86244, fetched September 15, 2026. The “Init accessors” subsection is the source of “One other case where this can result in an error is for properties with both an init accessor and initial value that is either an array or dictionary literal. If the getter is declared before the init accessor, we will now attempt to parse as a trailing closure:”, of the disambiguation sentence quoted above, and of “This particular case appears to be quite rare in practice, it does not appear in the source compatibility suite, or for internal Swift projects at Apple.” ↩

  8. Apple, Xcode 15 Release Notes, Linking, New Features (108915312), fetched September 15, 2026: “The classic linker can still be explicitly requested using -ld64, and will be removed in a future release.” ↩↩

  9. Apple, Releases, RSS feed fetched September 17, 2026, last build date Wed, 16 Sep 2026 14:00:00 PDT. Items dated Wed, 16 Sep 2026: “TestFlight Update”, “Xcode 27.2 beta (27B5019j)”, “iOS 27.2 beta (24B5084k)”, “iPadOS 27.2 beta (24B5084k)”, “macOS 27.2 beta (26B5086k)”, “tvOS 27.2 beta (24K5088l)”, “visionOS 27.2 beta (24N5088l)”, “watchOS 27.2 beta (24S5086l)”; no item title contains 27.1. Apple, Xcode 27.2 Beta Release Notes, fetched through the documentation JSON endpoint on September 17, 2026: Overview (the iPhone Duo sentence and the macOS Tahoe 26.6 requirement), Project Format, New Features (184661114), SDK, Known Issues (187160501). The notes’ sections are General, Device Hub, Previews, Previews & Playgrounds, Project Format, SDK, and Simulator; none mentions ld64, module names, @State, or PreviewProvider. The Xcode 27 Release Notes re-fetched the same day carry the Xcode 27 entries quoted in this post unchanged, and one entry absent on September 16: Enhanced Security, Known Issues (187057599), quoted in the update. The 27.2 beta notes’ Simulator Known Issue is 141290052. ↩↩↩↩↩↩↩↩

  10. Apple, Releases, RSS feed fetched September 19, 2026, last build date Fri, 18 Sep 2026 14:00:00 PDT: “Xcode 27.1 beta (27A9269)” dated Fri, 18 Sep 2026 10:00:00 PDT and “TestFlight Update” dated Fri, 18 Sep 2026 14:00:00 PDT. Apple, Xcode 27.1 Beta Release Notes, fetched through the documentation JSON endpoint on September 19, 2026: Overview (quoted for the SDK list and the macOS Tahoe 26.6 requirement); Mac Catalyst, Known Issues (185924957, 187046347, each with its workaround); Previews, New Features (182598534); Simulator, Known Issues (187708500, 187708663, 187708767); the notes have no other sections. The Xcode release-notes index fetched the same day lists Xcode 27 Release Notes, Xcode 27.1 Beta Release Notes, and Xcode 27.2 Beta Release Notes. Apple, App Store Connect release notes, September 18, 2026, TestFlight update, quoted in full. Apple, Xcode 27.2 Beta Release Notes, fetched September 17 and September 19, 2026: the two fetches differ only in the Overview, where the September 17 sentence “The iOS SDK and simulator support for iPhone Duo will be available later this month in an upcoming release of Xcode 27.1.” is replaced by an aside, “Download Xcode 27.1 beta to get the iOS SDK and simulator support for iPhone Duo.”, whose link points to https://developer.apple.com/download/applications/. The Xcode 27 Release Notes fetched September 19 are identical to the September 17 fetch. Apple, “Get ready with the latest beta releases”, news, September 16, 2026: “When iPhone Duo becomes available on October 23, it will run iOS 27.1.” Apple, “App Store submissions now open for the latest OS releases”, news, September 9, 2026, the paragraph beginning “Starting April 2027”, quoted; Apple, Upcoming Requirements, fetched September 19, 2026, newest entry “SDK minimum requirements”, “Since April 28, 2026”. Apple, ArrangementView, documentation JSON fetched September 19, 2026, availability iOS 27.1 and iPadOS 27.1, marked beta. The same availability, iOS 27.1 and iPadOS 27.1 in beta, appears on the pages for UIArrangementViewController, reservedRegions(kind:options:layoutDirectionBehavior:), reservedRegions(kind:options:), and toolbarVerticalBehavior(_:), each fetched the same day. ↩↩↩↩↩↩↩↩↩

  11. Apple, Releases, RSS feed fetched October 1, 2026: “Xcode 27.2 beta 2 (27B5028f)” dated Mon, 28 Sep 2026 10:00:00 PDT beside “iOS 27.0.1 (24A446)”, “iPadOS 27.0.1 (24A446)”, “macOS 27.0.1 (26A434)”, “visionOS 27.0.1 (24M372)”, and, at 13:00:00 PDT, “watchOS 27.0.1 (24R365)”; the feed’s Xcode items are “Xcode 27.2 beta 2 (27B5028f)”, “Xcode 27.1 beta (27A9269)”, “Xcode 27 (27A266a)”, and “Xcode 26.6 (17F113)”. Apple, Xcode 27.2 Beta 2 Release Notes and Xcode 27 Release Notes, fetched through the documentation JSON endpoint on October 1, 2026; the Xcode 27 page’s text matches the September 26 fetch. ↩↩↩↩

  12. Apple, Releases, RSS feed fetched October 11, 2026, last build date Tue, 06 Oct 2026 10:00:00 PDT: “Xcode 27.1 RC (27A9275)” dated Mon, 05 Oct 2026 10:00:00 PDT; the feed’s Xcode items are “Xcode 27.1 RC (27A9275)”, “Xcode 27.2 beta 2 (27B5028f)”, “Xcode 27.1 beta (27A9269)”, “Xcode 27 (27A266a)”, and “Xcode 26.6 (17F113)”. Apple, App Store Connect release notes, fetched October 11, 2026, entry dated October 5, 2026, “App Store Connect updates,” quoted. Apple, Xcode 27.1 RC Release Notes, fetched October 11, 2026, Overview: “Xcode 27.1 RC includes Swift 6.4 and SDKs for iOS 27.1, iPadOS 27, tvOS 27, watchOS 27, macOS 27, and visionOS 27.” ↩↩

  13. Apple, Releases, RSS feed fetched October 15, 2026 at 04:36 UTC (October 14, 21:36 Pacific): “Xcode 27.2 beta 3 (27B5038j)” dated Wed, 14 Oct 2026 10:00:00 PDT; “iOS 27.2 beta 4 (24B5110a)”, “iPadOS 27.2 beta 4 (24B5110a)”, “macOS 27.2 beta 4 (26B5112a)”, “visionOS 27.2 beta 4 (24N5114a)”, and “watchOS 27.2 beta 4 (24S5112a)” dated Tue, 13 Oct 2026 10:00:00 PDT; the feed’s Xcode items are “Xcode 27.2 beta 3 (27B5038j)”, “Xcode 27.1 RC (27A9275)”, “Xcode 27.1 beta (27A9269)”, “Xcode 27 (27A266a)”, and “Xcode 26.6 (17F113)”. Apple, Xcode 27.2 Beta 3 Release Notes, fetched through the documentation JSON endpoint on October 15, 2026 at 04:38 UTC (October 14, 21:38 Pacific) and compared with the beta 2 copy saved October 14, 2026 at 05:09 UTC (October 13, 22:09 Pacific) for the HomeView post: no aside; Interface Builder, Resolved Issues (186354589, 187747632); Simulator Runtimes, Known Issues (188407822); Simulator, Resolved Issues in Xcode 27.2 Beta 2 (141290052, 187950199). Apple, Xcode 27 Release Notes, fetched through the documentation JSON endpoint on October 15, 2026 at 05:03 UTC (October 14, 22:03 Pacific): its content is identical to a copy saved on October 11, 2026, and 141290052 is still under Simulator, Known Issues. Apple, App Store Connect release notes, fetched October 15, 2026 at 05:04 UTC (October 14, 22:04 Pacific), entry dated October 14, 2026, “TestFlight update”: “You can now submit apps built with Xcode 27.2 beta 3 using the SDK for iOS 27.2 beta 4, iPadOS 27.2 beta 4, macOS 27.2 beta 4, tvOS 27.2 beta 3, visionOS 27.2 beta 4, and watchOS 27.2 beta 4 for internal and external testing.” ↩↩↩↩

Related Posts

macOS 27 Golden Gate Is Out: What Changes for Developers

macOS 27 Golden Gate shipped September 14, Apple silicon only: Rosetta's last general release, installers defaulting to …

33 min read

The @State Macro: What Xcode 27 Stops Compiling

Xcode 27 reimplements SwiftUI's @State as a Swift macro. The break lands on toolchain upgrade, not deployment target, an…

22 min read

Honoring the Old Pokémon Games Without Borrowing Them

What made the Game Boy Pokémon games feel alive, measured from their decompilations; the fan-game and Palworld record by…

109 min read