Xcode 27 Beta 4 Release Notes
Update your apps to use new features, and test your apps against API changes.
Overview
Xcode 27 beta 4 includes Swift 6.4 and SDKs for iOS 27, iPadOS 27, tvOS 27, watchOS 27, macOS 27, and visionOS 27. Xcode 27 beta 4 supports on-device debugging in iOS 17 and later, tvOS 17 and later, watchOS 10 and later, and visionOS. Xcode 27 beta 4 requires a Mac running macOS Tahoe 26.4 or later.
See Xcode Support to learn more about compatible platforms and deployment targets.
General
Known Issues
When streaming
stdoutandstderrfrom multiple processes at the same time (for example: in parallel testing scenarios), the results may be significantly delayed. (165098287)
Address Sanitizer
Known Issues
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. (178072780)
Workaround: Use Xcode 26.5 or later when testing applications with Address Sanitizer.
Coding Intelligence
Known Issues
If the plan-mode confirmation bar (“Implement the plan?” with Yes/No buttons) appears while the agent is still streaming a response, clicking either button may trigger a new agent turn on top of the in-flight one, leaving the conversation in an inconsistent state. As a workaround, wait for the agent to finish responding before confirming or dismissing the plan. (178673449)
Console
Known Issues
Console area fails to accept stdin. (181024563)
Workaround: Launch application from Terminal.app.
Core AI
Known Issues
The option to extract inputs from prediction events in the Core AI gauge in Xcode may not work reliably. (172502576)
Debugging
New Features
LLDB can now inspect data types with ~Copyable fields in the standard library and other system frameworks. (176282041)
Device Hub
Known Issues
Connecting a game controller to a simulator or device is only supported for the visionOS simulator. (109362811)
Viewing the video from, or sending inputs to, a physical Apple Vision Pro is not supported in Device Hub 27. All other Device Hub features, like changing settings, DeviceFS, and so forth, are supported. (142582218)
Workaround: Use AirPlay from the Apple Vision Pro to view the video remotely.
Device Hub doesn’t currently support sending a two-finger touch to a device or simulator. (169537162)
The Controls->Shake menu item does not work. (171282777)
Sound Output and Input for simulators cannot be set to None. (175714711)
Device Hub.app downloads app data containers to a folder named with the bundle identifier of the app. (176313137)
Workaround: Add
.xcappdatato the folder created by Device Hub when downloading app data containers. Inside that folder make a new folder named AppData. Move the other content in that folder into AppData. For example,com.example.MyApp/{Documents,Library,tmp}becomes:
com.example.MyApp.xcappdata/AppData/{Documents,Library,tmp}When the tab bar is visible, controls at the very top of the inspector might not respond to clicks. (176507876)
When running parallel testing in simulators, devices may not be visible in Device Hub but are still actively running tests. (176809181)
Workaround: Disable parallelized test runs if you want to watch UI tests executing in simulators.
When a color filter is set on a physical device, the filter is not visible in Device Hub. (178121876)
The “Simulate Hardware Keyboard” menu item does not work correctly. In some instances, the software keyboard will appear, or the suggestions bar will not appear. (178196115)
With iPad Simulators running iOS 27.0, the “Toggle Software Keyboard” menu item does not work. (178432770)
After switching to Device Hub’s compact view, a visionOS simulator may show a black screen until Device Hub is relaunched. (178567811)
With Apple Watch - simulator or physical - scrolling with the mouse pointer over the watch face does not emulate rotating the digital crown. (179079031) (FB22992052)
Workaround: Move the pointer over the crown in the device bezel.
visionOS simulator takes longer to boot than expected and may stall when deploying an app. (180078336)
Workaround: Please reboot your machine.
When an iPad connects to Device Hub without viewing the screen while the software keyboard is on screen, it can disappear. (181166904)
Workaround: In Device Hub, toggle the Device > Keyboard > Simulate Hardware Keyboard menu item. This can be done without viewing the device screen.
Deprecations
Input interactions such as keyboard or pointer are only supported on the following OS versions and newer: macOS 15.0, iOS 18.0, tvOS 18.0, watchOS 11.0, visionOS 2.0. (160482487)
Instruments
New Features
Errors preventing recording now appear next to the Record button. (112283690)
xctrace exportallows for specifying files like .atrc and .logarchive as input, removing the need for a two-step process of runningxctrace importfollowed byxctrace export. (179742657)
Known Issues
Detail switcher button in Instrument is not responding to touches when running Instruments on macOS Golden Gate Beta 4. (182718545)
Workaround: Use View -> Detail View menus for switching detail views.
Interface Builder
Resolved Issues
Fixed:
ibtoolfails to compile documents with non-adaptive “Popover” or “Replace” segues. (180632487) (FB23399800)
Localization
New Features
When agents use the “Prepare Project for Localization” tool, String Catalog artifacts now show any keys that were removed due to no longer being found in source code. (179755385)
Resolved Issues
Fixed: Resolved an issue where Xcode could use too much memory when generating comments or translating strings. (179800456) (FB23193029)
Previews
New Features
The RenderPreview MCP tool now supports rendering Previews using the new group feature. (174692209)
You can now preview your UI in a different localization. (181040291)
Resolved Issues
Fixed an issue where the canvas size could reset to its initial size when editing code in Resizable Canvas mode. (178765518)
Fixed an issue where the RenderPreview MCP tool wasn’t working correctly for a macOS preview group preview. (180460302)
Fixed an issue that could prevent previews from working when a Mac Catalyst run destination was selected. (180547070)
Fixed: Improved error when an appropriate preview device can’t be found. (180669830)
Previews & Playgrounds
Resolved Issues
Fixed a hang that could occur when a large number of edits were applied to a file at once, such as during an AI-assisted edit. (163125754)
Fixed an issue where a preview could stop updating due to an error. (181559530)
Known Issues
Standalone Swift files opened by double-clicking in Finder may fail to run #Playground or #Preview blocks. (177587795)
Workaround: Open Swift files using File>Open… or drag them directly onto the Dock icon.
Simulator
Known Issues
An extra control for keyboard capture mode appears in the Device Hub toolbar under the view for the visionOS simulator. (177082480)
An extra control for Simulate Trackpad or Mouse mode appears in the Device Hub toolbar under the view for the visionOS simulator. (177086926)
The simulator sometimes does not get cleared after deletion. (178661525)
Workaround: Restart the machine and re-attempt to remove it.
Source Editor
Resolved Issues
Fixed: Use Selection for Find (Cmd-E) did not function for text selections in the “old” side of an inline diff display. (52361137)
Swift Compiler
Known Issues
A computed property with both an
initaccessor and an array/dictionary literal initial value will no longer compile if the getter is declared before theinitaccessor.struct S { var _strings: [String] var strings: [String] = ["hello"] { get { _strings } @storageRestrictions(initializes: _strings) init { _strings = newValue } } }This is a known source break from SE-0508. (180969028)
Workaround: Swap the
initaccessor and the getter such that theinitaccessor is declared first.
Themes
New Features
Customized and imported themes are now stored on disk alongside legacy theme files. (177747192)
Xcode
Resolved Issues
Fixed: If you installed Xcode 27 beta on macOS Tahoe 26.5.1 and earlier, macOS virtual machine installation will fail due to a known bug. To restore virtual machine installation functionality, follow the How to reinstall macOS guide. (179068335)
Updates in Xcode 27 Beta 3
Background Assets
Resolved Issues in Xcode 27 Beta 3
Fixed: The packaging tool, ba-package, may generate an invalid asset-pack archive when you specify an on-demand download policy. (179168553) (FB23020247)
CarPlay Simulator
Resolved Issues in Xcode 27 Beta 3
Fixed: Cannot start a CarPlay connection with CarPlay Simulator when accessed via Device Hub. (179523697)
Coding Intelligence
New Features in Xcode 27 Beta 3
Xcode build and test MCP tools now send dynamic activity status instead of static text to external MCP clients. (181078347)
Device Hub
Resolved Issues in Xcode 27 Beta 3
Fixed: The ‘VoiceOver’ toggle in the appearance settings inspector does not enable voiceover on the device. (173507341)
Fixed: The “Text Size” in the appearance inspector disappears if one of larger text sizes from Accessibility is being used. (175365925)
Fixed: In some circumstances, when using “Simulate Mouse or Trackpad” with an iPad, physical or simulated, the mouse pointer can appear at a different place on the screen than the Mac pointer. (178575823)
Fixed: The ‘Color Filter’ option in the appearance settings inspector works for simulators. (178854926)
Fixed: Device Hub allows you to enter resize mode with an app linked against an iOS 26 or earlier SDK, which is unsupported and may result in Device Hub showing a black screen for the device. (179416769)
Fixed: If you exit Device Hub’s resize mode through means other than the toolbar button or menu item (e.g. if your resized app crashes or is backgrounded) the device’s screen content will be incorrectly sized until it is rebooted. (179991750)
devicectl
Resolved Issues in Xcode 27 Beta 3
Fixed: The
--showflag has been removed from thedevicectl device info detailscommand. Instead, the command provides the full set of device properties in the textual output and JSON (under the ‘properties’ dictionary). (179880477)
Instruments
New Features in Xcode 27 Beta 3
Runs and Comparisons can now be bulk-deleted by using multi-selection and the
Deletemenu item or context menu. (179565486) (FB23120864)
Resolved Issues in Xcode 27 Beta 3
Fixed: Resolved a bug where swift concurrency backtraces often included completeTaskAndRelease (or similar concurrency mechanics) at the end of the backtrace. (142883863)
Fixed an issue where the resize cursor would sometimes not appear when resizing the sidebar or inspector. (172306622)
Interface Builder
Resolved Issues in Xcode 27 Beta 3
Fixed: A
TVCardViewloaded from a storyboard or xib may render incorrectly at runtime. (179781291) (FB23188951)Fixed: Compiled documents with text input views containing a non-nil “Password Rule” value fail to load at runtime. (180420035) (FB23351677)
Localization
New Features in Xcode 27 Beta 3
You can now annotate translations in String Catalog artifacts when using agents to translate strings. (176407208)
Strings newly added to String Catalogs now appear as artifacts when agents use the “Prepare Project for Localization” tool. (176497701)
Resolved Issues in Xcode 27 Beta 3
Fixed an issue where strings inside availability-constrained
#Previewmacros would not be excluded from String Catalogs. (176188980) (FB22696182)Fixed: Resolved an issue where Xcode may not have been able to reference the usage location for newly-extracted strings during agentic translation. (179729079)
Previews
Resolved Issues in Xcode 27 Beta 3
Fixed an issue where the crash screen for a watchOS preview appeared with a light background instead of the expected dark appearance. (146868878)
Deprecations in Xcode 27 Beta 3
PreviewProvider and its family of preview modifiers (144168701)
Previews & Playgrounds
Resolved Issues in Xcode 27 Beta 3
Fixed: A clearer error message is now shown when building a preview times out. (178756436)
Fixed: Reduced number of canvas errors that would be flagged as potentially caused by a crash. (179124669)
Fixed: Errors encountered when using RenderPreview and ExecuteSnippet MCP tools now include full diagnostic details from the underlying failure. (179318912)
Fixed a rare display setup-related issue where the first update to a preview could fail immediately after the preview launched. (179411046)
Security
New Features in Xcode 27 Beta 3
The new “adopt-c-bounds-safety” Code Intelligence skill can help you adopt the bounds safety extension for C (-fbounds-safety) with a file-by-file adoption workflow. For more information about the C bounds safety extension, see https://developer.apple.com/documentation/xcode/enabling-enhanced-security-for-your-app#Adopt-bounds-checking-in-C. (177739344)
The new “audit-xcode-security-settings” Code Intelligence skill can help you audit your app to suggest enabling additional security-oriented build settings and entitlements. For more information on these settings, see https://developer.apple.com/documentation/xcode/enabling-enhanced-security-for-your-app (181104536)
Simulator
New Features in Xcode 27 Beta 3
The simulator runtimes now contain a pre-built dyld cache. This will make first launch of a simulator much faster. (179846743)
Resolved Issues in Xcode 27 Beta 3
Fixed: Accessibility Inspector cannot inspect elements in simulators. (179033881) (FB22976268)
StoreKit Testing in Xcode
Resolved Issues in Xcode 27 Beta 3
Fixed: Inspecting transaction details for a subscription suite purchase in the Transaction Manager displays incorrect product information. (179413970)
System
Resolved Issues in Xcode 27 Beta 3
Fixed: Custom
FilePathorFileDescriptorextensions that make unqualified calls tostat()orstat(_)(without theDarwin.qualification) might conflict with the new Swiftstat()instance methods introduced in SYS-0006, causing build errors. See SYS-0008 for more details. (177911316)
Testing
Resolved Issues in Xcode 27 Beta 3
Fixed: Test issues with warning severity now appear in the console. (161919593)
Fixed: An expected Swift Testing exit test process termination may cause a test failure to be recorded incorrectly during a UI test. (174032826)
XCTest
New Features in Xcode 27 Beta 3
XCTest now includes XCUIVoiceOverService, a new UI testing API for verifying VoiceOver behavior in your app. Use it to drive VoiceOver from UI tests and validate focus, spoken output, and navigation across supported platforms. (175858549)
Updates in Xcode 27 Beta 2
App Intents
Resolved Issues in Xcode 27 Beta 2
Fixed: Siri might generate unexpected responses when attempting to trigger an AppShortcut phrase with an App enum value. (174869053)
Coding Intelligence
New Features in Xcode 27 Beta 2
The Preview Snapshot MCP tool now returns information about the platform, device type, and operating system version of the Simulator that rendered the preview. (177076406)
Resolved Issues in Xcode 27 Beta 2
Fixed: ACP agents added as part of agent plug-ins may not be removed from Xcode’s UI until relaunching Xcode. (178771195)
Fixed: If a deep link targeting the new beta is invoked on a system where an older version is set as the active developer tool, the link will be claimed by the older installation rather than the beta. (179126594)
Fixed: Apple-authored agent skills may not be available to Codex. (179171480)
Console
Resolved Issues in Xcode 27 Beta 2
Fixed: Console may fail to scroll fully to the bottom while output is streaming. (175800015)
Core AI
Resolved Issues in Xcode 27 Beta 2
Fixed: The number of parameters displayed in the Core AI model view in Xcode is inaccurate for models with multiple functions that share parameters. (177784390)
Fixed: When Metal API Validation is enabled, CoreAI models might fail to execute. (177991751)
Debugging
New Features in Xcode 27 Beta 2
LLDB now ships with an MCP server (lldb-mcp). See https://lldb.llvm.org/use/mcp.html for examples. (176901842)
Developer Documentation
New Features in Xcode 27 Beta 2
You can now use natural language to search the developer documentation. Matching documents will be returned based on semantic matching. (165476491)
Device Hub
New Features in Xcode 27 Beta 2
Common Mac mouse and trackpad gestures such as scrolling, pinching, and rotating now work with standard UIKit components on iOS devices, either physical or simulated. When scrolling with a pointing device,
UIEvent.EventType.scrollis emitted. When pinching or rotating with a trackpad,UIEvent.EventType.transformis emitted. As a result of these pointer-based events being emitted, you may seeUIPointerInteractioneffects applied based on where the pointer is located in your app. Additionally, clicking with a mouse or trackpad produces a simulated finger touch of typeUITouch.TouchType.directrather thanUITouch.TouchType.indirectPointer. This hybrid behavior has been added for ease of use for Device Hub, and does not reflect functionality available on physical devices. To validate your app’s full pointer behavior, select “Simulate Trackpad or Mouse” from the Device menu, test on a physical iPad with a paired pointing device, or use iPhone Mirroring. (48372360) (FB5341466)Device Hub adds a new way to pair iPhone, iPad and Apple Watch running iOS 27/iPadOS 27/watchOS 27 and later over a network.
This allows you to pair iPhones and iPads without requiring a cable, and provides a more reliable experience for pairing watches.
To get started, click the + button in Device Hub’s sidebar then select “Pair Nearby Device…”, or refer to the documentation at Managing your simulated and physical devices in Device Hub. (179418483)
Resolved Issues in Xcode 27 Beta 2
Fixed: Renaming a device in Device Hub may cut off the renaming prematurely. (178477422)
Fixed: Renaming a device now works properly if the sidebar is not visible (178538834)
Fixed: Added a preference to control whether key combos are sent to Device Hub or to the remote device.
defaults -container com.apple.dt.Devices write com.apple.dt.Devices hostKeybindingPolicy -int <value>Use these values to define a specific behavior:
0 - Device Hub uses rich key combos shortcuts
1 - Minimized when interacting with device
2 - Device Hub uses minimal key combo shortcuts (178920247)
Fixed: When pasteboard data takes longer than 5s to transfer (eg: misbehaving apps serving data, data taking a long time to process, or large data taking a long time to transfer), resolution will now only block apps attempting to paste for up to 5s. After the 5s timeout, the paste will fail but data will continue to be transferred in the background such that the paste can be retried and will succeed after the data has been transferred. (179132581)
Fixed: Improved reliability of pasteboard synchronization (179200521)
Fixed: Device Hub synchronization no longer attempts to synchronize pasteboard data provided by Universal Clipboard (179287395)
Fixed: If the user specified a location to save screenshots from Simulator, Device Hub will honor that location before falling back to the global default screenshot location.
Preference order:
com.apple.dt.devicesscreenCaptureLocationcom.apple.iphonesimulatorScreenShotSaveLocationcom.apple.screencapturelocation (179402694)
devicectl
New Features in Xcode 27 Beta 2
–json-output now fully supports passing JSON output to stdout. See devicectl –help for more details. (63583278)
Instruments
Resolved Issues in Xcode 27 Beta 2
Fixed: Instruments crashes when opening ‘Task Creation Calltree’ view in the ‘Swift Tasks’ instrument or ‘Change Call Trees’ view in the ‘SwiftUI’ instrument. (178067883)
Fixed an issue where the instrument library popover would not be large enough to show the full descriptions of all instruments. (FB23116314) (178280966)
Fixed a crash that occurred when opening a trace document while a run was zoomed to the maximum zoom level. (178444923)
Interface Builder
Resolved Issues in Xcode 27 Beta 2
Fixed: Xcode Settings > Components incorrectly showed a ‘Get’ button for simulators already downloaded and used with Rosetta. (179042726) (FB22978644)
Metal
Resolved Issues in Xcode 27 Beta 2
Fixed: An app may crash when run from Xcode with both Hardware Memory Tagging and GPU Frame Capture enabled. (178488388)
MusicKit
Resolved Issues in Xcode 27 Beta 2
Fixed:
MusicPlayer.QueueandMusicPlayer.Statemight not always update when using@Statein SwiftUI. (176947544)
Previews
Resolved Issues in Xcode 27 Beta 2
Fixed: When a RenderPreview fails because of an earlier and cached failure, the original error is now returned. (176817467)
Fixed: Attempting to Preview with an uninstalled runtime now shows a placeholder view rather than silently and incorrectly falling back to macOS. (177007609)
Fixed: Code inside #Preview now explicitly runs on the main actor, so it can call main-actor-isolated APIs without producing concurrency warnings or runtime check failures. (177394870)
Fixed: iOS previews in Resizable Canvas mode no longer constrained to specific size ratios. (177448190)
Fixed an issue where keyboard input was not delivered to previews running in the iOS Simulator in certain configurations. (177679215)
Fixed an incorrect error banner that could appear while using macOS’s Run as App preview feature (via the Live canvas mode button menu). (178092213)
Previews & Playgrounds
Resolved Issues in Xcode 27 Beta 2
Fixed: A clearer error is now shown when the canvas can’t access files in restricted macOS locations (such as Desktop, Documents, or Downloads) because Xcode has not been granted access. (176989186)
Fixed: Failed previews due to crashes now more frequently contain complete diagnostic information. (177011651)
Fixed an issue where previews could fail to build for targets that use the swiftc linker driver. (177021285)
Fixed a rare crash that could occur while updating a preview. (178097583)
Simulator
Resolved Issues in Xcode 27 Beta 2
Fixed: CoreSimulator logs are now rotated continually rather than only at CoreSimulatorService process start, preventing unbounded log growth on systems with long uptime. (177785650)
Fixed: After rebooting a running visionOS simulator, the ability to interact with the simulator is lost. (178635793)
StoreKit Testing in Xcode
Resolved Issues in Xcode 27 Beta 2
Fixed: StoreKit Testing in Xcode configurations that sync with App Store Connect display incorrect commitmentInfo for monthly subscriptions with a 12-month commitment. (178269160)
Testing
Resolved Issues in Xcode 27 Beta 2
Fixed: When running tests with the swift CLI, cross-framework issues from XCTest are not surfaced when running Swift Testing tests in Swift Package projects. (177970158)
Fixed: watchOS Unit and UI tests may not run on device. (178874363)
USDKit
Deprecations in Xcode 27 Beta 2
Meshes compressed using the USDKit export API or
usdcrush toolin Beta 1 cannot be decoded by Beta 2, and meshes from Beta 2 cannot be decoded by Beta 1. (177417812)
Wi-Fi Aware
Resolved Issues in Xcode 27 Beta 2
Fixed:
wifiAwareandwifiAware(_:)extensions on NWParameters are unavailable for configuring Wi-Fi Aware properties. (178019157)
Xcode
Resolved Issues in Xcode 27 Beta 2
Fixed: Devices used for development on a Mac without Xcode 27 installed remain compatible for development on Macs which have not upgraded to Xcode 27 without needing to reboot. (179359489) (FB23066098)
Updates in Xcode 27 Beta
General
Resolved Issues in Xcode 27 Beta
Fixed: The scheme action toolbar button now treats ‘without building’ variants, obtained by holding the Control key, as a one-shot operation and reverts to the normal build-then-perform action when no modifiers are used. (12239704)
Fixed: Due to a timing issue with the installation package, Simulator devices may not appear in Device Hub. (179040327) (FB22978070)
Apple Clang Compiler
New Features in Xcode 27 Beta
You can now annotate C++ operators declared within classes using API Notes. For example:
Tags: - Name: MyTag Methods: - Name: operator+ Availability: none ``` (148534260)
Background Assets
New Features in Xcode 27 Beta
Asset-pack manifests now support path wildcards, file exclusion, hard-coded source roots, and custom destination subpaths. (163943159)
You can reduce your app’s storage usage with localized asset packs. The system delivers the appropriately localized asset packs based on the user’s preferred languages. (163944365)
Use the new Steam Asset Converter to convert your Steam “depots” into asset packs. (163953178)
Xcode can now serve asset packs to your app while debugging on devices by setting a Background Asset Packs folder in the Run scheme action’s Options tab. (165230494)
C++ Standard Library
New Features in Xcode 27 Beta
The following C++ papers have been implemented:
Hashing support for
std::chronovalue classes (P2592R3)zip(P2321R2)std::optional<T&>(P2988R12)sub-
string_viewfromstring(P3044R2)Making
std::istream::ignoreless surprising (P3223R2)Add
std::views::indices(n)(P3060R3)Move-only types for
equality_comparable_with,totally_ordered_with, andthree_way_comparable_with(P2404R3)Checking if a
unionalternative is active (P2641R4(std::is_within_lifetime))Expose
std::atomic_ref’s object address (P2835R7)Comparisons for
reference_wrapper(P2944R3)Give
std::optionalRange Support (guarded by-fexperimental-library) (P3168R2)Fixes to
flat_mapandflat_set(P3567R2)Make
optional<T&>trivially copyable (P3836R2)Library Support for Expansion Statements (P1789R3)
Performance improvements:
The performance of associative and unordered containers has been significantly improved, with some functions showing improvement of up to 11x.
The performance of many algorithms has been improved (including
std::find,std::for_each|ranges::for_eachfor associative containers,std::rotate), resulting in a performance improvement of up to 3x.{std,ranges}::{generate, generate_n},{std,ranges}::{fill, fill_n}and{std,ranges}::distancehave been specifically optimized for segmented iterators, resulting in a performance improvement of up to 10x (and even up to 1600x fordistanceon non-random-access iterators).std::search_nfor random access iterators now tries to skip elements, resulting in a significant performance improvement (up to 70,000x in contrived cases).The
vector<bool>::reserve()algorithm has been optimized, resulting in a performance improvement of up to 2x.num_get::do_getintegral overloads have been optimized, resulting in a performance improvement of up to 2.8x.Some reallocations are now avoided in
std::filesystem::path::lexically_relative, resulting in a performance improvement of up to 1.7x.ofstream::writenow passes large strings to system calls directly instead of copying them in chunks into a buffer.
Miscellaneous improvements:
Multiple internal types have been refactored to use
[[no_unique_address]], resulting in faster compile times and reduced debug information.std::alignis now an inline function, which allows the compiler to better optimize calls to it.std::atomic::waithas been refactored to accept more types to use platform native wait functions directly. This is guarded behind the ABI Macro_LIBCPP_ABI_ATOMIC_WAIT_NATIVE_BY_SIZE. (178191000)
Deprecations in Xcode 27 Beta
The following items have been deprecated or removed:
The minimum supported deployment target on macOS for the C++ standard library has been increased to 11.0.
Potentially breaking changes:
The algorithm for
multi{map,set}::findhas been modified so that it doesn’t necessarily return an iterator to the first equal element in the container. This was never guaranteed by the Standard, but libc++ previously happened to always return the first equal element. Starting with this release, code relying on the first element being returned fromfindwill be broken, andlower_boundorequal_rangeshould be used instead.The algorithms for
std::{map,set}lower_boundandupper_boundoperations were modified so that their result changed for comparators that are not a strict weak order. Being a strict weak order was always a requirement of the Standard and still is, however in this release libc++ changes the behavior ofstd::{map,set}for such comparators. Since this may be tricky to work around in some cases, an escape hatch is provided in this release: defining_LIBCPP_ENABLE_LEGACY_TREE_LOWER_UPPER_BOUNDwill revert to the historical implementation of these operations. That escape hatch will be removed in an upcoming release (likely in the next release).The ABI flag
_LIBCPP_ABI_NO_REVERSE_ITERATOR_SECOND_MEMBERhas been split off from_LIBCPP_ABI_NO_ITERATOR_BASES. If you are using this flag and require ABI stability, you should set_LIBCPP_ABI_NO_REVERSE_ITERATOR_SECOND_MEMBERas well.
ABI-affecting changes:
The ABI flag
_LIBCPP_ABI_NO_REVERSE_ITERATOR_SECOND_MEMBERhas been split off from_LIBCPP_ABI_NO_ITERATOR_BASES. If you are using this flag and require ABI stability, you should set_LIBCPP_ABI_NO_REVERSE_ITERATOR_SECOND_MEMBERas well.The internal types
__map_value_compare,__unordered_map_hasher,__unordered_map_equal,__hash_map_hasherand__hash_map_equalhave been refactored to use_LIBCPP_COMPRESSED_ELEMENTinstead of potentially inheriting from the types they wrap. At this point in time we are not aware of any ABI changes caused by this.ranges::iota_viewis now aware of__int128. This causesiota_view::difference_typeto change fromlong longto__int128in some cases.std::allocatoris now trivially default-constructible. The behaviour can be reverted by defining_LIBCPP_DEPRECATED_ABI_NON_TRIVIAL_ALLOCATOR. This compatibility macro is going to be removed in an upcoming release.bitset::operator[]now returnsbool, making libc++ conform to the Standard. The behaviour can be reverted by defining_LIBCPP_DEPRECATED_ABI_BITSET_CONST_SUBSCRIPT_RETURN_REF. This compatibility macro is going to be removed in an upcoming release. (178191050)
Coding Intelligence
New Features in Xcode 27 Beta
Google Gemini is now available in the coding assistant. (171990272)
Planning with agents is now first class in Xcode. Plans appear as editable Markdown artifacts next to the conversation. You can use dedicated UI to review, annotate, discuss changes to the plan, and approve before the agent proceeds. (172857081)
The Coding Assistant sidebar is now dedicated to displaying and organizing your conversations with real-time status and unread indicators, drag-and-drop grouping, archiving, and renaming. See at a glance which conversations are active or waiting for user input, and jump between them without losing context. Select multiple conversations to group, archive, or delete them in bulk. The context menu allows for opening conversations in new tabs, windows, or editor panes. (172926345)
The Preview Snapshot MCP tool can now render variants such as light/dark appearance, portrait/landscape orientation, and various type size overrides. It also supports specifying timelines for Widgets and toggle states for Live Activities. Taken together, this gives agents more flexibility in how they render previews in your codebase. (172961797)
Agents can now boot simulators, install and launch apps, synthesize touch events, and capture screenshots to verify UI behavior. (175179787)
Added new MCP tools to read, plan, and edit translations in String Catalog files. (176376425)
The toolbar now has a “New Conversation” button that lets you start a fresh conversation from anywhere in Xcode. When conversations are active, it shows a status indicator for easy monitoring at a glance. Click the status indicator to jump directly to the next conversation that needs attention. (176385678)
The Xcode MCP server has been updated with new tools that allow agents to debug projects by manipulating the active run state, interacting with and reading the contents of the debugger console; listing and switching between available schemes and run destinations and inspecting and modifying build settings, compiler flags, entitlements, and Info.plist keys. (176935844)
Agents in Xcode now have access to insights about your projects, such as crashes, disk writes, energy, hangs and launch issues impacting your app, helping reduce the time it takes to ship a fix. (177568662)
The coding assistant has moved out of the navigator into the editor area, with a completely redesigned conversation transcript. Agent-generated artifacts, like code diffs, plans, and SwiftUI preview snapshots, appear alongside the transcript, and annotations on code snippets and plan documents let you give targeted inline feedback without leaving context. (178288550)
Xcode now ships with Apple-built specialists for targeted tasks, like localization, UIKit resizing and accessibility. (178289150)
Agents in Xcode can now be extended with plugins that contain skills, MCP servers, and ACP agent configurations. Skills are invokable as slash commands with completion support. (178289210)
Coding Intelligence now includes a new security layer that monitors and controls filesystem access by coding agents and any processes they spawn. This can be enabled in Coding Intelligence settings. (178289431)
Xcode adds support for the Agent Client protocol. (178294840)
Agent Plug-ins can show custom icons and tool names for MCP servers they define by adding additional _meta fields to their JSON definitions.
{ "name": "MyGreatPlugin", "description": "An awesome MCP server configuration.", "version": "1.0.0", "mcpServers": { "MyGreatMCP": { "type": "http", "url": "...", "tools": [ "*" ], "_meta": { "ideToolIconPath": "./icon.svg", "ideToolIconRendersAsTemplate": true, "ideToolTitles": { "whoami": "Who Am I", "get-current-email": "Get Current Email Message" } } } } } ``` (178470032)
Resolved Issues in Xcode 27 Beta
Fixed: Buttons in the Coding Assistant’s prompt area now use more accessible labels and descriptions. (177462284)
Fixed VoiceOver getting trapped in the Coding Assistant prompt area. (177462397)
Debugging
New Features in Xcode 27 Beta
In projects using bridging headers, LLDB can now directly import explicitly built Swift modules and PCH from DerivedData. This can dramatically speed up the first expression or
poin a debug session involving a bridging header. (168272248)LLDB now provides a
language swift task treecommand, which prints a tree of all the Swift Tasks the debugger knows about. For more information, see the output ofhelp language swift task tree. (169471480)
File Template for Launch Tests
New Features in Xcode 27 Beta
Added a file template for launch tests that opts into
runsForEachTargetApplicationUIConfiguration, so the test runs across every combination of orientation, localization, and appearance your app supports. (168770106)
Foundation
Resolved Issues in Xcode 27 Beta
Fixed:
+[NSURL URLWithString:]no longer double-encodes the%of valid percent-escape sequences when encoding other invalid characters. (161588649) (FB20439045)
Icon Composer
New Features in Xcode 27 Beta
Icon Composer 2.0 supports a new sharper rendering mode for upcoming 2027 operating systems with support for refractivity, outside specular, and deeper shadows.
Use the group inspector to edit the new properties, and the toolbar to preview in either the new or original design generation.
When your icon looks great in both design generations, add it to your Xcode project and it will be used for all OS versions. (172404678)
Instruments
New Features in Xcode 27 Beta
xctrace recordallows you to pass recording options for Instruments from within the CLI. Use--show-recording-optionsto print available options for a template or instrument as a JSON. Pass a modified JSON file with customized options using--recording-options <json path>. (47649405) (FB5336460)Summary views in Instruments allows you to select multiple rows and copy the content. (50558735)
Instruments no longer rescales graphs to reflect the local maximum when the visible timeline region changes to simplify comparison of data across the tracks. To trigger manual rescaling to the current viewport, use View → Rescale menu item. (60970746)
Instruments now restores pinned tracks from the previous run when recording a new run. You can also save and restore pinned tracks explicitly using View → Track States menu actions. (69098114)
System Trace now unifies system calls, VM faults, and thread states into a single plot. When zoomed out, a new blending algorithm summarizes activity so dense regions remain readable. You can follow the chain of scheduling events for a thread using left/right key navigation. The inspector panel shows details about each event, providing quick actions like pinning a thread that made another thread runnable. (163589543)
Foundation Models Instrument now helps you trace and debug Foundation Models usage in your app with quick inspection of instructions, prompts, responses, token usage, and inference performance. (164223804)
A new inspector displays information about the selected event and provides quick actions for pinning or filtering tracks and filtering the detail view. (165724281)
Swift Concurrency: Tasks, Collections, Actors and Executors now have a detail option “Profile” which displays Call Tree made of profiling data captured while in state Running. This detail is only visible when recording with the Swift Concurrency instrument alongside Time Profiler or CPU Profiler. (168542912)
When recording os_log Instrument together with an Instrument that creates process or thread tracks (like Time Profiler, CPU Profiler, or others), you can now overlay logging information on these tracks by enabling “os_log” graph in the “Track Graph Display” popover. (170113899)
A new Swift Executors instrument is now available. It displays tracks for the Cooperative Thread Pool, the Main Actor, and any types conforming to TaskExecutor or SerialExecutor. Instruments properly captures and displays on iOS 27, iPadOS 27, macOS 27, tvOS 27, watchOS 27, visionOS 27. On older systems, executor names fall back to “Unknown executor”. (171189428)
Swift Concurrency Task tracks now appear in new “Swift Task Collection” tracks. Instruments sorts Tasks into Collections based on their name or place of creation. You can switch Collection tracks between displaying task lifetimes and task states. (173885662)
When opening files like
.atrcor.logarchive, you can now specify a preferred template using ‘Settings → General → Templates for Import’ (58151217)New setting in the ‘General’ tab allows for overriding preferred template used for opening files such as .atrc or .logarchive. (73868296)
Call Tree and Top Functions tables now persist selected rows. (120794625)
Individual backtraces shown in the inspector now offer improved collapsing logic and are more consistent with the call tree’s “Heaviest Stack Trace” view. (130279660)
When a profiled process terminates, the timeline view displays a flag showing the termination reason and exit code. (130528710)
SwiftUI instrument adds a “Summary of Updates” focus action to the View Hierarchy detail view that makes it easier to see details about what updates a view in the view hierarchy is performing. (147328805)
Allocations instrument now visualizes tagged allocations when a process is running with Memory Integrity Enforcement with a ‘(tagged)’ suffix. ‘Statistics’ view contains opt-in columns to view the count and total size of these allocations in aggregate. (149409607)
States annotated with the StateReporting API are visible in Instruments as part of the Points of Interest instrument track. Expand top level track to inspect all captured domains and state transitions. (159709795)
The SwiftUI instrument now records additional information about layout passes and the reasons a layout computation wasn’t cached. (162137231)
Animation Hitches instrument now supports visionOS on devices running visionOS 27.0 or later. (163315840)
You can now drag and drop files such as
.atrc,.logarchive, or.sampleonto the Instruments sidebar. This action creates a run for each of the imported files. (167697855)The interface to enable and disable graphs on tracks in the Instruments timeline now uses checkboxes to quickly toggle graph visibility on or off. (168232126)
Swift Concurrency: When recording all processes, Tasks and Executors are now grouped in process hierarchies. (168542643)
Swift Concurrency: Selecting a bar chart interval in an Actor or Executor Queue plot now displays the list of waiting tasks in the Inspector. Tasks enqueued before the trace started aren’t displayed. (169113107)
You can now pin threads displayed in call tree views using the context menu. (169208779)
os_signpost Instrument now displays a track for each signpost name, nested below the category level in the track hierarchy. (170272998)
Swift Concurrency Tasks and Actors are now displayed even if their lifetime began before the trace. Instruments makes a best effort to display as much data as possible. Tasks now can have “Unknown” state. Tasks and Actors names may depend on order of incoming data. (171187553)
xctrace exportallows you to restrict time range of an export usingtime-start,time-end,durationarguments. (171320057)When you open a
.tracetemplatefile that isn’t saved in the Instruments user templates folder, the template is now copied into that location and subsequently accessible in the “User” tab. (172516226)System Trace template now graphs thread priority over time to help you understand issues related to resource starvation. (173463486)
xctrace exportof traces containing Allocations Instrument now contains a backtrace for each row element in the ‘Allocations List’ detail. Backtraces appear only when captured in the trace data. (173791067)The View menu has been reordered to clarify the function of each menu item. (177008275)
Resolved Issues in Xcode 27 Beta
Fixed an issue where the Hangs instrument would flag false-positive responsiveness issues in non-UI processes like daemons. (110146539)
Fixed an issue where profiling an iOS app that was already open would close the app instead of relaunching it. (150320702)
Fixed an issue where Instruments uses significant amount of memory when importing .atrc files. The memory footprint of the application in these scenarios is on average 1.5GB smaller. (162707266)
Fixed an issue where the detail filter was not saved or restored when switching details in the Allocations, Leaks, and VM Tracker instruments. (167717200)
Fixed a performance issue where the timeline would blink or animate unnecessarily when zooming into content. (168081396)
Fixed an issue where time selection would be cleared when starting a new recording. (172327572)
Fixed an issue where the Cause & Effect graph in the SwiftUI instrument could use large amounts of memory when zoomed into a very small time range. (172983697) (FB22288896)
Fixed issues in the App Lifecycle graph: removed the inaccurate ‘Process Creation’ phase and fixed an issue where the ‘System Interface Initialization’ phase appeared twice. (174190644)
Fixed an issue where Instruments target chooser would always resolve symlinks to binaries, preventing BusyBox binary profiling from working. (176476530)
Fixed an issue where warnings and errors toolbar icon appeared clipped. (151921162)
Fixed an issue where tooltips for events would sometimes show incorrect duration when zoomed out. (154788572)
Fixed an issue where the last few libraries in the Symbols window were hidden behind the bottom bar. (171009409)
Fixed an issue where the pinned view would resize to fit its content after you had already resized it to your preferred size. (173461626)
Fixed an issue where ‘Auto Expand’ option in call tree ‘Find’ wouldn’t be enabled by default. (174513327)
Fixed an issue where Allocations instrument graph constantly rescaled when recording in the immediate mode. (177577222) (FB22824426)
Deprecations in Xcode 27 Beta
Instruments now requires target iOS, watchOS and tvOS devices with versions of at least iOS 17, watchOS 10, or tvOS 17. (166097304)
Intel Deprecation
New Features in Xcode 27 Beta
Build targets with a min deployment target set to macOS 27.0 or DriverKit 27.0 will not build Universal by default. The
ARCHS_STANDARDbuild setting will no longer include x86_64 whenMACOSX_DEPLOYMENT_TARGETorDRIVERKIT_DEPLOYMENT_TARGET>= 27.0. The x86_64 architecture can be added to theARCHSbuild setting if this is needed. (161837535)
Deprecations in Xcode 27 Beta
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. (162138432)
Interface Builder
New Features in Xcode 27 Beta
Introducing a new Interface Builder compilation mode,
toolchain, for UIKit (Cocoa Touch) based documents. Enabled by default,toolchainallows compiling IB documents without the need to download a simulator, which is especially useful for build servers. Should you experience issues during this transition period, you can opt out via theIBC_COCOATOUCH_COMPILER_MODE = simulatorbuild setting or using--cocoatouch-compiler-mode simulatorwhen manually invokingibtool. If you opt out, please file Feedback and include any errors you may have received fromibtoolso we can investigate. (114401122)
Linking
Deprecations in Xcode 27 Beta
The ld64 linker has been removed and the
-ld_classicoption is no longer supported. (165165518)
Localization
New Features in Xcode 27 Beta
Exporting localizations now extracts
NSLocalizedStringand similar macros from header files in addition to implementation files. (19191207) (FB5500560)Agents in Xcode can now be used to translate strings in String Catalogs. You can ask an agent to translate strings ranging from a single feature to an entire project, into one or more languages.
Xcode will add languages to your project settings, create missing String Catalogs, and provide guidance and context to agents as they translate. (111514130) (FB12479690)
Strings in code with a localization comment of “do not translate” will be automatically marked as “Don’t Translate” in String Catalogs and
translate="no"in exported XLIFFs. (111715368)Exported XLIFFs will use
state-qualifier="leveraged-mt"to indicate strings that were translated using machine translation. (161775544)The String Catalog editor now includes a Generate Translations button as a shortcut to ask an agent to translate strings. You can also use the context menu to translate specific strings. (169559347)
Resolved Issues in Xcode 27 Beta
Fixed an issue where automatic strings could get removed from String Catalogs when declared using AppIntent APIs that take table parameters. (174776249)
Fixed a crash that could occur when
BUILD_ONLY_KNOWN_LOCALIZATIONSis used in a target with multiple Asset Catalogs. (176827483)
Metal
New Features in Xcode 27 Beta
The Diagnostics Panel in the Scheme Editor exposes more Metal validation options including logging non-fatal actions, validating load and store actions, logging resource allocation stack traces, and controlling GPU stack overflow detection. (162401628)
The Metal Performance HUD exposes more MetalFX related metrics such as jitter sequence length and motion vector scale. The configuration panel includes a new “Overrides” panel when MetalFX is enabled, and allows customization of jitter multiplier, motion vector scale and exposure visualization for debugging purposes. (162557993)
The Metal Capture popover includes a new “Include MetalFX temporal scaler history” advanced option that improves texture quality during replay when your app uses MetalFX temporal scaling. (169816556)
The Metal Capture popover includes a new “Optimize shared memory capture” advanced option that improves capture performance and reduces GPU trace size on disk. (170023938)
Resolved Issues in Xcode 27 Beta
Fixed: The Queue Debugging setting to Enable Backtrace Recording is off by default. To view the process grouped by dispatch queues in the debug navigator, or to get recorded backtraces indicating the originating dispatch operation when viewing the process grouped by thread, please enable the setting in the scheme editor under Run > Options > Queue Debugging > Enable Backtrace Recording (164183224)
On Demand Resources
Deprecations in Xcode 27 Beta
On Demand Resources and the
NSBundleResourceRequestAPI are deprecated. Use Background Assets instead. (170066290)
Organizer
New Features in Xcode 27 Beta
The Insights Overview summarizes high-impact performance regressions for metrics and diagnostic reports for your app. Use it to plan and prioritize performance engineering work. (159975360)
The new Hitches metric replaces the Scrolling metric in the Organizer, now displaying animation hitches for all animations in your app. Use it to get a comprehensive view of animation performance. (160333794)
Storage metrics are now available in Xcode Organizer, allowing you to monitor their app’s Documents & Data and App Size across releases and catch regressions in cache usage and bundle size. (160837780)
AI-driven analysis is now available for diagnostics in Xcode Organizer, enabling expert analysis of power and performance issues and seamless integration with source code and the Coding Assistant. Quickly resolve the highest-impact performance issues in your app by using Generate Recommendations for Crash, Energy, Disk Write, Hang and Launch diagnostics. (177568727)
Metric goals are now available for Battery Usage, Disk Writes, Hang Rate, Hitches, Memory, and Storage metrics, allowing you to prioritize performance engineering across more areas. Similar-app goals are now supported for Hang Rate, On-screen Battery Usage, Disk Writes, and Storage. Launch Time similar-app goals have been refined for improved accuracy, establishing new baselines. (177572744)
Previews
New Features in Xcode 27 Beta
Canvas can now display a grid of previews for each argument passed to the new
#Preview(arguments:)syntax. Clicking on a preview in argument or variant grids opens the preview in the Interactive mode. (167544057)Holding command will cause the input events (zooming and scrolling) to be handled by the canvas. This can be disabled with the new ‘Send Command-Modified Input to Canvas’ toggle in the Editor > Canvas menu. (170072429)
iOS previews have a new Resizable Canvas mode that enables viewing the preview in arbitrarily sized containers (171013421)
Previews & Playgrounds
New Features in Xcode 27 Beta
Each #Preview and #Playground tab can now be pinned independently in the canvas. (167543928)
Resolved Issues in Xcode 27 Beta
Fixed an issue where there was a long delay before Canvas showed an error when a likely crash occurred. (168097944)
Simulator
New Features in Xcode 27 Beta
simctlanddevicectlnow support rebooting a simulator using the reboot command. (172303413)
Source Editor
New Features in Xcode 27 Beta
All new Markdown editor. View markdown files in your project and from agents in rendered form. Create and edit markdown using familiar formatting tools. View markdown as source code and see the rendered preview by activating Xcode’s canvas. (175022151)
Resolved Issues in Xcode 27 Beta
Fixed an issue in macOS 27 where clicking the close button in an expanded macro added a breakpoint rather than closing the expansion. You can use Editor > Hide Macro Expansion to close the expansion. (174376098)
StoreKit Testing in Xcode
New Features in Xcode 27 Beta
New StoreKit configuration UI to configure In-App Purchase offer codes, and new off-device purchase options to test purchases with IAP offer codes via the Transaction Manager. (141012907)
Subscription Bundles can be configured for local testing in the StoreKit Configuration. (164203930)
Subscription Suites can be configured for local testing in the StoreKit Configuration. (166899262)
Add support for creating volume purchase transactions for 1-month and 1-year auto-renewing subscriptions through the Xcode Transaction Manager. (169041777)
Swift Compiler
New Features in Xcode 27 Beta
The Swift dependency scanner has been optimized to avoid redundant setup work and header searches when looking up Clang modules during a single dependency-scan action, substantially improving scanning performance.
As a consequence of this change, 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.
The most common cases are 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. (136303612)
Swift Package Manager
New Features in Xcode 27 Beta
When one or more test targets in a package experience a test failure,
swift testsummarizes them at the end. (168311253)swift testnow supports repeating test cases until a condition is met. Pass--maximum-repetitionsand--repeat-until [pass|fail]toswift testto repeat your tests until they pass or fail. Only those test cases that match the repeat condition will be repeated. (177561078)
Swift/C++ Interoperability
New Features in Xcode 27 Beta
When calling a C++ constructor that has parameters with default expressions, you no longer have to pass all arguments explicitly in Swift. (118987713)
You can now convert Swift closures to instances of
std::function. For example:// C++ void processNumbers(const std::vector<int> &numbers, std::function<void(int)> op);// Swift processNumbers([1, 2, 3], .init { print($0) }) ``` (133777029)You can now annotate constructors of foreign reference types as SWIFT_RETURNS_RETAINED or SWIFT_RETURNS_UNRETAINED. (135368369)
Mapping
__counted_byandstd::spanparameters annotated with__noescapeto Swift Span no longer requires the SafeInteropWrappers experimental feature flag.Mapping return values to Span using
__lifetimeboundis still guarded by the experimental feature flag.For more information, see https://www.swift.org/documentation/cxx-interop/safe-interop/#safe-overloads-for-annotated-spans-and-pointers (148994016)
Raw pointers to intrusively reference counted types (annotated with
SWIFT_SHARED_REFERENCE) are imported as Swift classes. Starting with this release you can now annotate smart pointer types pointing to such reference counted types withSWIFT_REFCOUNTED_PTRmacro to bridge their instances to Swift classes. For example:struct SWIFT_SHARED_REFERENCE(...) SharedObj {}; template <class T> struct SWIFT_REFCOUNTED_PTR(.getPtr) Ptr { Ptr(T* ptr); T *_Nullable getPtr() const { return ptr; } }; using ObjPtr = Ptr<SharedObj>; void takesSmartPtr(ObjPtr p);The function
takesSmartPtris imported to Swift as:func takesSmartPtr(_ p: SharedObj?) ``` (156521316)Previously, safe wrappers could not be generated for functions where the signature contained template instantiations. Any template instantiation would have to be referred to using a typedef instead.
Safe wrappers can now be generated for functions without wrapping
std::spanparameter types in typedefs, if they are annotated with__noescape. Any other template instantiation in the signature still prevents generating a safe wrapper, unless hidden behind a typedef.Example:
// Already supported: using IntSpan = std::span<int>; void foo(IntSpan x __noescape); // Now this also works: void bar(std::span<int> y __noescape); // The return type template instantiation here still prevents generating a safe wrapper: std::span<int> baz(std::span<int> z __noescape); ``` (167712240)
System
New Features in Xcode 27 Beta
System now provides Swift APIs for the C
stat,lstat,fstat, andfstatatsystem calls. This includes a newStattype with initializers fromFilePath,FileDescriptor, or a C string;FilePath.stat()andFileDescriptor.stat()instance methods; and supporting types (FileType,FileMode,FileFlags,UserID,GroupID,DeviceID, andInode). See SYS-0006 for more details. (160612181)
System Trace: Quality of Service
New Features in Xcode 27 Beta
Thread Activity Instrument now displays Quality of Service of individual threads. Effective QoS is displayed by default, Requested QoS is hidden by default (use the track dropdown menu of Thread items in order to reveal it). (173043672)
Testing
New Features in Xcode 27 Beta
In your Test Plan, you can control how the system responds to target application crashes during UI testing by choosing one of four severity levels: off, warning, failure (default), or fatal failure. (168107814)
Added a filter to the test plan configurations tab. (168608491)
Added recent tests and open tests filters to the Test Navigator. (168608830)
When you call an XCTest or Swift Testing assertion within a test from the opposite framework, you will see a runtime issue with warning severity if the assertion failed. Control this behavior with the new Swift Testing and XCTest Interoperability setting in your test plan. (170335449)
Updated the test plan JSON to sort tags, making it easier to review changes. (174178766)
Resolved Issues in Xcode 27 Beta
Fixed an issue where adding an attachment to a test case during the
XCTestObservationcallbackstestCaseWillStart(_:)ortestCaseDidFinish(_:)by callingXCTestCase.add(_:)did not persist the attachment in the results. (89059895)Fixed: The ‘Test Repetition Mode’ setting now only repeats individual Swift Testing test cases, rather than repeating the entire test plan. (130508488)
Fixed: Swift Testing is now better-able to associate recorded issues with the tests that generated them when they occur in detached Swift tasks, on dispatch queues, or on background threads. (169036231)
Fixed: Large Swift Testing test suites with many parameterized test cases have significantly better performance in Xcode 27. (171415950)