I have received a few crash reports for my app "Find Any File" with an assertion failure as follows:
assertion failure: "displayTiming != ((void *)0)" -> %lld
Googling this turns up nothing, though.
I wonder if someone has some insight into why this might happen, and how to prevent it.
One reporting user suggests that it happens when my app shows a very long list of items in an NSTableView (>10000 elements).
I have 4 reports from 3 users, and the main thread is doing something related to the table view each time, though not the same (the few other threads are all idle):
Crash 1, in macOS 14.0 (23A344:
Thread 0:: Dispatch queue: com.apple.main-thread
0 libobjc.A.dylib 0x182c69400 objc_msgSend + 0
1 AppKit 0x186f15400 -[CALayer(NSViewVisibleRect) NS_viewVisibleRectDidChange] + 40
2 AppKit 0x186900e10 NSViewHierarchyInvalidateVisibleRect + 276
3 AppKit 0x186900db0 NSViewHierarchyInvalidateVisibleRect + 180
4 AppKit 0x186900db0 NSViewHierarchyInvalidateVisibleRect + 180
5 AppKit 0x186900db0 NSViewHierarchyInvalidateVisibleRect + 180
6 AppKit 0x186900db0 NSViewHierarchyInvalidateVisibleRect + 180
7 AppKit 0x186900db0 NSViewHierarchyInvalidateVisibleRect + 180
8 AppKit 0x1869990e0 -[NSView translateOriginToPoint:] + 164
9 AppKit 0x186984108 -[NSClipView _immediateScrollToPoint:] + 420
10 AppKit 0x186983eb8 -[NSClipView scrollToPoint:] + 184
11 AppKit 0x186998d80 -[NSScrollView scrollClipView:toPoint:] + 84
12 AppKit 0x1869448dc -[NSClipView _scrollTo:animateScroll:flashScrollerKnobs:] + 480
13 AppKit 0x186b65b24 __62-[NSScrollingBehaviorConcurrentVBL _stopGestureScrollTracking]_block_invoke + 192
14 AppKit 0x186e6a6e8 ___NSMainRunLoopPerformBlockInModes_block_invoke + 44
15 CoreFoundation 0x18310b8c0 __CFRUNLOOP_IS_CALLING_OUT_TO_A_BLOCK__ + 28
Crash 2, in macOS 14.1.1 (23B81):
Thread 0:: Dispatch queue: com.apple.main-thread
0 CoreFoundation 0x18ba401f4 DYLD-STUB$$_Block_object_assign + 0
1 libsystem_blocks.dylib 0x18b506118 _call_copy_helpers_excp + 80
2 libsystem_blocks.dylib 0x18b505c68 _Block_copy + 376
3 libdispatch.dylib 0x18b641c7c _dispatch_Block_copy + 32
4 libdispatch.dylib 0x18b658df0 _dispatch_source_set_handler + 92
5 CoreFoundation 0x18b99e1e4 __CFRunLoopCopyMode + 540
6 CoreFoundation 0x18b8b7458 CFRunLoopAddObserver + 220
7 AppKit 0x18f0a687c _PerfAddRunLoopObserver + 192
8 AppKit 0x18f87cd60 -[NSApplication(NSEventRouting) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 368
9 AppKit 0x18f323318 -[_NSScrollingConcurrentEventMonitor startMonitoring] + 380
10 AppKit 0x18f321df8 -[NSScrollingBehaviorConcurrentVBL _scrollView:trackGestureScrollWithEvent:] + 884
11 AppKit 0x18f2e67f8 -[NSScrollingBehaviorConcurrentVBL scrollView:scrollWheelWithEvent:] + 512
12 AppKit 0x18f241770 forwardMethod + 252
13 AppKit 0x18f2e62a0 -[NSView scrollWheel:] + 408
14 AppKit 0x18f241770 forwardMethod + 252
15 AppKit 0x18f2e62a0 -[NSView scrollWheel:] + 408
16 AppKit 0x18f241770 forwardMethod + 252
17 AppKit 0x18f2e62a0 -[NSView scrollWheel:] + 408
18 AppKit 0x18f241770 forwardMethod + 252
19 AppKit 0x18f2e62a0 -[NSView scrollWheel:] + 408
20 AppKit 0x18fc45880 -[NSCollectionView scrollWheel:] + 180
21 AppKit 0x18f241770 forwardMethod + 252
22 AppKit 0x18f241770 forwardMethod + 252
23 AppKit 0x18f2e62a0 -[NSView scrollWheel:] + 408
24 AppKit 0x18f241770 forwardMethod + 252
25 AppKit 0x18f2e62a0 -[NSView scrollWheel:] + 408
26 AppKit 0x18f241770 forwardMethod + 252
27 AppKit 0x18f2e62a0 -[NSView scrollWheel:] + 408
28 AppKit 0x18f1d27b0 -[NSWindow(NSEventRouting) _reallySendEvent:isDelayedEvent:] + 652
As you can see, there's no code of mine involved at the time of crash.
The other (and older) reports are similar, in macOS 13.6.1 and macOS 13.1. All four happened on ARM architecture (which may not be significant due to small number of samples). Memory use of app was not critical (in one case it was about 9 GB total, in others below 4 GB).
The "Binary Images" section only lists Apple libs, apart from my app's. So, there seems to be no 3rd party ext involved.
I've attached a full report as well.
Full report of Crash 1
Posts under macOS tag
200 Posts
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
In SwiftUI for macOS, how do I configure a Picker as a segmented control to have a flexible width? This design pattern is present in Xcode 26 at the top of the sidebar and inspector panel.
I can't figure out the combination of view modifiers to achieve a similar look.
import SwiftUI
struct ContentView: View {
@State private var selection = 0
var body: some View {
VStack {
Picker("", selection: $selection) {
Image(systemName: "doc")
Image(systemName: "folder")
Image(systemName: "gear")
Image(systemName: "globe")
.frame(maxWidth: .infinity) // Doesn't do anything.
}
.labelsHidden()
.pickerStyle(.segmented)
.frame(maxWidth: .infinity) // Doesn't affect segment sizes.
Spacer()
}
}
}
I want the entire Picker to fill the width and for each segment to be of equal widths. How?
In AppKit I would use AutoLayout for the flexible width and NSSegmentedControl.segmentDistribution for the segment widths. Is there a SwiftUI equivalent?
macOS 26 / Xcode 26.3
When you have multiple Apps on the Mac which all provide Quicklook extensions for the same file type, then I would assume that if I activate one of these Quicklook extensions in the system settings, this one would be used.
But this doesn't seem to be the case.
It looks like the macOS just looks the very first extension it can find for a certain file type, and if this Quicklook extension is switched off, the file can not be previewed anymore. The macOS just doesn't bother to look for the other existing quicklook extension for this file, even if this other is enabled.
The only option right now to get this other extension to be used by the system would be to completely delete the first App, so its extension is deleted as well.
Is this really the way how it is supposed to work? How can this be fixed? Can I tell my users something else than "just delete the other App"?
We are experiencing an issue with ADCertificate auto-renewal on macOS devices enrolled via MDM.
Platform: macOS
CA: Microsoft AD CS
Payload Type: com.apple.ADCertificate.managed
Initial certificate enrollment works correctly
EnableAutoRenewal is set to true
Certificate does not renew automatically as it approaches expiry
We would like to confirm:
Are there any known issues with macOS ADCertificate managed payload auto-renewal, particularly with Microsoft AD CS environments?
Below is the exact payload configuration in use:
Thank you.
I'd like to create a Quick Look extension for a file type for which a location or region on a Map should be shown as preview.
However the MapView would only show a grid without any map. From within the MapKit delegate I can see from the "Error" parameter (a server with this domain can not be found) that this seems to be a network issue. The Quick Look extension seems to have no access to the internet and therefore the MapView can not load any map data.
I've then also done some other tests via URLSession, which also only fails with connection errors.
I haven't seen any limitations or restrictions mentioned in the API documentation.
Is this the expected behavior? Is this a bug? Or am I missing something?
I'm trying to test the update process for an app containing an FSKit module that I'm distributing on the Mac App Store. (I'm also distributing the same app directly with Developer ID, but here I'll focus on App Store because that's the behavior I've been looking at first.) To do that I'm using an internal tester group on TestFlight and then testing an update with TestFlight. Below is the behavior I'm seeing on macOS 15.7.2 (24G325).
I've noticed that if an app update is triggered while a disk is mounted using the FSKit extension, the disk is automatically unmounted without warning (FB21287341). That's already undesirable itself in my opinion, but on top of the unmount, there are two other problems:
That unmount doesn't seem to be a "clean" unmount and doesn't call functions like synchronize (FB21287688). Now, in my case, my app only provides read-only access, so that doesn't actually matter much in my case. However, I'd imagine if I were to add write access at some point in the future, this would go from "doesn't matter" to "very bad."
I've seen a few cases where quitting or crashing the FSModule process while a volume is mounted without actually doing a clean unmount causes a lot of "disk-related actions" (for lack of a better term) to freeze (FB21305906). For example, a use of the mount(8) command or trying to mount a disk at all freezes, and opening Disk Utility stalls on a "Loading disks" spinning indicator. This happens until the Mac is rebooted. I did notice this issue once while testing updates via TestFlight a few times.
The same applies if I simply delete the app with Finder instead of updating it.
Is there a way to prevent the extension's process from terminating in this case and/or another workaround I could use without waiting for a macOS update to hopefully change this behavior?
And does observing this kind of behavior with TestFlight's update behavior suggest the same thing could happen on the App Store with its automatic updates? I'm concerned that pushing an update via the App Store will unexpectedly unmount disks or cause the system-wide issues described in FB21305906 at a random time, which is a pretty big disruption for users.
Mac Pro 2019, Tahoe 26.3, Xcode 26.2
Mac Mini 2023 M2, Tahoe 26.3, Xcode 26.2
On Mac Pro 2019 the app is only Intel while on Mac Mini 2023 M2 it is ARM64 only.
Both have Standard Architectures (Apple Silicon, Intel).
Both have Build Active Architecture Only is set to No (Debug + Release).
Happen for default new projet macOS -> App and Obj-C, Xib.
No change to defaults setting except uncheck "Automaticaly manage signing" and "Signing Certificate" set to "Sign to Run Locally"
HOWEVER
On Mac Pro 2019, BigSur 11.7.10, Xcode 14.10 the application is build Universal !
Why cannot build universal with Tahoe 26.3, Xcode 26.2 ?
Can I submit a Mac applcation to App Store Connect with BigSur 11.7.10, Xcode 14.10 ?
What are the minimal version of Mac Os and Xcode to submit a Mac applcation to App Store Connect ?
Hello
Using a MacBook Pro Intel with macOS 12.7.6 Monterey, I test in Objective-C an event for the option key but it is not working
- (void)keyDown:(NSEvent *)event {
printf("%s %p\n", __FUNCTION__, self);
BOOL altFlag = [event modifierFlags] & NSEventModifierFlagOption;
if (altFlag) {
// UpdateClass
printf("option pressed\n");
} else {
printf("option not pressed\n");
}
}
The same in Swift works fine
override func keyDown(with event: NSEvent) {
if event.modifierFlags.contains(.option) {
print("option pressed")
} else {
print("option NOT pressed")
}
}
The Obj-C code works fine on a MacBook Air Tahoe 26.3
Any idea why it does not work on the macOS 12.7.6 Intel?
Many Thanks
Jean
After updating to another beta of High Sierra, my internal hard drive became read-only somehow. I have a user home directory on that and many things have stopped working. I tried re-installing the OS, but it didn't help. I'm out of options by now. Anyone has ideas how can I fix that?
In macOS 26, there is a new property on NSControl called .borderShape.
The WWDC 2025-310 video says it can be used to "Override preferred shape of control to suit your design." and that it's available on NSButton, NSPopUpButton and NSSegmentedControl.
Is there an equivalent to that property for SwiftUI? For example, given the following SwiftUI code:
Button("Eject") {
}
.borderShape(...) <-- ?
How can I apply a .borderShape that would match those on controls created in AppKit?
I'm aware that SwiftUI offers a plethora of ways to custom design a button such that it can have rounded corners, but I'm interested in this particular property so that SwiftUI buttons and AppKit buttons in the same app have the same look-and-feel.
On macOS 26.3, Xcode 26.3, why does a labelStyle of titleAndIcon not show both the title and the icon of a label?
The label styles iconOnly and titleOnly behave as expected.
Picker("Label Demo", selection: $selectedItem) {
Label {
Text("File")
} icon: {
Image(systemName: "doc")
}
Label {
Text("Folder")
} icon: {
Image(systemName: "folder")
}
}
.labelStyle(.titleAndIcon)
.pickerStyle(.segmented)
Note that there is no icon shown. Placing the .labelStyle modifier in different places has no effect.
The icon is correctly shown when the labelStyle is set to .iconOnly.
An NSSegmentedControl created with AppKit and presented in an NSViewRepresentable does correctly show titles and icons if configured appropriately.
Tested on:
macOS 26.3 (25D125)
Xcode 26.3 (17C519)
A brand new SwiftUI "macOS App" project.
Since the introduction of the siblings / and /System/Volumes/Data architecture, some very basic, critical commands seems to have a broken behaviour ( cp, rsync, tar, cpio…).
As an example, ditto which was introduced more than 10 years ago to integrate correctly all the peculiarity of HFS Apple filesystem as compared to the UFS Unix filesystem is not behaving correctly.
For example, from man ditto:
--rsrc Preserve resource forks and HFS meta-data. ditto will
store this data in Carbon-compatible ._ AppleDouble files
on filesystems that do not natively support resource forks.
As of Mac OS X 10.4, --rsrc is default behavior.
[...]
--extattr Preserve extended attributes (requires --rsrc). As of Mac
OS X 10.5, --extattr is the default.
and nonetheless:
# ls -@delO /private/var/db/ConfigurationProfiles/Store
drwx------@ 5 root wheel datavault 160 Jan 20 2024 /private/var/db/ConfigurationProfiles/Store
*********
com.apple.rootless 28
***************************
# mkdir tmp
# ditto /private/var/db/ConfigurationProfiles tmp
ditto: /Users/alice/Security/Admin/Apple/APFS/tmp/Settings: Operation not permitted
ditto: /Users/alice/Security/Admin/Apple/APFS/tmp/Store: Operation not permitted
# ls -@delO tmp/Store
drwx------ 5 root wheel - 160 Aug 8 13:55 tmp/Store
*
#
The extended attribute on copied directory Store is empty, the file flags are missing, not preserved as documented and as usual behaviour of ditto was since a long time ( macOS 10.5 ).
cp, rsync, tar, cpio exhibit the same misbehaviour. But I was using ditto to be sure to avoid any incompatibility with the Apple FS propriaitary modifications.
As a consequence, all backup scripts and applications are failing more or less silently, and provide corrupted copies of files or directories. ( I was here investigating why one of my security backup shell script was making corrupted backups, and only on macOS ).
How to recover the standard behaviour --extattr working on modern macOS?
Topic:
App & System Services
SubTopic:
Core OS
Tags:
Files and Storage
macOS
Security
Security Foundation
I have the following code running on macOS and iOS:
CKQuerySubscription *zsub = [[CKQuerySubscription alloc] initWithRecordType:ESS_CLOUDCONTROLLER_RECORDTYPE_PUSHNOTE predicate:[NSPredicate predicateWithFormat:@"TRUEPREDICATE"] subscriptionID:@"pushZSub" options:CKQuerySubscriptionOptionsFiresOnRecordUpdate|CKQuerySubscriptionOptionsFiresOnRecordCreation|CKQuerySubscriptionOptionsFiresOnRecordDeletion];
zsub.zoneID = zid;
CKNotificationInfo *inf = [[CKNotificationInfo alloc] init];
inf.shouldSendContentAvailable = YES;
inf.desiredKeys = @[ESS_PN_RECORDFIELD_KEY_OVERALLDATE];
zsub.notificationInfo = inf;
CKModifySubscriptionsOperation *msop = [[CKModifySubscriptionsOperation alloc] initWithSubscriptionsToSave:@[zsub] subscriptionIDsToDelete:nil];
msop.qualityOfService = NSQualityOfServiceUserInitiated;
msop.modifySubscriptionsCompletionBlock = ^(NSArray<CKSubscription *> * _Nullable savedSubscriptions, NSArray<CKSubscriptionID> * _Nullable deletedSubscriptionIDs, NSError * _Nullable operationError) {
dispatch_async(dispatch_get_main_queue(), ^{
if (savedSubscriptions.count == 1) { //works also when already created.
compH(YES, nil);
} else {
compH(NO, nil);
}
});
};
[self.database addOperation:msop];
(code synopsis: after i create a custom zone (not shown in code), I add a ckquerysubscription to it for a specific record type, configured as a silent notification)
When I change the according record in my Mac app, I get an immediate silent push on iOS.
On macOS, however, after I change the record in my iOS app, I don't get one. Sometimes, one silent push makes it through every now and then a minute+ late or so, and after that, it's going missing again.
What's the deal? Everything's set up correctly (com.apple.developer.aps-environment is set, container-identifiers are the same, icloud services are the same, ubiquity-kvstore-identifier are the same).
I obviously register for remote notifications in both apps. I see all the records and subscriptions and zones in both the Mac and iOS app.
I tried setting alertBody to an empty string, or soundName to an empty string, or both to an empty string: no difference
I tried having different subscriptions for my Mac and iOS app, since they use different bundle ids, but that was merged into one subscription server-side, so I'm thinking that's not it
I tried making it not-silent by setting contentAvailable to NO and adding a full alertBody, title and subtitle. Again, worked on iOS, not on macOS.
This has been going on since macOS 14 Sonoma (when I first got reports of this. Now running on macOS 26.3). Before Sonoma, it worked just fine.
Now I thought perhaps it's because I had a subscription on the default zone, and not a custom one, so I tried subscribing to changes on a record in a custom zone (see code above), but that did not change anything either.
It's all working fine, only the push notifications are not making it through to the Mac app.
If I sudo killall apsd (kill the push service daemon), the last push notification suddenly miraculously makes it through, by the way.
At this point, I'm out of ideas and would very much appreciate pointers as to how to debug this. Polling every 30 seconds for changes is so 1990s.
Speaking of which, this is a rather long-time-running app (started in 2011). Could my CloudKit database be “too old” or “corrupted” or whatever?
Thank you kindly,
– Matthias
It appears that starting with macOS Sequoia, Quick Look Preview extension no longer loads MapKit maps correctly anymore. Map tiles do not appear, leaving users with a beige background.
Users report that polylines do render correctly, but annotations appears black.
This was previously working fine in prior macOS versions including Sonoma.
STEPS TO REPRODUCE
Create a macOS app project, with an associated document.
Ensure project has a Quick Look preview extension, with necessary basic setups.
Ensure that the extension mentioned in (2) must have a MKMapView. Any other cosmetic changes, etc, does not need to be implemented to observe the base issue. Do note that it has been reported that in addition to the map tiles not loading, annotations don't render correctly as well.
We create custom VPN tunnel by overriding PacketTunnelProvider on MacOS. Normal VPN connection works seamlessly. But if we enable onDemand rules on VPN manager, intemittently during tunnel creation via OnDemand, internet goes away on machine leading to a connection stuck state.
Why does internet goes away during tunnel creation?
I am not very well versed in this area, so I would appreciate some guidance on what should be enabled or disabled. My app is an AppKit app. I have read the documentation and watched the video, but I find it hard to understand.
When I added the Enhanced Security capability in Xcode, the following options were enabled automatically:
Memory Safety
Enable Enhanced Security Typed Allocator
Runtime Protections
Enable Additional Runtime Platform Restrictions
Authenticate Pointers
Enable Read-only Platform Memory
The following options were disabled by default:
Memory Safety
Enable Hardware Memory Tagging
Memory Tag Pure Data
Prevent Receiving Tagged Memory
Enable Soft Mode for Memory Tagging
Should I enable these options? Is there anything I should consider disabling?
I have a view that conforms to DropDelegate. When a file is dragged from the Finder and dropped on the view, the performDrop(info:) method successfully extracts a URL from the item provider and returns true, but the drag image slides away as if the drop had been rejected. Why?
func performDrop(info: DropInfo) -> Bool {
bgColor = .yellow
let providers = info.itemProviders(for: [.fileURL])
print("performDrop, providers: \(providers.count)")
if let aProvider = providers.first
{
if aProvider.hasItemConformingToTypeIdentifier(UTType.url.identifier)
{
aProvider.loadItem(forTypeIdentifier: UTType.url.identifier)
{ (item, error) in
if let error = error {
print("Error retrieving item provider data: \(error.localizedDescription)")
return
}
if let url = item as? URL
{
print("Received file URL (from Data.1): \(url)")
}
else if let data = item as? Data, let url = URL(dataRepresentation: data, relativeTo: nil)
{
print("Received file URL (from Data.2): \(url)")
}
}
}
}
return true
}
We are encountering a build and archive failure in Xcode after updating our development machine to macOS 26.2.
Environment:
macOS: 26.2
Xcode: 16.2
iOS Deployment Target / Runtime: iOS 18.5
App Type: Production iOS app (App Store distribution)
Issue:
Before updating macOS, the project built and archived successfully. After the macOS 26.2 update, archiving fails consistently, even though no major changes were made to the project code or configuration.
Certificates, provisioning profiles, and signing settings are correctly configured. The issue appears to be related to the macOS/Xcode environment rather than application logic.
Steps to Reproduce:
Open the existing iOS project in Xcode 16.2.
Select the App Store distribution scheme.
Attempt to Archive the project.
Archive/build fails.
Expected Result:
Successful archive allowing upload to App Store Connect.
Actual Result:
Archive fails after macOS 26.2 update.
Additional Info:
This post is linked to Apple Developer Technical Support Case-ID: 18413014.
Topic:
Developer Tools & Services
SubTopic:
Xcode
Tags:
Developer Tools
Xcode
macOS
Organizer Window
I am trying to sign my Mac app to use Network Extensions capability. But every time I create a profile it displays that to me:
on the other hand on the website it displays this to me:
My application installs a system extension.
When I try to remove the app from the Applications folder (cmd + backspace) I get an error message:
"The operation can’t be completed right now because another operation is in progress, such as moving or copying an item or emptying the Bin."
According to systemextensionsctl the extension state is "terminating for uninstall but still running".
I can see an error in the console logs:
kernelmanagerd Failed to terminate dext com.my.driver-dk, error: Kernel request failed: (os/kern) invalid address (1)
sysextd a category delegate declined to terminate extension with identifier: com.my.driver-dk
sysextd failed to terminate extension with identifier: com.my.driver-dk: Optional(Error Domain=kernelmanagerd.KMError Code=38 "(null)")
Issue occurs with macOS 13 - works fine with macOS 12 and macOS 11
What is the problem here?
Have there been any changes in macOS in that regard?