Stay up to date on macOS Release Notes releases
Join Releasebot and subscribe to release note updates from hundreds of products.
- September 2025
- No date parsed from source.
- Detected by Releasebot:Sep 29, 2025
macOS Ventura 13.5 Release Notes
Update your apps to use new features, and test your apps against API changes.
The macOS 13.3 SDK provides support to develop apps for Mac computers running Ventura 13.5. The SDK comes bundled with Xcode 14.3, available from the Mac App Store. For information on the compatibility requirements for Xcode 14.3, see Xcode 14.3 Release Notes.
Fixed an issue where iPod shuffle (3rd and 4th generation) cannot be synced due to an unknown error (-244). (107114363)
Fixed an issue where NSHostingView would not appear when printed using NSPrintOperation. (109412691)
- September 2025
- No date parsed from source.
- Detected by Releasebot:Sep 29, 2025
macOS Ventura 13.4 Release Notes
This release bundles macOS 13.3 SDK support with Xcode 14.3, guides app testing against API changes, and includes fixes for UI layout, Unicode bookmark resolution, and Image Renderer crashes in Share Links, plus a workaround for a Studio Display firmware update issue.
Update your apps to use new features, and test your apps against API changes.
The macOS 13.3 SDK provides support to develop apps for Mac computers running Ventura 13.4. The SDK comes bundled with Xcode 14.3, available from the Mac App Store. For information on the compatibility requirements for Xcode 14.3, see Xcode 14.3 Release Notes.
Apple Studio Display firmware update starts showing progress but never completes. (107287354)
Workaround: To install other updates including future macOS Beta Updates, click "More info..." in Software Update Settings, uncheck Apple Studio Display firmware update, and click "Install Now."
Fixed increasing column-count above 2 not updating the layout. (71808738)
Fixed a regression in macOS Ventura 13.3 where a security check causes bookmark resolution to fail when the path contains Unicode characters stored with composed normalization. As an example, this prevented files in Finder from opening when double-clicked. (107550080)
Fixed: Using Image Renderer within a Share Link's preview closure crashed the running application. (107763234)
- September 2025
- No date parsed from source.
- Detected by Releasebot:Sep 29, 2025
macOS Tahoe 26.1 Beta Release Notes
macOS Tahoe 26.1 SDK with Xcode 26.1 enables Tahoe 26.1 beta app development. Recompile to adopt API changes and fixes across SwiftUI, assets, Game Controller, and sudo. Some known issues remain in Apple TV app.
Update your apps to use new features, and test your apps against API changes.
The macOS 26.1 SDK provides support to develop apps for Mac computers running Tahoe 26.1 beta. The SDK comes bundled with Xcode 26.1, available from the Mac App Store. For information on the compatibility requirements for Xcode 26.1, see Xcode 26.1 Release Notes.
Apple TV app
Known Issues- In Apple TV app on macOS, the Search bar is missing. (159419539)
Background Assets
Resolved Issues- Fixed: Asset Pack Manager .url(for:) unexpectedly throws an error when looking up the URL for a locally available asset file. (157959878) (FB19512759)
Game Controller
Resolved Issues- Fixed: The time returned by GCPressed State Input .last Pressed State Timestamp is not in the correct time domain. (159124910)
sudo
Known Issues- There are now added security checks when loading the /etc/sudoers configuration and /etc/sudoers.d folder. When the owner is not set to root, the configuration is ignored and sudo might not work. (155330149) (FB18698477)
- Workaround: Change the files to proper owner using Recovery and chown 0: 0 /etc/sudoers.
SwiftUI
Resolved Issues- Fixed: The navigation Link Indicator Visibility modifier crashes when run on iOS 17, iOS 18 and aligned releases. You must recompile your app against the 26.1 SDK to receive this fix. (158236264) (FB19613386)
See Also
- macOS 26
- mac OS Tahoe 26 Release Notes
Update your apps to use new features, and test your apps against API changes.
- September 2025
- No date parsed from source.
- Detected by Releasebot:Sep 29, 2025
macOS Tahoe 26
macOS Tahoe 26 SDK launches with Xcode 26, enabling apps for Tahoe 26 and bringing features like Recovery Assistant, Foundation Models, Accessibility labels in App Store, Sparse Image support, and various Catalyst, Metal, and SwiftUI updates. It also deprecates AGL, updates many subsystems, and fixes numerous issues across Finder, Photos, Messages, and more.
Overview
The macOS 26 SDK provides support to develop apps for Mac computers running Tahoe 26. The SDK comes bundled with Xcode 26, available from the Mac App Store. For information on the compatibility requirements for Xcode 26, see Xcode 26 Release Notes.
General
New Features
- Recovery Assistant is a new way to recover your device if it doesn’t start up normally. It can look for problems and attempt to resolve them if found. (151856202)
AGL
Deprecations
- AGL is no longer available in the macOS SDK. AGL was previously used to present OpenGL content in Carbon apps, and Carbon no longer exists in the SDK. AGL symbols now do nothing on 64-bit systems, including Intel x86_64 and Apple Silicon Macs. It is safe to remove any AGL usage and stop linking AGL. OpenGL still remains in the SDK. (153913819)
AirPlay
Known Issues
- AutoMix song transitions might not work as expected when streaming with AirPlay. (155925891)
App Store
New Features
- A new Accessibility section has been added to the App Store product pages that highlights accessibility features within apps and games. These Accessibility Nutrition Labels give users a new way to learn if an app will be accessible to them before they download it, and give developers the opportunity to better inform and educate their users on features their app supports. (138344118)
Resolved Issues
- Fixed: Updating iOS or iPadOS apps on macOS from the App Store might hang with a spinning progress indicator or with the progress partially complete. (152878930)
AppKit
Resolved Issues
- Fixed: With TextKit, the text Range By Intersecting With Text Range method in NSTextRange does not return nil for non-intersecting ranges. (138067979)
Apple Intelligence
New Features
- The Foundation Models framework provides you with direct access to the on-device large language model at the core of Apple Intelligence. For release notes about the framework, see the Foundation Models framework section below. (139996377)
Resolved Issues
- Fixed: In Image Playground and Genmoji, the new modifiers to customize appearance do not work for Japanese-language users. Image creation is blocked when attempting to add modifiers to its appearance. (151833204)
- Fixed: Model quality output degrades after extended, repeated inferences of the same adapter. (152468267)
Known Issues
- Xcode features like Predictive Code Completion and the coding assistant might require Apple Intelligence to be enabled. (150889516) Workaround: Enable Apple Intelligence in System Settings.
AssistantSchemas
Resolved Issues
- Fixed: If you have adopted any of the following email AssistantSchemas, you will experience a compilation error due to a parameter type change: create Draft, update Draft, reply Mail, forward Mail, message, and draft. (148633307)
AuthenticationServices
New Features
- ASAuthorizationControllerRequestOptions.preferImmediatelyAvailableCredentials now works for passkey registration requests. This request only shows UI when the device is immediately able to create a passkey; otherwise, no UI is shown. (150688929)
AVFoundation
Resolved Issues
- Fixed: AVPlayerLayer does not ensure a valid video frame is always displayed during item replacement, as the isReadyForDisplay property does not remain true during transitions. (151902458)
Background Assets
Resolved Issues
- Fixed: The system might not update downloaded asset packs as frequently as is expected for apps that internal testers install from TestFlight. (143281558)
- Fixed: Asset pack downloads might fail unexpectedly or stall indefinitely, including across reboots. (151498902)
- Fixed: The system might not deliver status updates to your app for ongoing asset pack downloads. (151647839)
- Fixed: An iOS or iPadOS app on an Apple silicon Mac might appear openable in TestFlight even while its essential assets are still being downloaded. (151709449)
- Fixed: Pausing and resuming an app installation or update while the system is downloading essential asset packs might cause the installation or update to stall indefinitely. (151942388)
- Fixed: The installation of large asset packs might fail. (153128086)
Catalyst
New Features
- For Catalyst apps built with the latest SDK, UINavigationItem.title is the window title rather than the window subtitle. (142423319)
- For Catalyst apps built with the latest SDK, UIBarButtonSystemItem.fixedSpace and .flexibleSpace are now bridged to NSToolbar. The system no longer ignores fixed and flexible spaces when UIBarButtonItems are automatically converted to the window toolbar in the Mac idiom. However, the width specified via fixedSpaceItem(ofWidth:) is ignored. (145262754)
CloudKit
Resolved Issues
- Fixed: CloudKit sharing URLs do not launch third-party apps. (151778655)
Contacts
Known Issues
- Characters for Monogram Avatars in some non-English languages might show up as unexpected symbols. (154824077)
CoreData
Resolved Issues
Fixed: In beta 5 SDK, CoreData changed several Sendable annotations to resolve compatibility issues with Swift 6’s new MainActor default isolation feature. These changes include marking NSManagedObject as NS_SWIFT_NONISOLATED NS_SWIFT_NONSENDABLE, marking NSManagedObjectContext as NS_SWIFT_NONISOLATED NS_SWIFT_SENDABLE, and requiring NS_SWIFT_SENDABLE closures for the family of perform, performBlock, performBlockAndWait and similar methods. These changes are ABI compatible with past releases but might introduce new warnings while building source code that violates the longstanding CoreData concurrency guidelines.
NSManagedObject are mutable reference types inextricably related to others in a graph and cannot be made Sendable. They are expected to be isolated to the scope of the NSManagedObjectContext that creates or fetches them.
NSManagedObjectContext is a style of actor which encapsulates its own dispatch queue. While it’s impermissible to use many methods on NSManagedObjectContext from other threads, it is permissible to pass references around to invoke the performBlock family of methods, for the purpose of routing a Sendable closure to its managed dispatch queue. CoreData supports a user default -com.apple.CoreData.Concurrency.Debug 1 which can be used to enable additional assertions. (153848710) (FB18216198)
Deprecations
This release removes support for the following deprecated NSPersistentStore option keys: ◦ NSPersistentStoreUbiquitousContentNameKey ◦ NSPersistentStoreUbiquitousContentURLKey ◦ NSPersistentStoreUbiquitousPeerTokenOption ◦ NSPersistentStoreRemoveUbiquitousMetadataOption ◦ NSPersistentStoreUbiquitousContainerIdentifierKey ◦ NSPersistentStoreRebuildFromUbiquitousContentOption These keys have been deprecated for more than a decade. Affected apps rebuilt with the iOS or macOS 26 SDK will get errors. Apps built against older SDKs will log warnings when opening the store.
The on-device persistent store will be fully usable after these keys are removed from options dictionary, albeit without syncing. For data syncing, these APIs were superseded by NSPersistentCloudKitContainer in iOS 13 and SwiftData in iOS 17. If absolutely necessary, the iCloud content remains accessible in the containers with the last baseline as a .zip archive file. (157297746) (FB19286235)
Disk Images
New Features
- macOS now supports the Apple Sparse Image Format (ASIF). These space-efficient images can be created with the diskutil image command-line tool or the Disk Utility application and are suitable for various uses, including as a backing store for virtual machines storage via the Virtualization framework. See VZDisk Image Storage Device Attachment. (152040832)
Documents
Known Issues
- EPUB files are shown with an app icon rather than a document icon. Other document types might also be affected. The icon shown is the icon of the app set to open the document. The document opens normally. (154800649)
Finder
Resolved Issues
- Fixed: Finder does not display Dark Mode app icons or tinted folder colors when the Folder Color setting in System Settings > Appearance is set to Automatic. (152193702)
Known Issues
- Users who enable path bar or status bar in Finder and use list view might be unable to access the last item in the list. (151917092) Workaround: Disable path bar or status bar temporarily.
Foundation
New Features
- Interpolating non-localized types into a LocalizedStringResource/String(localized:)/AttributedString(localized:) value will now display a deprecation warning instead of potentially falling back to a fully-unlocalized string. Provide a localized value to interpolate into the text instead, or silence the warning by wrapping the unlocalized value in a call to String(describing:). (126876158)
- ISO8601Format Style now allows fractional seconds, regardless of the setting of includingFractionalSeconds. Additionally, ISO8601Format Style now allows hours-only time zone offsets. (136950769)
Resolved Issues
- Fixed: Functions that initialize a string from a C-string pointer do not validate that the provided encoding is a valid encoding for C-strings. (143756086) (FB16417968)
Foundation Models framework
New Features
- LanguageModelSession.prewarm() now caches the instructions and prefix of your prompt, in addition to loading system resources. The best place to use prewarm() is when your app is waiting for user interactions that might trigger response generation. This will reduce the time to the first-generated token. (152381043)
- #Playground in Xcode now allows for filing feedback for Foundation Models framework responses. (153770707)
- The .contentTagging use case now supports non-English languages. You can query the supported languages using SystemLanguageModel(useCase: .contentTagging).supportedLanguages. Tags will be generated based on the language of the prompt. (155801948)
- When you use guided generation, the framework now supports programmatically detecting when and why the model refuses to respond when the content is not unsafe. In previous beta releases, this manifested as a guardrail violation. Now you can catch a specific error case LanguageModelSession.GenerationError.refusal and obtain a model-generated explanation for why it refused to respond. Depending on your use case, you might be able to display the explanation in your UI. (156086748)
- In GeneratedContent, you can use the isComplete property to check whether the content was fully generated by the model. (156109416)
- When using guided generation, you can now access the underlying weakly typed GeneratedContent by accessing the rawContent property on Response or ResponseStream. (156351123)
- New guardrails mode Guardrails.permissiveContentTransformations allows transformations of content that might otherwise violate the default guardrails. Use this mode for text-to-text tasks, such as summarization and rewrite. (156721060)
Resolved Issues
- Fixed: When you pass includeSchemaInPrompt: false to respond or streamResponse, it is not respected. (151926006)
- Fixed: Custom @Generable types named Number or Boolean might not function reliably in guided generation. (152280144)
- Fixed: Tool calling might not function properly if primitive types such as Int, String, or Bool are used as the argument. (152318534)
- Fixed: In an Xcode Playground, requests made to the model might receive a “rate limit exceeded” error. (152325506)
- Fixed: Model requests in macOS command line tools might experience rate limiting. (152681332)
- Fixed: Generable types with a recursive definition lead to a SchemaError when generating a response. (153147722) (FB17962270)
- Fixed: A prompt containing Chinese might lead to error “Unsupported language zh-hans detected”. (153151710) (FB17963656)
- Fixed: Generable types cannot be made public due to a bug in the Generable macro. (153216183) (FB17990794)
- Fixed: Requests to the model might experience rate limiting, even when the device is connected to power. (153216632)
- Fixed: The Foundation Models framework cannot be imported when building for Mac Catalyst. (153255533) (FB18004324)
- Fixed: Creating a LanguageModelSession with tools that have duplicate names leads to a fatal error. (153426645) (FB18074984)
- Fixed: When using guided generation and tool calling together, some requests might lead to LanguageModelSession.GenerationError.decodingFailure due to a bug in constrained decoding. (153773704) (FB18190120)
- Fixed: When creating a session with a transcript, any new tools you attach to the session might not be used. Additionally, if your transcript contains tools from a previous session, those tools must be passed as the tools: argument in the new session in order to function properly. (154904647)
- Fixed: Some prompts erroneously return an error indicating a guardrail violation (FoundationModels.LanguageModelSession.GenerationError error 2). (155273863)
- Fixed: When using tool calling with guided generation, tools might not get called. (155313086) (FB18691470)
- Fixed: Generating an enum with associated values through a dynamic schema crashes with a SchemaError. (155957346) (FB18878026)
- Fixed: In some cases, requests you make to the model erroneously throw a guardrail Violation for all prompts due to model assets not fully downloaded. (156223847) (FB18944619)
Known Issues
- Some instructions and prompts to the model might not lead to expected responses. Use Feedback Assistant to report satisfactory or unsatisfactory cases. When applicable, you can use LanguageModelSession.logFeedbackAttachment() to serialize the feedback to a JSON file and attach it to Feedback Assistant. (152318091) Workaround: Refine your instructions and prompts using #Playground in Xcode. When applying guided generation with a @Generable type, add @Guide with a custom description on properties to steer the model’s responses.
- If Argument type is an enum with associated type, tools will encounter a ToolCallError with an underlying decoding Failure when the model attempts to call it. (156723065) Workaround: Wrap the enum in a struct.
Full Screen
Resolved Issues
- Fixed: You might experience layout issues when going full screen with certain apps on a Mac. (151266898)
Game Controller
New Features
- For supported game controllers, pressing the Home button once opens the Game Overlay. Set preferredSystemGestureState to receive additional Home button press events. (137780853)
- Pair multiple Apple devices to your DualSense or DualSense Edge controller and easily switch between them directly using the controller or Bluetooth settings. See this PlayStation blog post for details. (137782227)
Game Mode
Resolved Issues
- Fixed: The LSSupportsGameMode Info.plist key is currently ignored on macOS. (153125166)
Known Issues
- Game Mode will not activate for application binaries spawned directly from Terminal. (153127050) Workaround: Use the open command to launch your game from Terminal. You can pass arguments, change environment variables, and redirect standard output/error when using this command, such as open My Game.app --stdout /tmp/mygame.out --stderr /tmp/mygame.err --env MTL_HUD_ENABLED=1 --args -My Game Argument -Another Argument. See man open for more information.
Image Playground
Resolved Issues
- Fixed: The Create Image action fails to appear in Shortcuts app and Spotlight. (153235442)
Intel Macs
Resolved Issues
- Fixed: Safe and Recovery modes on Intel Macs have performance and graphical issues, though the modes are still functionally usable. Various elements on the screen, such as menus, alerts, and Control Center, might partially display. Scrolling and other operations in some apps cause visual glitches. (149419875)
Keyboard
New Features
- In the “ABC – India” keyboard layout, the ₹ (rupee) symbol has replaced the ` (back tick) symbol. To type the back tick symbol that’s commonly used in Markdown and some programming contexts, you can use the ⌥ (option) modifier in conjunction with the same key or you can use an alternative layout like “ABC”. (149026394)
Maps
Resolved Issues
- Fixed: Users cannot plan a route that leaves at or arrives by a future time. (150947515)
- Fixed: If you tap to expand the “Recents” section and there are more recent places than can fit in the view, the Terms & Conditions link will disappear, making it inaccessible. (152197565)
Known Issues
- Custom tap gesture callbacks registered using onTapGesture might not work as expected on a SwiftUI Map. (157612948) (FB19394663) Workaround: Use simultaneousGesture(TapGesture().onEnded {}) to register the callback.
Memory Tools
Known Issues
- Leaks might be falsely reported by memory analysis tools when a target has instances of types that use Obj-C properties implemented in Swift using bridged types with @objc @implementation. Memory analysis tools include the leaks CLI tool, Leaks instrument, and Xcode memory graph debugger. (157798911)
Menu Customization
Known Issues
- Menu customization in apps like Notes and Mail might have some visual glitches. (148472167)
Messages
Resolved Issues
- Fixed: Sent translated messages do not get re-translated after editing. (149401758)
- Fixed: In regions where Screen Unknown Senders is on by default, notifications for message categories are erroneously off by default. (149450560)
- Fixed: In one-to-one conversations, background changes might be attributed incorrectly after quitting and re-opening the Messages app. (150548773)
- Fixed: Transaction or Promotion messages filtered by a Message Filter App Extension might be badged as “Unknown” in the conversation list rather than “Transaction” or “Promotion”. (151869409)
Known Issues
- Users on older devices won’t see compatibility messages for polls, so they might be unaware a poll was sent. (148545742)
- Expanding Conversation Details causes the list of conversations to collapse. (149436051) Workaround: Closing Conversation Details will bring back the list.
- Scrolling through a Messages conversation might be sluggish. (152453655) Workaround: Quit and relaunch Messages.
Metal
New Features
- Metal 4 is now supported. See Metal for additional details. (113781091)
Resolved Issues
- Fixed: If you’re using Metal 4 command encoders, you should add render and compute pipelines that support indirect command buffers to your residency sets. The Metal device driver currently does not enforce this requirement. (145066238)
- Fixed: Metal Shader Validation might not work with shaders that use Metal Performance Primitives. (149263281)
Known Issues
- Metal Shader Validation might not work with Metal 4 ray tracing pipelines. (152520367) Workaround: Selectively disable Shader Validation for pipelines using ray tracing. See documentation.
MetalFX
Resolved Issues
- Fixed: Denoised temporal upscaling for MTL4CommandBuffer’s MTL4FXTemporalDenoisedScaler does not work. (146436460)
- Fixed: Temporal upscaling for MTL4CommandBuffer’s MTL4FXTemporalScaler does not work. (146436741)
Music
Resolved Issues
- Fixed: You might experience audio issues when using the Music app and changing the underlying audio device sample rate. (152465491)
NetworkExtension
Deprecations
- Algorithms DES, 3DES, SHA1-96 and SHA1-160 as well as Diffie-Hellman groups less than 14 are no longer supported for IKEv2 VPNs. (148767790)
Notifications
Resolved Issues
- Fixed: The icons for Calendar notifications might appear washed out. (151658533)
NSLog
New Features
- Dynamic string data in format arguments for NSLog will be redacted to in the Unified Logging System. This specifically targets data that enters the Unified Logging System via NSLog, and will not impact the Xcode console or NSLog’s stdout output. If you wish to log un-redacted data to the Unified Logging System please use the “os_log” or “Logger” interfaces. (137129180)
NSTextView
New Features
- NSTextView supports sound files, such as QuickTime Audio, attached via NSTextAttachment, by utilizing AVPlayer for playback inline. (140224296)
Object Capture
New Features
- A new algorithm significantly improves PhotogrammetrySession reconstruction quality of low-texture objects not captured with the ObjectCaptureSession front end. It will be downloaded and cached once in the background when the PhotogrammetrySession is used at runtime. If network isn’t available at that time, the old low quality model will be used until the new one can be downloaded. There is no code change needed to get this improved model. (145220451)
Photos / Photos Picker
Known Issues
- Invoking search in the Photos picker causes the picker to crash. Or invoking Search in a collection in Photos causes Search to crash. (152403781) Workaround: Use the Photos app to search for the content. Once you’ve found it, you can share or copy it to continue with the workflow. Use Search in the Library tab to find the content.
Photos Picker
Resolved Issues
- Fixed: On macOS, the Options menu is missing in the Photos picker. Ability to exclude Location and Captions information cannot be set when using the Photos picker. (152336867)
Quick Look
Resolved Issues
- Fixed: Variants menu does not open in Quick Look while trying to view different configurations of a USDZ asset made with Variants. (154817946)
RealityKit
Resolved Issues
- Fixed: Entities with a PortalComponent ignore any ModelSortGroupComponent and instead use a fixed rendering order. In case of sorting rendering issues with portal surface, explicitly add a ModelSortGroupComponent using a .planar UIAlwaysBehind sort group. (149899345)
- Fixed: ParticleEmitterComponent does not render properly on iOS, macOS, and tvOS. (152201501)
- Fixed: The animate functions on Entity and RealityViewContent do not start animations. (152456435)
Known Issues
- Some properties and components do not update SwiftUI Views when accessed through the .observable property on Entity. (147063698)
Rosetta
New Features
- You can test that your apps no longer depend on Rosetta by setting the boot-arg nox86exec=1. When this boot-arg is set, any process that would normally run through Rosetta will immediately crash on launch and generate a crash report. This can by set by running sudo nvram boot-args="nox86exec=1" and then rebooting the system. (136764433)
RTL
Known Issues
- You might experience layout issues with RTL languages. (151009428)
Safari
Resolved Issues
- Fixed: macOS 26 users might experience Safari page loading issues on facebook.com and potentially other websites, due to a new race in the network stack. Affected users should update to macOS 26 beta 5 and clear related cache by visiting Safari > Settings… > Privacy > Manage Website Data…, then deleting entries for facebook.
- and fbcdn.net resources. Restart Safari. Users will need to re-login to the website. Users experiencing issues on other websites can consider clearing cache for those websites or clearing all website data. (153547547)
Known Issues
- Black lines appear at the bottom of inactive tabs in Safari. (153681371)
Search
Resolved Issues
- Fixed: Some applications might quit unexpectedly when using search. The issue will be resolved automatically with an over-the-air update when connected to Wi-Fi. (157464670)
Secure Text Fields
Resolved Issues
- Fixed: On a Mac with a Touch Bar, a secure text field swallows keyboard events in some contexts. For example, this might occur when creating a new user in the Users & Groups settings pane. (151268030)
Security
Deprecations
- For apps linked on or after iOS 26 and macOS 26, the default minimum TLS version of URLSession and Network frameworks has changed from 1.0 to 1.2. If your process connects only to your servers, verify that they support TLS 1.3 or TLS 1.2. If your process needs to connect to 3rd-party servers which cannot be updated to support newer versions of TLS, restore the previous behavior through URLSession and Security framework APIs: URLSessionConfiguration.tlsMinimumSupportedProtocolVersion and sec_protocol_options_set_min_tls_protocol_version. (135996267)
Settings
Known Issues
- Users who enable Reduce Transparency might encounter flickering in background windows or the Dock. (152060485)
- If System Settings > Desktop & Dock > Displays have separate Spaces is disabled, WindowServer will crash at login time. (153570422) Workaround: Boot into Recovery, then mount the Data volume on your partition. Launch Terminal and run rm /Volumes/<Partition Name "Macintosh HD">/Users//Library/Preferences/com.apple.Spaces.plist.
Setup Assistant
Resolved Issues
- Fixed: 802.1X Wi-Fi networks are not saved during initial device setup. (147787689)
- Fixed: On Intel Macs, the background on the Hello or Welcome screens might be black. (152107967)
- Fixed: Visual pairing for Quickly Set Up Mac does not work. (152326903)
- Fixed: On the 13” MacBook Air, Hello might be offset from the wallpaper during initial device setup. (152447100)
Shortcuts
Resolved Issues
- Fixed: Titles for some Messages actions and filter properties display incorrectly. (153740390)
Siri
Resolved Issues
- Fixed: Siri Visual Responses might be illegible behind certain backgrounds. (151682699)
- Fixed: Knowledge requests that are handled by ChatGPT might produce results that are based on stale data. (154889929)
StoreKit
New Features
- There is a new option for the Transaction.Offer.PaymentMode API called oneTime. This new case supports the method of payment for In-App Purchase offer codes. (142501142)
- Subscription promotional offers can now be signed using JWS and attached to a purchase using the new PurchaseOption.promotionalOffer(_:compactJWS:) API. There are also new corresponding SwiftUI APIs in StoreKit to attach a signed promotional offer or a signed introductory offer override to a view. (143395736)
Resolved Issues
- Fixed: Subscription status updates might not be reported correctly if the subscription went into billing retry in StoreKit Testing in Xcode. (133799135) (FB14789854)
- Fixed: Price of offers is not displayed in the payment sheet when making a purchase to a subscription with a higher level of service in StoreKit Testing in Xcode. (140635780) (FB15980635)
- Fixed: Renewal transactions might be created regardless of the Ask to Buy status of the purchase request in StoreKit Testing in Xcode. (145242611)
- Resolved an issue with the Identifiable conformance of the PurchaseIntent API. Conformance to this protocol now begins starting with iOS 18.0 and macOS 15.0. (148751460) (FB17151889)
- Fixed: SKProduct from the original StoreKit API fails to decode products when using StoreKit Testing in Xcode. (150851879)
- Resolved an issue where the id member of the PurchaseIntent API was only available starting with iOS 18.0 and macOS 15.0, and no longer available for Mac Catalyst. It is now available starting with iOS 16.4, macOS 14.4, and Mac Catalyst 16.4. The PurchaseIntent conformance to Identifiable remains unchanged. (152858281) (FB17829716)
- Fixed: Transactions might not finish, resulting in subsequent purchases of the same product failing. (155449267)
Swift Charts
New Features
- Available in iOS 26, macOS 26, and visionOS 26, Chart3D allows you to visualize your data and mathematical surfaces in 3D, powered by RealityKit. (148361385)
Resolved Issues
- Fixed: Annotations on a scrollable chart might be clipped. (109164195)
Swift Compiler
Resolved Issues
- Fixed: The Swift compiler might crash when building a project that initializes a UISymbolContentTransition. (150858005)
Swift Standard Library
Resolved Issues
- Fixed: The span properties of InlineArray and CollectionOfOne trap at runtime. (147500528)
- Fixed: mutating members of MutableSpan and MutableRawSpan are unavailable. (152467655)
Known Issues
- lengthOfBytes(using: .utf16) and -lengthOfBytesUsingEncoding: NSUTF16StringEncoding/NSUnicodeStringEncoding might produce an incorrect result when used on Swift Strings, including NSStrings formed by bridging Swift Strings to Objective-C. (156675395)
SwiftUI
New Features
- On macOS, an animated SwiftUI.Transaction that changes a Window’s size animates the window’s frame, alongside the frame of the hosting view. (61158194)
- You can now use View/findNavigator(isPresented:), View/findDisabled(:), and View/replaceDisabled(:) to control the presentation of the Find Bar in TextEditor on macOS 26. (85308161)
- ControlSize now conforms to Comparable, and View/controlSize(_:) can now be used to clamp the environment’s controlSize to a given range. (FB11465757)
- In apps built with the macOS 26 SDK, Section footers within a Form of the Grouped Form Style now have leading alignment, default font, and foreground styles. Use the sectionActions(content:) view modifier on your Section to supply section actions, which maintain a trailing placement in macOS. In iOS and iPadOS, each section action displays as its own form row. (129868475)
- Text, TextEditor, and TextField now by default use string contents to determine the appropriate base writing direction for each paragraph, instead of relying on layout directionality. To specify the writing direction explicitly on a per-paragraph basis, use Foundation’s AttributedString.writingDirection attribute. To make the base writing direction follow the layout direction for an entire view, apply the view modifier .writingDirection(strategy: .layoutBased). (134821288)
- In apps built with the macOS 26 and iOS 26 SDKs, a Picker view of a style that produces a button-like control now has a fitted sizing behavior by default. If needed, use the buttonSizing(_:) view modifier to make the Picker flexible and fill the available width of its container. (136649748)
- The default label style for macOS menu content is now .titleAndIcon. (137306701)
- The implementation of some macOS buttons no longer uses NSButton. (139105246)
- When linking news SDKs, NavigationLinks produce a single view, rather than a list of views in view list contexts. This change improves performance of many NavigationLinks in lazy containers like List. However, if you are relying on ContainerValues propagating out of the label view of a NavigationLink, or similarly relying on ContainerValues of a ButtonStyle used to style a link, the containerValue(:,:) modifier should be moved outside of the link. Below is a minimal example that demonstrates the behavior difference: (140283584)
- List no longer ignores the vertical insets of rows with a height close to the default minimum height on iOS and visionOS. Use listRowInsets(::) to change the vertical row insets. (141160852)
- In NavigationSplitView and TabViews configured as sidebar Adaptable, the view trailing the sidebar’s safe area is inset in the width of the sidebar. It can display content outside its safe area, underneath the sidebar. (141222137)
- In macOS, a Form of the .grouped style now has a more compact appearance when placed within a sidebar or inspector. (141534926)
- Reuse existing AppKit gesture recognizers in SwiftUI using NSGestureRecognizerRepresentable, and refer to them by name using name. (142918018)
- On macOS, after linking new SDKs, the style of search fields with SearchFieldPlacement.sidebar is now fixed to the toolbar. Previously the search field would scroll as the first element in the list. (143546967)
- In apps that adopt the new design, the buttonBorderShape(_:) view modifier can be used to customize the shape of bordered buttons. Previously this modifier only affected buttons in Widgets in macOS. (145773436)
- The buttonSizing(_:) view modifier specifies the sizing behavior of Button, Picker, Menu, and other button-producing controls. If you are using Spacer views or an infinite-width frame in your Button label to create a flexible button, apply buttonSizing(.flexible) to the Button instead. (146327046)
- In macOS apps that adopt the new design, buttons of the .bordered style can be tinted with the tint(_:) view modifier. (150127133)
Resolved Issues
- Fixed: TextEditor’s undo stack might contain invalid operations for applications with multiple TextEditor views. (83650197) (FB9662463)
- Fixed: In macOS, Button inherits its environment’s font instead of using a default font appropriate for its controlSize. Apply view modifiers to the button’s label to customize its font. (92434021)
- Fixed: In macOS, the value label of MenuPickerStyle does not truncate when it is long enough to cause the button to be wider than its container. (93843377)
- Fixed: The menu content of some Menu views does not update as the result of a state change. (106878937)
- Fixed: View.onHover(perform:) and View.onContinuousHover(coordinateSpace:perform:) affect hit-testing for gestures. Gestures are not received if one of these view modifiers is used within an overlay. (108560020)
- Fixed: Section views without isExpanded binding are collapsible in a sidebar-styled List on macOS. (115797465) (FB13192271)
- Fixed: listSectionSpacing does not work correctly for sections that have headers and footers. For more control over the list section layout, use the listSectionMargins modifier. (140929163)
- Fixed: On iOS, navigationSplitViewColumnWidth() does not respect the specified minimum and maximum column widths. (143529326)
- Fixed: Multiple title views in sidebar list labels on iOS are not styled hierarchically as title and subtitle. (144253754)
- Fixed: In custom layouts that do not implement explicit Alignment(of:in:proposal:subviews:cache:), alignment guides do not work correctly for a right-to-left layout direction. (145073832)
- Fixed: Applying a bold modifier to Text resets the weight configuration. The interaction of bold and weight is not consistent between Text and Font. (147270079)
- Fixed: Environment updates from outside of a popover might fail to propagate into the popover’s content view. (147954025)
- Fixed: On platforms supporting edge-attached and non-edge-attached sheets, non-edge-attached sheets present erroneously as full-screen covers when .navigationTransition(.zoom...) is specified. If you wish to keep the full-screen cover in compact size classes, configure a sheet with: .sheet(...) { ContentView() .navigationTransition(.zoom...) } .presentationSizing(.page) .presentationCompactAdaptation(.fullScreen) (150455117)
- Fixed: If Default Actor Isolation is set to MainActor, @Animatable macro emits concurrency warnings in Swift 5 language mode and does not compile in Swift 6 language mode. (152524435)
- Fixed: Gestures do not have the same lower priority over the view’s existing UIGestureRecognizers and NSGestureRecognizers as they do over the view’s existing SwiftUI gestures. In apps built with iOS 26, macOS 26, tvOS 26, and visionOS 26, use highPriorityGesture(:isEnabled:) to make sure your gesture takes precedence over the view’s existing gestures, or use simultaneousGesture(:isEnabled:) to give your gesture the same priority as the view’s existing gestures. (155581361)
Deprecations
- Text concatenation using the + operator is deprecated because it makes it hard to create localized strings that are correct across all languages. Use Text interpolation instead. See documentation on Text for more info on how to produce localized strings. (128144043)
TextKit
New Features
- iOS 26, tvOS 26, visionOS 26, watchOS 26, and macOS Tahoe 26 have two methods for resolving the natural alignment NSTextAlignment.natural and the last line of NSTextAlignment.justified into concrete alignments, left, and right. The first approach utilizes the UI language, which is determined by passing nil-language to NSParagraphStyle.defaultWritingDirection(forLanguage:). This behavior was employed prior to this release. The second method is new and dynamically utilizes the base writing direction for the paragraph. When the base writing direction is set to NSWritingDirection.rightToLeft, the text is aligned to right, and vice versa. The behavior is selected by API introduced in this major release: NSTextLayoutManager.resolvesNaturalAlignmentWithBaseWritingDirection, NSStringDrawingOptions.ResolvesNaturalAlignmentWithBaseWritingDirection, UITraitCollection.resolvesNaturalAlignmentWithBaseWritingDirection, and NSTextField.resolvesNaturalAlignmentWithBaseWritingDirection. (152045248)
Resolved Issues
- Fixed: The directionality of NSParagraphStyle indentation properties (firstLineHeadIndent, headIndent, and tailIndent) is determined by inconsistent hidden rules implemented by the TextKit typesetting engine. With iOS 26, macOS 26, tvOS 26, watchOS 26, and visionOS 26, the TextKit 2 typesetting engine has been standardized to utilize the resolved writing direction for the paragraph when linked with the OS 26 versions of the corresponding SDKs. For binary compatibility, applications developed with prior SDK versions will use the UI language in a subset of API interfaces. Specifically, for UILabel, NSTextField, SwiftUI.Text, and NSStringDrawing, the indentation directionality is determined by the UI language queried by passing nil to NSParagraphStyle.defaultWritingDirection() in applications built with prior SDK versions. (155893102)
TextKit 2
New Features
- A new property, includesTextListMarkers, is introduced to NSTextList, NSTextContentStorage, and NSWritingToolsCoordinator. This property controls whether to include the text list marker string in the contents of NSAttributedString for paragraphs associated with NSTextList. TextKit 1 expects the marker string, while TextKit 2 does not. The TextKit 2 behavior was adopted by UIKit starting with iOS 18 (includesTextListMarkers=NO). AppKit is also adopting the TextKit 2 text list behavior starting with macOS 26. (128479184)
Translation
Known Issues
- For Catalyst apps using .translationTask(), buttons in the download approval UI might not work. (151313115) Workaround: Either manually download the languages you need beforehand from System Settings, or build your Catalyst app with the “Optimize for Mac” setting.
UIKit
New Features
- In TextKit 2, the includesTextListMarkers property has been introduced to NSTextList, NSTextContentStorage, and NSWritingToolsCoordinator. For paragraphs associated with NSTextList, the property controls whether to include the text list marker string in the NSAttributedString contents. The classes within TextKit 1 expect the marker string, while the classes within TextKit 2 do not. (144903293)
VideoToolbox
Resolved Issues
- Fixed: You might experience decoding performance issues for high-bitrate HEVC, resulting in stuttering and lag. (153243806)
Virtual Machines
Resolved Issues
- Fixed: Virtual machine networking fails if you start a bridge mode VM while a shared or host mode VM is running, and vice versa. The networking of the existing VM is not affected. (151477625)
Weather
Resolved Issues
- Fixed: Users might see a blank white button on some tips for Weather features. The button will be operable. (152088799)
WebKit API
New Features
- The load APIs on WebPage now return an AsyncSequence directly that can be used to track relevant navigation events. The currentNavigationEvent property has been removed in favor of the navigations property, which produces an indefinite sequence directly. (152414525)
- The WebPage API now supports directly loading URLs. Additionally, when loading an HTML string, there is now a default value for the baseURL parameter. (152904248) (FB17850359)
Resolved Issues
- Fixed: webViewOnScrollGeometryChange might report an incorrect content size. (146576790)
Known Issues
- WKPreferences.isLookToScrollEnabled is not available on non-visionOS platforms. (152106377)
Xcode
Resolved Issues
- Fixed: Xcode Previews usage frequently panics on macOS 26.0 Tahoe beta 4. (141641869)
- September 2025
- No date parsed from source.
- Detected by Releasebot:Sep 29, 2025
macOS Sonoma 14 Release Notes
Introducing the macOS 14 Sonoma SDK with Xcode 15 RC. This release brings broad platform enhancements across Spatial, BNNS, vImage, SwiftUI, AppKit, and Accessibility, plus AirPods features and updated authentication, file systems, and StoreKit. bug fixes accompany new APIs and performance improvements, signaling a substantive shipped SDK update.
Update your apps to use new features, and test your apps against API changes.
Overview The macOS 14 SDK provides support to develop apps for Mac computers running Sonoma 14. The SDK comes bundled with Xcode 15 RC, available from the Mac App Store. For information on the compatibility requirements for Xcode 15 RC, see Xcode 15 RC Release Notes.
General
Resolved Issues • Fixed: Users might experience a blank screen with an active cursor for an indefinite period of time when attempting to update to Sonoma Beta 6. (114166127)
Accelerate
New Features • Spatial ◦ Introduced trigonometry functions for Spatial angle type. ◦ Introduced spherical linear interpolation for Spatial rotations. ◦ Introduced swing-twist decomposition for Spatial rotations. • BNNS ◦ Introduced BNNSRandom Fill Categorical Float that fills a tensor with random values from the categorical distributions with event probabilities. ◦ Introduced k-nearest neighbors calculation. • vImage ◦ Introduced vImage Convolve Float Kernel _ARGB8888 that applies convolution to 8-bit-per-channel, 4-channel interleaved images using 32-bit floating-point weights. ◦ Introduced vImage Sep Convolve _ARGB8888 that applies separable convolution to 8-bit-per-channel, 4-channel interleaved images. ◦ Added flood fill, perspective transform, and new lookup table transforms to vImage.Pixel Buffer. (105830806)
Accessibility
Resolved Issues • Fixed: VoiceOver might not speak inline predictive text in some text fields. (109225941) • Fixed: VoiceOver users might not be able to move focus to enter Recovery mode. Instead users will hear “Accessibility Visuals Agent has no windows.” (109588439)
AirPods
New Features • To test new features such as Adaptive Audio, Personalized Volume, and Conversation Awareness, developers need to install AirPods beta firmware. To learn more, see Installing Apple Beta Software (110183983) • With Personalized Volume, when watching third party media, a volume slider might show up. (110266313) • Conversation Awareness might react to self-made sounds such as humming, throat clearing, and might fail to end automatically when there is ongoing speech nearby. (110266324) • Conversation Boost in Control Center Hearing Module will not turn on the feature. (110266328)
Resolved Issues • Fixed: Press and Hold AirPods in Settings on iOS and macOS for AirPods will only save the noise control rotations on the local device. (110266311) • Fixed: FaceTime calls from iOS answered with macOS with AirPods stem might not able to mute. (110266339) • Fixed: Spotify App on macOS will automatically route audio from Spotify on iOS without playing audio. (110266347) • Fixed: AirPods color might be inverted in dark mode in the tutorial cards for Adaptive Audio. (110266361)
App Intents
Resolved Issues • Fixed: The Deprecated App Intent protocol might not show the App Intent as deprecated in the Shortcuts app. (103277731) • Fixed: UI shown in Widget configuration and the Shortcuts editor might not respect the size of an array @Parameter. (109050453) • Fixed: Widget configuration, Focus Filters, and Shortcuts editor might not allow some Measurement dimensions to be configured. (109114787)
AppKit
New Features • See AppKit Release Notes for macOS 14. (110084217)
ATS and ATSUI
Deprecations • Starting macOS 14 Sonoma, whenever the OS detects the usage of ATS or ATSUI APIs, the user will be presented a dialog stating that the application needs to be updated. Once the dialog is dismissed by the user, the application will exit. (100521621)
Authentication Services and Passkeys
New Features • The Credential Provider API for password managers has been expanded to support passkeys. Credential providers can save and offer passkeys for apps and websites across the system. (83501802) (FB9651656) • ASSettings Helper allows password manager apps to directly open the Settings view where the Credential Provider Extension for system-wide Password AutoFill and passkey sign-in can be enabled. • ASSettings Helper also allows verification code (TOTP) apps to directly open the Settings view where you can configure which app opens verification code setup links. (106351958) (FB12039478)
Camera and AVFoundation Capture
Resolved Issues • Fixed: On iPhone 14 and 14 Plus models third-party camera applications might fail to capture images, and the built-in Camera app and third-party applications using the new Deferred Processing API might fail to process final images. (113158045)
Continuity Camera
Resolved Issues • Fixed: In Control Center’s Video Effects Menu, clicking on the zoom button should reset the zoom level to the default value. If you’re using a Continuity Camera device with only one camera, or the Apple Studio Display camera, it does not reset. (109541385)
Control Center / Video Preview
Resolved Issues • Fixed: Zoom slider in Control Center video preview might be missing for apps when Center Stage is OFF. (110818198)
CreateML
Known Issues • Create ML may crash or hang on launch on devices with macos 14.0 beta 7. (113703568) Workaround: Use macos 14 beta 6 or earlier
Documentation
Resolved Issues • Fixed: Xcode crashes on macOS Sonoma Beta 1 and Beta 2 when scrolling documentation in Quick Help, the documentation window, and the Swift Package dependency manager. (109810157)
Facetime handoff
Resolved Issues • Fixed: Facetime handoff to another device might result in call drop or no media. (110126569)
FaceTime on Apple TV
Resolved Issues • Fixed: When an Apple TV calls a Mac, a non-human readable string might appear in the calling notification. (110021693)
File System
New Features • The implementations of the exfat and msdos file systems on macOS have changed; these file systems are now provided by services running in user-space instead of by kernel extensions. If the application has explicit checks or support for either the exfat or msdos file systems, validate the applications with those file systems and report any issues. (110421802)
Find My
Resolved Issues • Fixed: The Find My application on macOS might quit unexpectedly while enabling Lost Mode on a device. (109379261)
Foundation
New Features • Introduced Term Of Address which describes how a person should be addressed in language. This can be used in conjunction with Automatic Grammar Agreement to refer to people in a string using their preferred pronouns and grammatical agreement in English, Spanish, Portuguese, French, Italian, and German. (99745330) • Foundation now supports grammatical agreement with a detached phrase using the agreeWithConcept markdown attribute. (102595293)
Freeform
Resolved Issues • Fixed: Strokes drawn using Beta 2 might appear distorted when viewed on devices running Beta 1. (107901155) • Fixed: The Follow Me feature will only work when collaborators are on the same Beta version. (110656281)
iCloud
Resolved Issues • Fixed: Users with iCloud Drive sync disabled are unable to access settings for some apps using iCloud. (105284675) • Fixed: The System Settings application might become unresponsive after creating a new account and then signing out of iCloud. (109789130) • Fixed: Non-local files in iCloud Drive might fail to download and open after using Migration Assistant to set up a new volume. (109798846)
iCloud Drive
Resolved Issues • Fixed: iCloudDrive folders owned by root or other local users might be inaccessible after upgrade to Sonoma. (109204311) • Fixed: Enabling desktop and documents sync might fail after upgrade to Sonoma. (109507087) • Fixed: Finder or Apps might hang when accessing App created folder with .folder extension. (112600553)
iCloud Settings
Resolved Issues • Fixed: Users might not be able to view Apps Syncing to Drive in iCloud Drive Settings. (110732437)
iMovie Theater & iCloud Drive
Known Issues • “Copy to File” to iCloud Drive destination might not work as expected. (113644592)
Installation
Resolved Issues • Fixed: Updates to macOS 14 beta will freeze if installing to a HFS formatted volume on intel machines. (112165783)
iPhone Widgets on Mac
New Features • iPhone Widgets on Mac might appear duplicated if switching between more than one supported iPhone as source. (108567555) • iPhone Widgets on Mac might not be removed when disabling iPhone Widgets On Mac in System Settings. (109236950) • iPhone Widgets on Mac might not populate on the Edit Widgets add sheet until after a reboot post sign in. (109479534) • iPhone Widgets on Mac might not be removed when signing out of iCloud. (109527436) • iPhone Widgets on Mac might not update upon wake from sleep. They will update at the next cadence when the Mac and iPhone are nearby and awake. (109691143) • iPhone widgets on Mac allow XL widgets from iPhone to be available. If assets are not available on the iPhone, the assets will be missing. (109782417) • iPhone Widgets on Mac that contain drop down sortable lists in their configurations might fail to configure. (109976067) • iPhone Widgets on Mac might not update upon wake from sleep. They will update at the next cadence when the Mac and iPhone are nearby and awake. (109978135) • iPhone Widgets on Mac might not be removed when disabling iPhone Widgets On Mac in System Settings. (110804620) • Widget App icons might appear blank in the Add Sheet if Mac is updated from Beta 2 to Beta 3 before iPhone is updated. (111334099) • iPhone widgets on Mac might not be available if 2 users are signed into the same Mac at the same time. (111336466)
Resolved Issues • Fixed: iPhone Widgets on Mac might lead to additional power draw on iPhone if a Mac signed into the same iCloud account is present. (110074764)
Localization
Resolved Issues • Fixed: Some content might appear in English. Some strings might appear clipped. (109393568)
Lockdown Mode
Resolved Issues • Fixed: When erasing a Mac that has Lockdown Mode turned on, the Lockdown Mode state might inadvertently persist in NVRAM. (109470608)
Login Window
Resolved Issues • Fixed: Users will be missing or duplicated when the multi-user layout is shown. (108899565) • Fixed: When using a smart card, the multi-user layout can be accessed. (109425371) • Fixed: The password field might not show the PIN placeholder text when using a smart card. (109428156) • Fixed: The “Your password is required to enabled Touch ID” message might be shown when smart card is in use. (109429083)
Mac App Store
Resolved Issues • Fixed: Users are unable to create new Apple IDs in the Mac App Store. (108293571)
Mac Catalyst
Resolved Issues • Fixed: *Catalyst Optimized for Mac: ◦ SwiftUI Toolbar Content in Catalyst apps Optimized for Mac was previously bridged into the Mac toolbar (NSToolbar) dependent on whether the view containing the toolbar content filled the entire scene (width and height matched within a small floating point margin). In macOS 14.0 and later, toolbar content is now bridged into the Mac toolbar if the heights approximately match and only the leading edge aligns with the scene’s leading edge. In practice this might change a Catalyst app that had two Navigation Stacks side by side with toolbar content. Prior to macOS 14.0, neither stack would have its toolbar content bridged into the Mac toolbar and all toolbar content would be in the toolbar of the Navigation Stacks themselves. On and after macOS 14.0, the leading stack will have its toolbar content bridged, while the trailing stack’s content will stay in the stack’s toolbar. (108519092)
Maps
Resolved Issues • Fixed: When a Linear Gradient stroke is used with a Map Polyline in SwiftUI, the specified gradient color might be ignored. (106152300) • Fixed: When using Map, Xcode emits a runtime warning that “Publishing changes from within view updates is not allowed.” (106174743) • Fixed: At certain zoom levels, the title of a selected MKMarker Annotation View can overlap other marker titles. (109491779) • Fixed: For non-Catalyst SwiftUI apps, some Maps controls like the legal link and compass appear outside the safe area. (109611122)
Media
Resolved Issues • Fixed muting capture in all other tabs when Safari starts camera and/or microphone capture in a tab. (109896538) • Fixed: MP3 files with malformed ID3 tags will fail to play (110230071)
Messages
Resolved Issues • Fixed: The transcription for long audio messages is truncated without a way to expand and view the full transcription. (107174385) • Fixed: Unexpected visual artifacts might appear when the transcription is inserted while sending an audio message. (109799338)
Known Issues • The Catch up affordance might display incorrectly. (109468262) Workaround: Leave and return to the affected conversation.
Metal Ray Tracing
Resolved Issues • Fixed: The methods assume_curve_control_point_count, assume_curve_basis, and assume_curve_type on intersection_params and intersector, the methods get_curve_control_point_count, get_curve_basis, and get_curve_type on intersection_params, and the related curve_basis and curve_type enumerations, are not supported in the Metal Shading Language. (104142182) • Fixed: After initializing an intersection_query with an acceleration structure using max_levels where Count > 2, calls to next() might cause the GPU to restart. (108863335) • Fixed: Reflection returned via the new {Render|Compute|Tile}PipelineWithDescriptor API for ray tracing pipelines might be incorrect. (109850134)
Networking
New Features • URLSession supports resumable uploads in HTTP. Just like download tasks, upload tasks can now be paused and resumed if the server supports the latest protocol draft. To learn more, see Resumable Uploads for HTTP. (68890505) • Apple devices now support connection to 802.1X networks using EAP-TLS with TLS 1.3 (EAP-TLS 1.3). EAP-TLS 1.3 further improves security and privacy by always providing forward secrecy, never disclosing the peer identity, and by mandating use of revocation checking when compared to EAP-TLS with earlier versions of TLS. (74526852)
Resolved Issues • Fixed: For apps linked on or after iOS 17 and aligned OS versions, App Transport Security now requires secure connections to external IP addresses by default. For more information on these requirements, see Preventing Insecure Network Connections. Exceptions can be made using NSExceptionDomains, which now supports exceptions for individual IP addresses and ranges specified in classless inter-domain routing (CIDR) notation. (101967030) • Fixed: For apps linked on or after iOS 17 beta, macOS 14 beta, watchOS 10 beta, and tvOS 17 beta, the Transfer-Encoding header field of a streamed HTTP/1 request is set to chunked instead of Chunked. (107390029)
Photos
New Features • A new PHContentEditingOutput.renderedContent URL(for:) API adds support for UTType.heic encoded rendered image content. (109861295)
Known Issues • Applications providing image content via PHContentEditingOutput.renderedContent URL in formats other than UTType.jpeg will fail with an .invalid Resource error. (110068158)
Pre-filled Titles for Events and Reminders
New Features • Messages now supports machine learning based pre-filled titles for English events and reminders. Tap or long-press the highlighted date/time in an SMS or iMessage conversation and select Create Event to trigger this feature. (110889506)
Presenter Overlay
Resolved Issues • Fixed: Moving small Presenter Overlay while a Keynote presentation is played in fullscreen mode temporarily stops the presentation from being shared. (110033699)
Printing
Deprecations • macOS has removed the functionality for converting PostScript and EPS files to PDF format. As a result, CoreGraphics CGPSConverter returns an error when invoked, ImageIO no longer converts EPS files, NSEPSImageRep does not display EPS files, and PMPrinterPrintWithFile does not accept a PostScript file for non-PostScript print queues. (110019863)
Reactions
Resolved Issues • Fixed: Reactions arent currently available when using video conferencing apps in Safari. (109789920)
Rosetta
Resolved Issues • Fixed: Intel applications might quit unexpectedly on launch under Rosetta. (110021755)
Safari
Resolved Issues • Fixed: Safari might offer search suggestions while in Private Browsing by using an on-device model. The search terms are not sent from the device to a search provider. (105606453)
Screen Sharing
New Features • A High Performance connection requires a network that supports at least 75Mbps for one 4K virtual display and at least 150Mbps for two 4K virtual displays. Low network latency is also required for responsiveness. (110068856)
Resolved Issues • Fixed: When the viewer window in Screen Sharing.app is made full screen with Dynamic Resolution enabled in a High Performance connection, the video content might not resize to fill the window. (109683500) • Fixed: During screen sharing sessions using the new High Performance mode, the display connected to the server Mac might not be blank. Activity in the screen sharing session will be visible on the server Macs display during and after the session ends. (109837767) • Fixed: The video and cursor might lag during a High Performance connection with two 4K virtual displays to an M1 or M1 Pro server (110342712)
Screen Time Settings
Resolved Issues • Fixed: Selecting a family member in Screen Time causes an error to occur in iCloud accounts with Family Sharing enabled and a family member that is under 18. (110736804)
ScreenSharing
Deprecations • Use of legacy CGDisplayStream APIs to capture screen content will result in additional consent alerts. (110529324)
ShazamKit
Resolved Issues • Fixed: SHManaged Session.State is unavailable. (109670750) • Fixed: SHLibrary.default.items is unavailable. (109670918)
StoreKit
New Features • Users have access to the new Product.SubscriptionInfo.Status.all sequence to get the status for each of your apps subscription groups. One can use the new subscriptionStatus property on the latest Transaction value for a subscription to access the full status information. (102064614) • StoreKit 2 now provides a collection of UI components to help merchandise in-app purchases. Use ProductView, StoreView and SubscriptionStoreView to add in-app purchases to an app with just a few lines of code. (102066107) • Users can access in-app purchase product metadata and entitlement information from a SwiftUI view using new view modifier APIs in StoreKit. Declare a view as dependent on a single product or collection of products using storeProductTask(for:priority:action:) or storeProductsTask(for:priority:action:) respectively. Declare a view as dependent on the current entitlement for a product using currentEntitlementTask(for:priority:action:). Declare a view as dependent on the status of a subscription group with subscriptionStatusTask(for:priority:action:). All of the modifiers will start a task to load the data before the view appears, and provide your action with the state of the task as it progresses and whenever the data changes. (102397222) • User have access to the new groupLevel property of Product.SubscriptionInfo to understand the level of service of a subscription plan. (103885148) • Users have access to the new reason, and storefront properties on Transaction to understand the reason why the transaction was created, and which storefront it is for. The new renewalDate property on RenewalInfo to understand if and when a subscription will renew next. (104246730) • Users have access to new groupDisplayName property of Product.SubscriptionInfo to get the localized display name of a subscription plans group. (105689964) • The subscriptionStoreControlBackground(:) view modifier is available when using StoreKit and SwiftUI. Use this modifier to set the background behind controls in SubscriptionStoreView instances within a view to a gradient material effect, or any shape style. (105690554) • The productViewIconBorder() view modifier is available when using StoreKit and SwiftUI. Use this modifier on the icons to provide ProductView and StoreView to add a standard border around the icon. (106649532) • You can now customize the button style used for purchase and subscribe buttons in ProductView, StoreView, and SubscriptionStoreView instances. Use the buttonStyle(:) view modifier to choose any standard button style, or a custom button style. (107713282) • StoreKit Views ProductView and StoreView have initializers have initializers that give you access to the promotional icon as a SwiftUI view and the various phases of the loading operation. Use initializers such as init(id:icon:placeholderIcon:), init(icon:), init(ids:icon:placeholderIcon:), and init(products:icon:) to provide an icon view for each phase. (110470147) • The following StoreKit types are renamed: • DefaultProductViewStyle is renamed to AutomaticProductViewStyle • DefaultSubscriptionStoreMarketingContent is renamed to AutomaticSubscriptionStoreMarketingContent • DefaultProductPlaceholderIcon is renamed to AutomaticProductPlaceholderIcon (111185321)
Resolved Issues • Fixed: When testing in the sandbox environment, the groupDisplayName property on Product.SubscriptionInfo might return an empty string if the localization in the current storefront is not in an approved state. When using the SubscriptionStoreView without providing a marketing content view, the automatic view might show the name of the app instead of the subscription group’s display name. (107206601) • Fixed the loading animation for StoreView instances displaying a single product. (110414023) • Fixed: New StoreKitTest APIs are now available when testing on macOS: setSimulatedError(_:forAPI:), simulatedError(forAPI:), and buyProduct(identifier:options:). (110547347) • Fixed issue where StoreView or SubscriptionStoreView content might appear in English, or show a localization key, instead of showing localized text for the App Store storefront. (110734447) • Fixed an issue which can cause unexpected layouts when providing a tall view as custom marketing content for a SubscriptionStoreView. (112862984) (FB12748731)
Swift
New Features • Properties of @Observable and @Model types currently always require default values or optionality. (109441094)
Swift Charts
New Features • Enable scrolling in a chart using view modifier chartScrollableAxes(_:). (70444254) • Use chartXSelection, chartYSelection, and chartAngleSelection to enable selection on a chart. If needed, use chartGesture to override the default gesture for selection. (79083764) • Swift Charts now supports creating pie charts and donut charts using the new SectorMark API. (102309263) • Pass an AnnotationOverflowResolution to the annotation modifier to specify how to align an annotation when it would otherwise overflow the bounds of the chart or the plot. (106009062) • Use ChartProxy.plotContainerFrame to obtain the visible portion of the plot in a scrollable chart. (109675790)
Resolved Issues • Fixed a crash with certain combinations of chart content. (105197081) • Fixed an issue where frequent updates to a chart caused unexpected growth in memory footprint. (107611114) • Fixed: If major alignment is specified for scroll behavior, scrolling charts always align to the major unit and skip minor units. (107644532) • Fixed: When a selection gesture goes out of bounds, the selection binding will now be clamped to the nearest data value rather than set to nil. (108398019) • Fixed: Improved performance and CPU usage for charts with selection bindings. (108954531) • Fixed: Scrolling charts might behave unexpectedly on right-to-left languages. (109129343) • Fixed: Improved animations for charts in a widget. (110035011) • Fixed an issue where the compositingLayer chart content modifier caused marks with custom symbols to disappear. (110399956) • Fixed an issue where the compositingLayer chart content modifier caused annotation boundary resolutions to behave unexpectedly. (112232314) • Fixed: Improved performance and CPU usage for scrolling charts with scroll position bindings. (113149095)
Known Issues • Annotations on a scrollable chart might be clipped. (109164195)
SwiftData
New Features • Existing @Query property declarations might not always correctly infer the model type for predicate and sort descriptor parameters. (Note: the @Query attribute is now resolved as a macro, instead of as a property wrapper.) • For example, specifying a filter predicate as a parameter to the @Query attribute will now require explicitly providing the model type used in the predicate, i.e. #Predicate { … } instead of #Predicate { … } :
@Query(filter: #Predicate { ... }) var people: [Person]
• Another example: passing a sort descriptor or key path will now require explicitly providing the model type used for the root type of the key path, i.e. \ModelType.property instead of .property :
@Query(sort: [SortDescriptor(\Person.name)]) var people: [Person]
• In all cases, the model type used in the filter: and sort: parameters is still required to be the same type used as the element in the query’s wrapped array type, and will emit a build error if not. (109433172)
Resolved Issues • Fixed: Properties with default values are not initialized correctly. (107887871) • Fixed: @Query results can appear stale or fail to refresh. (108385553) • Fixed: Case value is not stored properly for a string rawvalue enumeration. (108634193) • Fixed: Schema migration can fail when nesting non-optional properties inside an optional containing struct. (108854663) • Fixed: Properties with .externalStorage are not being stored in peripheral files. (108972391) • Fixed: Scene modifier isUndoEnabled does not propagate correctly. (109373617) • Fixed: Modeled enum properties with default values won’t compile unless they are fully qualified values. (109421492) • Fixed: SwiftData queries will not work with #Predicate { true } and #Predicate { false } will cause a crash. (109425342) • Fixed: Conflicting writes from other processes sharing the same file can cause a crash. (109488127) • Fixed: #Predicate does not support UUID, Date, and URL properties. (109539652) • Fixed: @Query using SortDescriptors based on .reverse sorting on strings can fail to fetch results. (109572633) • Fixed: Creating a @Query with a sortdescriptor that uses a relationship keypath will crash. (109626376) • Fixed: will Set and did Set observers will prevent @Model from properly transforming those stored properties and they will not persist. (109664186) • Fixed: SwiftData queries don’t support some #Predicate flatmap and nil coalescing behaviors. (109723704) • Fixed: Xcode code generation for SwiftData Models from CoreData xcdatamodels will refer to original Name instead of renaming Identifier. (109782236) • Fixed: Unsigned applications using Document API without a proper app container might overwrite the default container. (109784405) • Fixed: After deleting an item, SwiftUI might attempt to reference the deleted content during the animation causing a crash. (109838173) • Fixed: Custom schema migrations with SchemaMigrationPlan will fail. (110114696) • Fixed in beta 7: Apps using SwiftData that are built with Xcode 15 beta 6 have known issues when running on macOS Sonoma 14 beta 6. (113971288)
Known Issues • SwiftData models with implicitly unwrapped optional properties will generate a compiler error that all stored properties were not set. (114140139) Workaround: Set the value of non-relationship stored properties in the initializer, and mark relationship properties as optional.
SwiftUI
New Features • Adds .accessoryBar and .accessoryBarAction button styles on macOS for buttons used in the context of an accessory toolbar (sometimes referred to as a “scope bar”). • Buttons of the .accessoryBar style typically narrow the focus of a search or other operation. • Buttons of the .accessoryBarAction style perform extra actions releative to the accessory toolbar’s main functions, like adding or editing filters. • Both styles affect other view types that you can apply a button style to, like Toggle, Picker, and Menu, in addition to Button. (44351471) • Bordered buttons on macOS now support flexibly large heights for larger label sizes. If the label has no preferred size or a small size, the button will be the standard macOS button height. However, if the button label has a larger minimum size, the button will also now grow larger instead of clipping the label. (56652012) (FB7411612) • Adds new view modifiers to customize alerts and other dialogs within a view. ◦ Use dialogIcon(:) to customize the icon. In macOS, this icon replaces the default icon of the app. This modifier has no effect in other platforms. ◦ Use dialogSeverity(:) to set the severity of confirmation dialogs and alerts, which can help indicate that extra care should be taken when choosing a particular action in the dialog. ◦ Use dialogSuppressionToggle to enable user supression of dialogs and alerts in macOS. (62920817) • RoundedRectangle now defaults to the continuous corner style. (63246947) • .onChange has new overloads where the closure takes 0 or 2 arguments, these new versions will call the new version of the closure (i.e. after the specified value has changed), so any captured properties will have up to date values. The previous overload (which calls the old version of the closure) has been deprecated. (67344857) • Spring animations will now default to being critically damped (i.e. a bounce of 0). (75149732) • Scenes in Catalyst now support the windowResizability modifier. (84203422) • Added support for dialogSeverity in Catalyst applications. (95918809) • Use the springLoadingBehavior(:) view modifier to control spring loading behavior of views. Some views, like TabView, default to allowing spring loading, while others, like Button, do not. Spring loading refers to a view being activated during a drag and drop interaction. On iOS this can occur when pausing briefly on top of a view with dragged content. On macOS this can occur with similar brief pauses or on pressure-sensitive systems by “force clicking” during the drag. (96569875) (FB10572945) • Lists using the SidebarListStyle hosted in primary column of a UIKit UISplitNavigationController were previously rendering with an insetGrouped appearance. With this change they will render as the expected sidebar appearance similar to if the List were hosted in a SwiftUI NavigationSplitView. (96909195) • The toolbar and navigationTitle modifiers now work outside of the SwiftUI App Lifecycle on macOS. Use NSHostingView.sceneBridgingOptions to enable or disable this functionality. (101092365) • The SceneStorage dynamic property now works when using an NSHostingView, provided the view and its window have been configured for state restoration via AppKit. See NSUserInterfaceItemIdentification and NSWindowRestoration for more information regarding state restoration in AppKit. (101097013) • DismissAction can now be used to programmatically close an NSWindow when its content View is an NSHostingView. (101097410) • ProgressView labels can be hidden with the labelsHidden view modifier. (101517619) • The badge view modifier now works on views within a menu in macOS. Use a badge to convey optional, supplementary information about a menu item. (102025014) • Use the buttonRepeatBehavior(:) view modifier to make buttons repeatedly trigger their actions on prolonged interactions. Apply this to buttons that increment or decrement a value or perform some other inherently iterative operation. Interactions such as pressing-and-holding on the button, holding the button’s keyboard shortcut, and holding down the space key while the button is focused trigger this repeat behavior. (102156410) • Animation.default now uses a spring animation equivalent to Animation.spring. In addition, Animation.default is now only equal to itself when using ==, allowing users to differentiate between animations that were intentionally chosen and those that use the default animation. (103169056) • During gesture change callbacks, velocity will automatically be tracked so that it can be applied to animations that finish when the gesture finishes. (103371523) • View.focusable() now opts in to keyboard focus whether or not keyboard navigation is enabled in System Settings. For the previous behavior, pass .activate for the modifier’s interactions argument. (104616966) • When two Text are vertically adjacent (for example in a VStack with no spacer in between) SwiftUI will automatically calculate appropriate spacing. To opt-out if this behavior either place a Spacer or specify spacing parameter to the container view. (104782785) • For apps built using the macOS 14 SDK, using DismissAction to close a window will default to using DismissBehavior.interactive. (105406945) • When an NSHostingView is the content View of an NSWindow, its sceneBridgingOptions property will default to .all, unless otherwise specified. (106216343) • When using @Environment(.self) to capture an entire EnvironmentValues, SwiftUI will now track which properties are accessed to only invalidate the property when those properties change. (106310433) • Use the new navigationDestination(item:destination:) overload to present a navigation destination when a bound item is non-nil, or to dismiss the destination when the bound item becomes nil again. (106319528) • The sidebar toggle toolbar item in NavigationSplitView was moved from over the detail column to over the sidebar column for apps linked on Ventura or later. If the new position is amenable, ensure that items previously in the sidebar column are not inadvertently hidden due to limited space. Either move these items into the detail/content column view builder, or set a minimum width on the sidebar column that allows these items to show with navigationSplitViewColumnWidth(min:ideal:). If the prior behavior is desired, remove the toggle button with toolbar(removing: .sidebarToggle) and place your own sidebar toggle toolbar item. Note that SidebarCommands() is orthogonal to the button. (107148514) • Shapes now default to mirroring when in a right to left layout direction. (107405880) • Changing from one Gradient value to another will now animate, but only once apps are rebuilt against the new SDK. (107408691) • All Sections inside Lists and Tables can be configured to be collapsible using new initializers on Section. Previously all Sections inside Lists using the SidebarListStyle received outline disclosure indicators in every header. Section headers will no longer render this control by default. An outline disclosure will only be provided in the header if the Section is initialized with an isExpanded binding to a bool. This bool represents the isExpanded state of the Section. Sections created with an isExpanded binding inside a Table on macOS will now provide a default outline disclosure indicator to collapse or expand the Section. (107592493) • The listSectionSpacing modifier can now be used within Lists. (109271050) • View.onKeyPress(_:action:) can’t filter key presses when bridged controls have focus. (109799056) • Scenes in Catalyst now support the defaultSize modifier. (110038374)
Resolved Issues • Fixed: Menu could not be used with hoverEffect. (67879883) (FB8554520) • Fixed an issue where dynamically enabled buttons (e.g. with a TextField) were not updated in alerts. (95917673) (FB10463211) • Fixed: menuStyle(.button) is compatible with custom button style implementations. Applying a custom buttonStyle on a Menu is supported. (96156722) • Fixed: DatePicker on macOS now maintains a fixed ideal size instead of filling the width of its container. (98798881) • Fixed: Scroll environment properties like isScrollEnabled and scrollDismissesKeyboardMode are no longer propagated past nested scroll views. (99195890) • Fixed: Previously it was possible for views animating their removal via a transition to be drawn above a view with the same zIndex that has not yet been removed. This was unintentional and has now been updated: views transitioning out of the view hierarchy are always drawn below non-removed views with the same zIndex. (101085960) • Fixed: Table row identifiers in ForEach are now derived from their identifier rather than the TableRow identifier within the ForEach. In this example, from within a Table:
ForEach(myData) { data in TableRow(data.someFieldAlsoOfTypeData) }
the resulting identifiers used by SwiftUI are now data.id rather than data.someFieldAlsoOfTypeData.id. If user needs to restore prior behavior, specify the ID explicitly using the id of the ForEach. (101174261) • Fixed: Table supports triggering primaryAction of contextMenu with return key. (101194950) • Fixed: LazyVGrid or LazyHGrid has an improved layout when used with fixedSize(). (103075945) • Fixed: List and Table on macOS now have visible separators by default, unless unspecified or unless alternating row backgrounds are enabled. Separators can be explicitly hidden using the existing listRowSeparator(.hidden) modifier on the rows views. (103687472) • Fixed: fileImporter and fileMover view modifiers now require calling URL.startAccessingSecurityScopedResource() before accessing the provided URL, and URL.stopAccessingSecurityScopedResource() when user no longer needs access to a file or directory pointed to by a security-scoped URL. (104448864) • Fixed: The new .navigationDestination(item:content:) modifier now works correctly both inside a NavigationStack and outside a stack but inside a column of a NavigationSplitView. Inside a stack, setting the bound item to a non-nil value will push a view onto the stack immediate above the view containing the modifier. Setting the bound item to a nil value will pop the view. Outside a stack but inside a column of a NavigationSplitView, setting the bound item to a non-nil value will replace the root view of the subsequent column. Setting the bound item to a nil value will restore the original root view. (106106406) • Fixed: When a flexible frame modifier (e.g. frame(minHeight: 100, maxHeight: 200)) is used inside a scroll view the modified view could end up truncating content. This would most often be visible with the content view being a VStack with multiline text. (107014454) • Fixed: When scrolling to the end of a scroll view using ScrollViewReader, the final offset will be clamped to the scroll view’s total content size and no longer overscroll. (107558652) (FB12094127) • Fixed: Removed a spurious warning, “NavigationLink presenting a value must appear inside a NavigationContent-based NavigationView. Link will be disabled.” (107877668) (FB12111423) • Fixed: Views in Lists and Lazy Stacks might be improperly displayed after scrolling. (108021411) • Fixed: Suggested search tokens will be hidden by default when the search text is not empty (108381393) • Fixed: ScrollView when used with the searchable modifier has an improved transition when presenting or dismissing search on iOS and iPadOS. (109265624) • Fixed an issue where NSHostingView would not appear when printed using NSPrintOperation. (109412691) • Fixed: Two NavigationSplitView initializers taking columnVisibility as a value rather than a Binding. (109426553) • Fixed: macOS under-toolbar/full-height inspectors now behave as presented in the WWDC23 inspector session. Notably the full-height appearance was previously used incorrectly sometimes. (109532401) • Fixed: Clicking on a button can errantly warn about updating state during a view update. (109610945) • Fixed: Inspector presentations no longer have an animation glitch. Inspector presentations no longer increase window size on first presentation unless the window is forced to grow larger by navigationSplitViewColumnWidth modifiers. (111577034) (FB12488754)
Known Issues • View.defaultFocus(_: _:) isn’t reliable with text controls. (109750983) Workaround: Manually update focus state bindings from an action passed to View.onAppear(perform:). • On iOS, using an Observable object’s property as a selection value of a List inside NavigationSplitView may cause a “Simultaneous accesses to …” error when a list selection is made via tap gesture. (113978783) (FB12981860) Workaround: There is no current workaround for Observable properties. Alternatives include factoring out the selection value into separate state stored outside the object, or using ObservableObject instead.
SwiftUI Navigation
Resolved Issues • Fixed: Animations inside Navigation* structures are no longer disabled. (107771283)
SwiftUI Outline
Resolved Issues • Fixed: Leaf views in OutlineGroups (those views where the children keyPath argument has a value of nil) are no longer wrapped in implicit HStacks. If relying on an implicit HStack before, users will now see multiple rows when linking against the new SDK.
Symbol Effects
Resolved Issues • Fixed: In the objective-C API in Symbols.framework, requesting effectWithWholeSymbol on NSSymbolPulseEffect and NSSymbolBounceEffect will result in the effect being configured to animate by layer instead. (109284710)
System UI Languages
Resolved Issues • Fixed: There are some strings left in English for people running macOS 14.0 Beta in other languages. (109520700)
Trusted Execution
New Features • /usr/bin/syspolicy_check is a new command line tool to help determine if the provided macOS application will pass the current running configurations’ system policy. This includes the same checks performed by the Apple notary service and other macOS Trusted Execution layers such as codesign, Gatekeeper, XProtect, and more. Please see the main page for additional details. (108737781) • /usr/bin/gktool is a new command line tool to assess Gatekeeper Policy on applications. gktool can be called to pre-warm the system cache so users do not see the Verifying… dialog on first launch of an application. (109793778)
UIKit
New Features • The query rects passed in to -layoutAttributesForElementsInRect: will be more specific to the collection view’s frame, and the rect might intersect with previously queried frames. If subclassing a UIKit vended layout and modifying the frames of elements by applying offsets, make sure that the same offset is applied to the rect passed in to -layoutAttributesForElementsInRect: as well, or the user might see items disappearing when they shouldn’t be. (108663389)
Update
Resolved Issues • Fixed: T2 Macs might receive an error in the Software Update Preferences pane when attempting to update to macOS Ventura 13.6 Beta 1 or macOS Monterey 12.7 Beta 1. (113829185)
Video Effects
Resolved Issues • Fixed: Changing video effects settings for an application that accepts camera input changes the settings for other applications that also accept camera input. (108229728) • Fixed: The Video Effects menu bar item might not appear for certain applications. (110038665)
Virtualization
Resolved Issues • Fixed: Installing the macOS Seed in a virtual machine might fail on a host Mac. (109234128)
Vision
Resolved Issues • Fixed: VNDetectHumanBodyPose3DRequest now returns results for images/frames of people without depth metadata or camera intrinsics explicitly provided. (109723859) • Fixed issue with cameraOriginMatrix so a 180 rotation around x axis is no longer required. Please reference updated sample code for WWDC Session 111241. (110726503)
Weather Averages
Resolved Issues • Fixed: Placeholders are displayed in locations where Weather averages data isn’t available. (110133240)
Web Apps
Resolved Issues • Fixed: When the system is set to dark mode, the title bar for web apps now appear correctly. (99514840) • Fixed: Clicking a notification activates the web app on the current page instead of opening the expected URL. (107906244) • Fixed: After allowing permission access, the web app correctly appears in System Settings > Privacy & Security > Location Services. (109499769)
Wi-Fi
Resolved Issues • Fixed: While a Mac has active traffic via Wi-Fi, you might experience difficulty discovering and connecting to Continuity Camera. (109954955)
WidgetKit
Resolved Issues • Fixed: Some widgets on macOS, especially those that use App Intents for Configuration, might not work properly the first time the system is started. (109518265) • Fixed: Apps that use the .showsWidgetContainerBackground environment variable no longer crash. (113947483) (FB12974903)
WKWebView
New Features • Added support for inline predictions for autocomplete. (105197136)
Xcode
Resolved Issues • Fixed: Xcode might crash when creating a new file. (112337760)
- September 2025
- No date parsed from source.
- Detected by Releasebot:Sep 29, 2025
macOS Sonoma 14.6 Release Notes
Apple rolls out the macOS 14.5 SDK bundled with Xcode 15.4 for Sonoma 14.6, urging developers to update apps and test API changes. It also lists ARKit, Core Spotlight, Finder, Video Subscriber Account, and Video Toolbox fixes plus decoding improvements on Apple Silicon.
Update your apps to use new features, and test your apps against API changes.
The macOS 14.5 SDK provides support to develop apps for Mac computers running Sonoma 14.6. The SDK comes bundled with Xcode 15.4, available from the Mac App Store. For information on the compatibility requirements for Xcode 15.4, see Xcode 15.4 Release Notes.
ARKit
Resolved Issues- Fixed: iPhone and iPad apps on Apple Silicon Macs quit unexpectedly when initializing ARSkeleton Definition. (128038936)
Core Spotlight
Resolved Issues- Fixed: iPhone and iPad apps on Apple Silicon Macs quit unexpectedly when invoking -[CSSearchable Item Attribute Set set Action Identifiers:]. (128039095)
Finder
Resolved Issues- Fixed: Home Videos unexpectedly sync as Music Videos to iPod nano (7th generation). (94899119)
Video Subscriber Account
Resolved Issues- Fixed: iPhone and iPad apps on Apple Silicon Macs quit unexpectedly if VSOpen TVProvider Settings URLString is referenced. (113562872)
Video Toolbox
Resolved Issues- Fixed an issue and now on Apple Silicon, if width or height is greater than 4096 columns or rows and content uses 4:2:0 chroma subsampling and 8-bit depth, the hardware decoder driver will reject it and a software decoder will be automatically selected to ensure artifact-free decoding. AVC (H.264) content at level 5.2 or lower can be handled by the hardware decoder. Content that otherwise conforms to level 5.2 but is high frame rate (e.g. 4k at 100 or 120 fps) is labelled level 6, 6.1 or 6.2 and is also handled by hardware. If content is 10-bit, 4:2:2 or 4:4:4, the hardware decoder will be used. (122448862)
- September 2025
- No date parsed from source.
- Detected by Releasebot:Sep 29, 2025
macOS Sonoma 14.5 Release Notes
New macOS 14.5 SDK support bundled with Xcode 15.4 to help you build and test apps for Sonoma 14.5. Update your apps to leverage the latest features and run compatibility checks against API changes. Resolved issues include FaceTime link approval notifications and ensuring macOS launches the correct version for Designed for iPad apps after launch or build.
Update your apps to use new features, and test your apps against API changes.
The macOS 14.5 SDK provides support to develop apps for Mac computers running Sonoma 14.5. The SDK comes bundled with Xcode 15.4, available from the Mac App Store. For information on the compatibility requirements for Xcode 15.4, see Xcode 15.4 Release Notes.
FaceTime
Resolved Issues- Fixed: Users might not be able to approve or decline a FaceTime link call because notifications might not be received on the caller side for them to accept or decline the call. (125617787)
Mac (Designed for iPad) Apps
Resolved Issues- Fixed: macOS might launch the wrong version for (Designed for iPad) apps after double clicking the icon or after building from Xcode. (121404522)
- September 2025
- No date parsed from source.
- Detected by Releasebot:Sep 29, 2025
macOS Sonoma 14.4 Release Notes
Announces macOS 14.4 SDK with Xcode 15.3, plus a slate of feature additions and resolved issues across AppKit, Core ML, StoreKit, SwiftUI, and more. Highlights include new StoreKit view modifiers, a CPU backend for MLComputeUnits.cpuOnly, and various UI and reliability fixes for Finder, Messages, and Passkeys, plus synchronization and new API surfaces.
Update your apps to use new features, and test your apps against API changes.
The macOS 14.4 SDK provides support to develop apps for Mac computers running Sonoma 14.4. The SDK comes bundled with Xcode 15.3, available from the Mac App Store. For information on the compatibility requirements for Xcode 15.3, see Xcode 15.3 Release Notes.
AppKit
Resolved Issues- Fixed an issue where center or right aligned NSTextField appears blurry. (120819010)
- Fixed: Resolves an issue where pointer style does not update when browsing in Safari. (121131986)
Core Audio
Known Issues- To improve security and stability, using launchctl kickstart -k is no longer permitted for critical system processes. If a process must be forcefully terminated, it is recommended to use kill instead. (123028502)
Core ML
New Features- ML Program models that are loaded with MLComputeUnits.cpuOnly will use a new high performance CPU backend that takes advantage of Accelerate framework’s BNNS library. (114037934)
CreateML
Resolved Issues- Fixed: When using the transfer learning algorithm option, the CreateML app and framework object detection template might fail to converge and cause poor model quality and produce more than expected false positives. (114480994)
Finder
Resolved Issues- Fixed: Resolves an issue where tiling a window causes the desktop picture to turn black. (118044617)
Messages
Resolved Issues- Fixed: Stickers (Memoji and 3rd party) might appear blank. (120994483)
Passkeys
Resolved Issues- Fixed: Registering passkeys might not work on certain websites. (122217903)
Software Updates
Resolved Issues- Fixed: Updates to macOS 14.4 starting from macOS 11.0–12.3.1 will not work. (120548971)
StoreKit
New Features- productDescriptionHidden(_:) API can be used to configure the visibility of product descriptions in ProductView, StoreView, and SubscriptionStoreView instances within a view hierarchy. When building with Xcode 15.3, the view modifier can be used even if your app is running on iOS 17.0, iPadOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0, visionOS 1.0, or later. When implementing a product view style, it can support this new view modifier by checking the descriptionVisibility property on the configuration value. (110414819) (FB12261973)
- You can use SubscriptionStoreView to present promotional offers by adding the subscriptionPromotionalOffer(offer:signature:) modifier. If you’re already using inAppPurchaseOptions(_:) modifier to support promotional offers for StoreKit views, you should adopt the new API instead when your app is running on iOS 17.4, iPadOS 17.4, macOS 14.4, tvOS 17.4, watchOS 10.4, visionOS 1.1 or later. Do not use both APIs to apply a promotional offer for the same view. (115358806)
- Fixed: The isEligibleForIntroOffer property and isEligibleForIntroOffer(for:) method now reflect ineligibility in cases where a customer would otherwise be eligible for the offer if they weren’t actively subscribed. This means a customer which is not currently eligible for an introductory offer may become eligible in the future. Customers who redeem an introductory offer for a given subscription group will continue to never be eligible for another introductory offer in that subscription group. You can detect this case this by checking if any one transaction with a matching subscriptionGroupID has the type property on offer set to introductory. (103604770) (FB11889732)
SwiftUI
New Features- Table now supports dynamic numbers of columns with the new TableColumnForEach. (79492167) (FB9189673)
- Fixed: DatePicker in macOS reset focus to the first date component when its bound date changes and timeZone is overriden in the environment. (97376561)
Synchronization
New Features- New os_sync_wait_on_address APIs have been added. They are expected to be used for implementing synchronization primitives that do not have a sense of ownership. Please file feedback if you need Synchronization functionality not covered by existing API. (94759935) (FB10141068)
- September 2025
- No date parsed from source.
- Detected by Releasebot:Sep 29, 2025
macOS Sonoma 14.3 Release Notes
Update notes: macOS 14.2 SDK with Xcode 15.1 for Sonoma 14.3; guides to update apps and test against API changes. Resolved issues cover AppKit, Automatic Assessment Configuration, WebPush notifications, StoreKit, and virtualization fixes.
Update your apps to use new features, and test your apps against API changes.
The macOS 14.2 SDK provides support to develop apps for Mac computers running Sonoma 14.3. The SDK comes bundled with Xcode 15.1, available from the Mac App Store. For information on the compatibility requirements for Xcode 15.1, see Xcode 15.1 Release Notes.
AppKit
Resolved Issues- Fixed: Resolves a performance issue where partial update causes the entire NSView to be redrawn. (113028520)
Automatic Assessment Configuration
Resolved Issues- Fixes an issue where the Mac can lose its internet connection during Automatic Assessment Configuration due to DHCP lease expiration. (111437675)
Notifications
Resolved Issues- Fixed: Resolved an issue where WebPush notifications fail to deliver after restart. (118134672)
StoreKit
Resolved Issues- Fixed: Resolved an issue where APIs which provide Transaction values would unexpectedly fail when the purchase price of the transaction is a very large number. (118883880)
Virtualization
Resolved Issues- Fixed: Resolved an issue where virtualized macOS Monterey guest fails to boot after installing software update. (111970030)
- September 2025
- No date parsed from source.
- Detected by Releasebot:Sep 29, 2025
macOS Sonoma 14.2 Release Notes
This release adds macOS Sonoma 14.2 SDK support with Xcode 15.1, introduces iMessage Contact Key Verification across devices, plus StoreKit, SwiftUI, WidgetKit enhancements and bug fixes across Messages, ServiceManagement, SwiftUI, and charts.
Update your apps to use new features, and test your apps against API changes.
The macOS 14.2 SDK provides support to develop apps for Mac computers running Sonoma 14.2. The SDK comes bundled with Xcode 15.1, available from the Mac App Store. For information on the compatibility requirements for Xcode 15.1, see Xcode 15.1 Release Notes.
iMessage Contact Key Verification
With iMessage Contact Key Verification, users can choose to further verify that they are messaging only with the people they intend. iMessage Contact Key Verification uses Key Transparency to enable automatic verification that the iMessage key distribution service returns device keys that have been logged to a verifiable and auditable map. When a user enables the feature, they will be notified about any validation errors directly in the Messages conversation transcript and Apple ID Settings.
For even higher security, iMessage Contact Key Verification users can compare a contact verification code in person, on FaceTime, or through another secure call. They can also choose to create or edit a contact and save a public key to turn on iMessage Contact Key Verification with that person.
All devices signed into your iCloud account must be on the minimum supported version of iOS 17.2 Beta, macOS 14.2 Beta, or watchOS 10.2 Beta. If you wish to keep using other devices on older versions of the OS, you will need to sign out of iMessage on these devices in order to enable contact key verification. (111356044)
Resolved Issues
- Fixed: When verifying another user, Contact Verification Code will not show unless both users are on beta 4 or higher. (114462363)
- Fixed: After verifying a contact, the verificaton checkmark might not show up in Messages app. (116142336)
- Fixed: Users might see an error to Turned Off transcript every few hours. (116405131)
- Fixed: Users might see that they’re are not eligible to enable Contact Key Verification on some of their upgraded devices. (117044482)
Known Issues
- The Learn More links do not link to Knowledge Base articles during Beta. (101563811)
Messages
Resolved Issues
- Fixed: Unlocalized string shown for member count in the full screen Map View of Group Messages might appear (e.g. DETAIL_NUMBER_OF_PEOPLE_LABEL). (117287069)
ServiceManagement
Resolved Issues
- Fixed: Requirements for agents and daemons registered with SMApp Service have changed to prevent sandbox escapes. The target executable must be sandboxed if the main app is sandboxed. A small sandboxed trampoline tool can be written to execute scripts and unsandboxed or system tools. (113037504)
StoreKit
New Features
- New pricing properties price, currency, and currencyCode are now available on Transaction. If an offer was applied to the transaction, a new property offer is available to see information about it (id, type, payment mode), as well as convenience properties offerID, offerType, and offerPaymentMode. (106650768)
Resolved Issues
- Fixed: The StoreKit 2 Transaction properties price, currency, and Offer.paymentMode now have Optional types. (116592563)
- Fixed: The StoreKit 2 Transaction properties price, currency, and Offer.paymentMode now have Optional types. (116809380)
- Fixed an issue causing the refund request “Done” button to not dismiss the sheet when using StoreKit Testing in Xcode. (117482750)
- Fixed an issue where StoreKit 2 device Verification was incorrect, which caused transaction verification to fail. (117689523) (FB13315344)
Swift Charts
Resolved Issues
- Fixed an issue where a scrollable chart did not respect the initial non-zero binding value passed to chartScrollPosition. (114889276)
SwiftUI
New Features
Use _logChanges() to log causes of SwiftUI view updates.
Call the new debugging method _logChanges() in the body of a SwiftUI view to log information about why the system is updating the view. For example:
struct MyView: View { #if DEBUG let _ = Self._logChanges() #endif // … rest of view body … }
As well as the physical property names, “@self” marks that the view value itself has changed, and “@identity” marks that the identity of the view has changed (that is, that the persistent data associated with the view has been recycled for a new instance of the same type).
The new _logChanges() method is like the existing _printChanges() one, except that the new method uses the system console, which is useful in some debugging workflows.
Calls to _logChanges() log at the info level to the “com.apple.SwiftUI” subsystem with the category “Changed Body Properties”. (113352555)
Resolved Issues
- Fixed: Resolved a possible Swift access conflict crash that could occur with toolbar items. (113992797)
- Fixed: To prevent unintentional implicit dependency cycles, ImageRenderer no longer sends Observable updates when the image it produces changes. This change does not affect the behavior when a dependency is explicitly declared by observing the ImageRenderer’s publisher. (116836341)
WidgetKit
Resolved Issues
- Fixed: In widgets Text(_:style:) does not animate its content by default. (107582710)