macOS 12 Beta Build 21A5248p Release Notes
Notes and Known Issues
AppKit
AirPlay Receiver
Known Issues
- AirPlay Receiver doesn’t appear in System Preferences > Sharing on unsupported hardware. (78170150)
App Extensions
Known Issues
- App Extensions within apps built for iOS or iPadOS won’t launch. (78042681)
App Store
New Features in macOS 12 beta
- StoreKit 2 introduces a modern Swift-based API that takes advantage of new language features like Swift concurrency. Use this API to load product information, display in-app purchases in your store, allow customers to make purchases, manage access to content and subscriptions, and receive transaction information signed by the App Store in JSON Web Signature (JWS) format. (66587964)
Known Issues
- Client apps using the status listener don’t receive status updates. Changing the
Product.SubscriptionInfo.Status
of asubscription
doesn’t invoke thelistener
. (78375457) - When calling
latest(for:)
onTransaction
, or accessing thelatestTransaction
property on aProduct
value, the method called may not return the latestTransaction
for the givenproductID
. (78466898) Subscription
renewals aren’t automatically pushed to your app through the StoreKit 2 APIs in the App Store sandbox environment.Transaction
and renewal information may not be immediately available. (78463355)- StoreKit APIs fail if the app is contained within
~/Library
. (78470009)Workaround: In Xcode Preferences > Location, change the Derived Data setting to Custom, and choose a directory that isn’t contained in~/Library
.
Authentication Services
Known Issues
- An app might become unresponsive when attempting to register a passkey soon after canceling a previous passkey request. (78294960)Workaround: Force quit and relaunch the app.
AVFoundation
Known Issues
- iOS and iPadOS apps on macOS with resizable windows might unexpectedly display rotated images when viewing live camera previews, or when capturing stills and video. (76122102)
Bluetooth
Known Issues
- Input devices might disconnect unexpectedly. (78421734)Workaround: Turn Bluetooth off and on. If the issue persists, restart your Mac.
Calendar
Known Issues
- Calendar might quit unexpectedly when adding a FaceTime video call to an existing repeating meeting. (78280294)
Core Graphics
Known Issues
- Images or thumbnails might exhibit an unexpected black or white grid overlay. (77994242)
Core Haptics
New Features in macOS 12 beta
- QuickLook can display a visual representation of your Apple Haptic Audio Pattern (AHAP) files. In Finder, select the
.ahap
file and press the Spacebar to preview the pattern visually. (70462875)
Create ML
New Features in macOS 12 beta
- Create ML is now supported for use in command-line tools. (40637430)
- The new
MLHandPoseClassifier
allows you to train models to categorize static hand poses in an image. The newMLHandActionClassifier
allows you to train models to categorize dynamic hand actions in video. (68738683) - The new Audio Feature Print-based
MLSoundClassifier
algorithm enables you to train sound classifier models faster, with higher accuracy, lower latency, and a smaller model size. This is now the default algorithm option for theMLSoundClassifier
in Create ML. (70106630)
Known Issues
- Using Xcode 13 beta to build your existing macOS app that links against Create ML implicitly fails with an undefined symbol error. The same failure also happens if you use Xcode 13 beta on macOS Big Sur 11 to create a new macOS app that links against Create ML. (74036054)Workaround: Explicitly link against the Create ML framework: In Xcode, select your target > Build Phase > Link Binary With Libraries > Add
CreateML.framework
, and then build your app.
Debugging
Known Issues
- When running apps with the
LIBDISPATCH_COOPERATIVE_POOL_STRICT
environment variable set to1
, the process crashes inlibdispatch
. (78177966, 78184764)
Displays Preferences
Known Issues
- Changing display resolution immediately after changing refresh rate might result in the system resetting the refresh rate to the previous value. (77992111)Workaround: Quit and relaunch System Preferences after changing the refresh rate of a display.
- In Displays Preferences, option-clicking the Scaled radio button might not reveal the full list of available resolutions and refresh rates. (77866488)Workaround: Turn off Caps Lock before option-clicking the button.
Endpoint Security
Known Issues
- When initializing a new EndpointSecurity client via
es_new_client
, a set of executable paths is automatically muted for a subset ofAUTH
event types to help reduce inadvertent negative impact to end users (for example, panics triggered bywatchdogd
due to clients not responding toAUTH
events quickly enough). The set of muted paths and associated event types are inspectable usinges_muted_paths_events
. Although unmuting theAUTH
events associated with these paths isn’t recommended, it’s possible to do so usinges_unmute_path_events
. (78405437)
FaceTime
Known Issues
- Spatial panning of audio in Group FaceTime calls might not initiate when starting a call. (78537333)Workaround: Resize the FaceTime window.
Find My
Known Issues
- You might be unable to remove, erase, or place a device into Lost Mode. (76912451)Workaround: Use iCloud Find instead.
Focus
Known Issues
- Focus status in third party apps isn’t available. (75049369)
- Autoreply isn’t functional. (77510470)
Foundation
New Features in macOS 12 beta
- Foundation now includes an automatic grammar agreement engine. This simplifies your code and reduces the number of localized strings you need to provide by automatically inflecting localized strings to account for pluralization, grammatical gender agreement, and agreement with the user’s term of address. It is available for English and Spanish. (70210115)
- Formatting APIs are now available, which focus on the format and remove the need to create, configure, and cache a formatter instance. Each
Formatter
type has aformatted
function. These functions have arguments that allow for configuration and customization of the style. (70220307) JSONSerialization
andJSONDecoder
now support decoding from JSON5. (73954652)- New
SortDescriptor
,KeyPathComparator
, andSortComparator
APIs provide a Swift interface to express archivable rules for sorting values. (74264359)
Known Issues
NSAttributedString
andAttributedString
throw an exception when parsing Markdown that contains tables that don’t explicitly specify table alignments. (77476077)- English pronouns, both traditional and specified via
Morphology.CustomPronoun
, don’t contribute to inflection. (77621682)
Help
Known Issues
- The sidebar doesn’t expand as expected when resizing the Help window. (78317786)
- List items in the sidebar are incorrectly left-aligned instead of center-aligned when the sidebar is expanded. (78317877)
Home
Known Issues
- Package Detection might not work, even though the “Package Detection” switch in camera settings is available. (78020938)Workaround: Update the operating system on your home hub device to the most recent beta.
iCloud
Known Issues
- You might be unable to subscribe to an iCloud storage plan through the Hide My Email settings. (78112695)Workaround: Use System Preferences > Apple ID > iCloud > Manage > Buy More Storage, to subscribe to an iCloud plan.
- Opening an Account Recovery Contact or Legacy Contact invitation link from Messages doesn’t display the invitation as expected. (78522143)
- Choosing “Edit Message” during Account Recovery Contact and Legacy Contact setup generates an invalid invitation link. (78278107)
- iCloud Private Relay settings might be unavailable. (78287769)Workaround: Sign into iCloud, then restart your Mac.
iWork
Known Issues
- Opening a link to shared iWork document might cause Safari to load a blank page or become unresponsive. (76428696)Workaround: Install the corresponding iWork app and ensure that you have enabled iCloud Drive.
Language & Region
Known Issues
- The user property of the
Morphology
type doesn’t currently reflect the selection made in System Preferences > Language & Region > Term of address. You can use theAppleUserMorphology
default to test your app; for example, add the following argument to your app scheme to test as if the user selected a feminine term of address:AppleUserMorphology '{ "grammaticalGender" = "feminine"; }'
(78230115) - Certain languages might display unlocalized text. (78476984)
- Certain languages might exhibit clipped or misaligned layout. (78477103)
Lock Screen
Known Issues
- Memoji isn’t animated as expected when set using the Apple ID pane in System Preferences. (76073287)Workaround: Set your Memoji using Contacts, or in System Preferences > Users & Groups.
Logging
New Features in macOS 12 beta
os_signpost(_:dso:log:name:signpostID:)
from Swift as part of the framework OS on all platforms:- Instantiate
OSSignposter
using a subsystem and category, an existing OSLog object, or an existingLogger
object. - The OSSignposter API provides methods for emitting signposts.
beginInterval(_:id:)
emits begin signposts,endInterval(_:_:)
emits end signposts,emitEvent(_:id:)
emits event signposts. These replace the existingos_signpost
calls based onString
andvarargs
. - The APIs support
String
interpolations for the metadata parameter. TheString
interpolations are the same as those accepted by the Logger APIs . - The OSSignposter API supports all formatting and privacy options- previously offered by the
os_signpost
functions- and follows the same syntax as the Logger APIs. - The APIs provide performance improvements over the legacy APIs.
- The
OSSignposter type
provides a new scoped API for surrounding a block of code bybegin
andend
signposts,withIntervalSignpost(_:id:_:around:)
.
os_signpost
API remains available. (54756831)- Instantiate
os_signpost(_:dso:log:name:signpostID:)
from Swift is part of the framework operating system on all platforms:- Instantiate
OSSignposter
using asubsystem
and acategory
, an existing OSLog object, or an existingLogger
object. - The OSSignposter API provides methods for emitting signposts.
OSSignposter.beginInterval
emitsbegin
signposts,OSSignposter.endInterval
emitsend
signposts, andOSSignposter.emitEvent
emitsevent
signposts. These replace the existingos_signpost
calls based onString
andvarargs
. - The APIs support
String
interpolations for themetadata
parameter. TheString
interpolations are the same as those accepted by the Logger APIs . - The OSSignposter API supports all formatting and privacy options- previously offered by the os_signpost functions- and follows the same syntax as the Logger APIs.
- The APIs provide performance improvements over the legacy APIs.
- The
OSSignposter
type provides a new scoped API for surrounding a block of code by begin and end signposts,OSSignposter.withIntervalSignpost
. Note: These APIs are unavailable in iOS 14 and iPadOS 14 and earlier; however, the existing os_signpost API remains available. (54756831
- Instantiate
Known Issues
- For every process crash, macOS generates two crash logs. (76650102)
Mac Catalyst
New Features in macOS 12 beta
- Users of iPad and iPhone apps on Macs with M1 may enable/disable the Touch Alternatives feature via the app’s preferences panel. This preference is automatically added to all iPad and iPhone apps on Macs with M1. The feature makes it possible to use the keyboard to simulate swipes, taps, and drags, as well as device tilt, and it maps touches from the trackpad directly into the app when the Option key is held down.
- Developers can automatically enable this feature for their app by default, by adding a properly configured com.apple.uikit.inputalternatives.plist to the app bundle. An onboarding dialog is shown on first launch in this case.
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>defaultEnablement</key> <true/> <key>version</key> <real>1</real> <key>requiredOnboarding</key> <array> <!-- Only include applicable features! --> <string>Tap</string> <string>Arrow Swipe</string> <string>Scroll Drag</string> <string>Tilt</string> <string>Trackpad Capture</string> </array> </dict> </plist>
- Tailor the
requiredOnboarding
array to onboard the Touch Alternatives that only make the most sense for your app. While only the subset of features specified in the array is visually presented to the user during onboarding, all Touch Alternatives are active when enabled in this manner.
Known Issues
- MusicKit can’t be imported alongside SwiftUI in a given Swift file for a Mac Catalyst app; however, Mac Catalyst apps built with UIKit aren’t affected. (78525134)Workaround: Isolate usage of
MusicKit
for Mac Catalyst in files that don’t import SwiftUI. buttonSize
has no effect. (74057477)Workaround: Use theUIBehavioralStylePad
behavioral style if button size is non-negotiable.- Setting the title color of a
UIButton
doesn’t work regardless of whether you usebaseForegroundColor
ortitleColorForState:
. (76566253) - System buttons have a black background color if no color is set. (76910619)Workaround: Set a color, or if you want the system default color, request a button using the iOS 14 and Mac Catalyst 15 or earlier API:
buttonWithType:
. - Toolbar buttons that invoke actions handled by subclasses of
UISplitViewController
are never enabled. (78421561)
macOS Recovery
Known Issues
- You might be unable to start up from macOS Recovery. (78334511)Workaround: Make several attempts in succession. Otherwise, see the “If you can’t start up from macOS Recovery” section of About macOS Recovery on Intel-based Mac computers .
Known Issues
- Enabling or disabling an app extension might not be reflected in the toolbar of newly opened compose windows. (76475807)Workaround: Quit and relaunch Mail.
- MailKit APIs might unexpectedly appear available to Mac Catalyst; however, these are only supported in macOS. (78105388)
Maps
Known Issues
- Maps might become unresponsive if you resize the window after clicking into the search bar. (78486298)
Deprecations
MKPinAnnotationView
andMapPin
are deprecated in this beta. (78536295)
Messages
Known Issues
- Clicking the reply bubble in a Business Chat conversation might produce unexpected results. (76702989)Workaround: Use Business Chat on iPhone.
Music
Known Issues
- The share item might not appear in the contextual menu for songs and albums. (78037998)
- You might be unable to play Lossless or Spatial Audio tracks via Siri. (78277808)
Networking
New Features in macOS 12 beta
- The default
Accept-Language
header thatURLSession
sends has an updated format and corrected values for multiple locales. In addition to the preferred language, the header also includes the current system language as a fallback if it differs from the preferred language. This behavior effects apps with links against macOS 12, iOS 15, tvOS 15, and watchOS 8 SDKs. (38772422) URLSession
now includesasync
functions. (68890254)For example, a one-shot fetch:let (data, response) = try await URLSession.shared.data(from: URL(string: "https://www.apple.com")!) if let httpResponse = response as? HTTPURLResponse, httpResponse.statusCode == 200 { // Use data. }
And support for anAsyncSequence
stream of bytes:let (bytes, response) = try await URLSession.shared.bytes(with: URL(string: "https://www.apple.com")!) if let httpResponse = response as? HTTPURLResponse, httpResponse.statusCode == 200 { for try await line in bytes.lines() { // Parse line. } }
Deprecations
- Support for cleartext HTTP URL schemes for Proxy Automatic Configuration (PAC) is now deprecated. Use only HTTPS URL schemes for PAC. This affects all PAC configurations including, but not limited to, configurations set via Settings, System Preferences, profiles, and
URLSession
APIs such asconnectionProxyDictionary
, andCFNetworkExecuteProxyAutoConfigurationURL(_:_:_:_:)
. If you configure a cleartext HTTP PAC URL, the system may upgrade it to HTTPS during PAC file loads. Web Proxy Auto-Discovery (WPAD) Protocol via DNS isn’t affected. Dynamic Host Configuration Protocol (DHCP) Option 252 WPAD may attempt to upgrade cleartext HTTP URLs to HTTPS during PAC file loads. (61981845)
Notes
Known Issues
- The Quick Note hot corner can’t be configured from the Hot Corners sheet in Desktop & Screen Saver preferences. (77272604)Workaround: Configure the Quick Note hot corner using System Preferences > Mission Control > Hot Corners.
Photos
Known Issues
- “Shared with You” might appear even when the Automatic Sharing switch in Messages is turned off. (78181276)
Python
Known Issues
- A prompt informing you about the deprecation of Python 2.7 might appear multiple times, and the name of the app indicated in the prompt might be inaccurate. (78719958)
RealityKit
Known Issues
- The
PhotogrammetrySession.StreamingInput
init onPhotogrammetrySession
isn’t supported. (78838906) - Requesting a
BoundingBox
with aPhotogrammetrySession.Request.bounds
usingprocess(requests:)
won’t produce a correct bounding box unless the.bounds
request is the first request in the array. (78325791)Workaround: Ensure any.bounds
requests are always the first request in the array toprocess(requests:)
.
Deprecations
- The
output
Combine publisher property for the message stream is deprecated. ThePhotogrammetrySession.outputs
property which uses the new Swift featureAsyncSequence
replaces it. (78319158)
Safari
Known Issues
- Safari might not load websites as expected when Hide IP address from trackers is on. (78529425)Workaround: Refresh the page, or uncheck Hide IP address from trackers under Safari > Preferences > Privacy.
- Text in the Smart Search field might appear faded. (78407518)
Shazam
Known Issues
- The
songs
property is only available when compiling against devices as an extension ofSHMatchedMediaItem
. (78589271)
Shortcuts
Known Issues
- The Shortcuts command-line tool doesn’t support signing. (74999291)
- Apps running under Rosetta 2 might become unresponsive if Shortcuts are enabled for the Services menu. (78134762)
- Shortcuts isn’t scriptable. (78609585)
Swift
New Features in macOS 12 beta
AttributedString
is now available with the same character-counting behavior as Swiftstring
. It is fully localizable, and also includes support for Markdown, Codable, strongly typed attributes, and more. (27227292)NotificationCenter
includes theAsyncSequence
API for receiving notifications using async/await. (74401384)for await note in NotificationCenter.default.notifications(named: .MyNote) { // use note. }
SwiftUI
New Features in macOS 12 beta
- You can create
Text
from anAttributedString
structure.Text
respects the styles you provide through attributes within the SwiftUI attribute scope; these styles take precedence over styles you provide through view modifiers. (74841755) LocalizedStringKey
can now contain Markdown syntax. The system parses Markdown strings when you create aText
view from aLocalizedStringKey
, includingText
views created with a string literal. The system stylesText
according to Markdown constructs. (74515884)- Specific kinds of animations now execute off the main thread, so there are new thread-safety requirements. (70524799) Ensure the following functions and types are thread-safe:
- All methods and accessors of types conforming to these protocols:
AlignmentID
,Animatable
,EnvironmentKey
,EnvironmentValues
,Equatable
,GeometryEffect
,Hashable
,Identifiable
,PreferenceKey
,Shape
,VectorArithmetic
. - Any closures you pass to the following types and functions, but only if the views that created them don’t have references to
ObservableObject
types:ForEach
,GeometryReader
,backgroundPreferenceValue(_:_:)
,overlayPreferenceValue(_:_:)
,transformPreference(_:_:)
,anchorPreference(key:value:transform:)
,transformAnchorPreference(key:value:transform:)
,transformEnvironment(_:transform:)
,transaction(_:)
.
- All methods and accessors of types conforming to these protocols:
- A
TextField
provided anNSFormatter
now updates its binding as the user types.NSFormatter
formats the text of the field when the user submits the field, or when focus moves away from the field. (67899823) - The
global
coordinate space on macOS is now the top left corner of the window, consistent with other platforms. On previous versions of macOS, or when linked on a SDK prior to 12, theglobal
space has a flipped origin of the bottom left corner of the window. Check for its uses in conjunction with components such asGeometryReader
. (65037389) - Plain text fields will no longer draw focus rings. (51896032)
- Sidebars in Mac Catalyst now have a material background and a native row height. (65388682)
- A
DisclosureGroup
now toggles its expansion when tapping on the entire row. (62208702)
Resolved in macOS 12 beta
- Fixed an issue that occurred when creating a
Color
from aUIColor
or anNSColor
. This process now uses the explicitinit(uiColor:)
orinit(nsColor:)
initializers. Give preference to theColor
standard-system colors over the equivalent fromUIColor
orNSColor
. For example, useblue
over the visually equivalentsystemBlue
. (73987059) - Fixed an issue that dispatched a callback for
onAppear(perform:)
andonDisappear(perform:)
when any of the views in a group of multiple views appeared or disappeared. Now, when you apply them to a group of multiple views,onAppear(perform:)
andonDisappear(perform:)
only dispatch the callback each time the first view appears and the last view disappears. (75609476) - Fixed an issue with labeled views that distributed the space in the view equally between controls. When laid out horizontally, labeled views now prioritize displaying the label fully before distributing space to the rest of the controls. (74728764)
- Fixed asset catalog images with the Preserve Vector Representation option set so the images work correctly when resized by re-rendering from their vector source. (49074629)
- Symbol images in Widgets and watchOS complications are now redrawn from their vector outlines, avoiding pixellation. (50464514)
- Updated
BackgroundStyle
and the newbackground
modifier to include desktop tinting in Dark Mode as expected. (71062814) - Fixed keyboard shortcuts using an uppercase key so they no longer have an implicitly added ⇧ modifier. (68047066)
- An app using the SwiftUI app lifecycle will no longer attempt to load the main storyboard file if one is set in the
Info.plist
file. (72819768) Commands
bodies are now automatically updated in response to changes in dynamic property values used in the body definition. Types likeState
andFocusedValue
can now be used to create dynamic dependencies in command content. (64788135)- Fixed bordered buttons so they are clickable only by their label, not by the button chrome. (78192660)
- Updated Sheets to dismiss using the proper animation. (66393848)
- Fixed
fileImporter
andfileExporter
to properly present when used in aCommands
context. (77531659) - Fixed nested
ScrollViews
with orthogonal scrolling directions, like a horizontalScrollView
inside of a verticalScrollView
, to scroll as expected. (54849400)
Deprecations
Fn
(Function
) shortcut modifier is deprecated and reserved for system usage. (78627099)
Known Issues
- If you create a
Text
view from anAttributedString
that contains a morphology attribute and then interpolate theText
view inside aLocalizedStringKey
, the attributes of theAttributedString
don’t affect the displayed text. (78914478)For example:Text("\(Text(attributedString)) friend(s)")
AsyncImage
inList
sometimes cancels image downloads prematurely. (78187465)- A
TextField
in aForEach
might update the incorrect text binding. (78168257) - Providing a binding to an
OutlineGroup
might require includingwrappedValue
in theinit(_:children:content:)
key path parameter, and won’t back-deploy to earlier releases. (77890799) BorderlessButtonMenuStyle
andBorderedButtonMenuStyle
aren’t available as static members. Syntax such as.menuStyle(.button)
doesn’t currently compile. (78606888)Workaround: Provide the initialized style type instead; for example, .menuStyle(BorderlessButtonMenuStyle())
.- Focusing a view in a newly added
List
row usingFocusState
requires deferring the update to the focus state property to the next time the main runloop runs. (78607356)
TabularData
New Features in macOS 12 beta
- TabularData is a new Swift framework you use to analyze and manipulate tabular data. You can use
DataFrame
to read CSV and JSON files, as well as join, group, and aggregate data. (69982458)
Translation
Known Issues
- System-wide translation sends requests to the server, even if On-Device Mode is on. (75374469)
Virtualization
New Features in macOS 12 beta
- Interfaces that previously took
unsigned long long
arguments or returnedunsigned long long
results have been updated to use theuint64_t
type instead. (77291339)
Known Issues
- A
VZVirtualMachine
configured with an audio device terminates unexpectedly when audio begins. (77870970) - Docker might display a Linux kernel panic on launch. (78549867)Workaround: Don’t enable the new virtualization framework in Experimental Features. If Docker was already set up before updating to macOS 12 beta, choose “Reset Docker to factory defaults” when the Fatal Error appears.
WebKit
Known Issues
ASAuthorizationSecurityKeyPublicKeyCredentialAssertionRequest
unexpectedly providesASAuthorizationPlatformPublicKeyCredentialAssertion
instead ofASAuthorizationSecurityKeyPublicKeyCredentialAssertion
. (76554090)Workaround: Use the decoded contents of.rawAuthenticatorData
to distinguish credentials.
Leave a Reply