Overview

Post

Replies

Boosts

Views

Activity

Xcode 26 Butchers Productivity by Making Global the State of Navigators Pane
Here's the text of FB22008758 I've just submitted: Xcode 26 changed the behavior of the Navigators pane (which hopefully is a bug and not an intended behavior). in Xcode 26, if I close (or open) the Navigators pane in a window tab, it closes (or opens) the Navigators pane in ALL window tabs. This is insanely horrible, unproductive, time-wasting behavior that breaks workflows that has been established for many years (I've been using Xcode since 2006). By way of example: In a window tab that contains a .xib, I prefer the Navigators pane to be closed. While in all other window tabs (that contain code files and other items), I want the Navigators pane to be always displayed. Before Xcode 26, the Navigators pane was open or closed in each individual window tab as the user desired. But in Xcode 26, if I close the Navigators pane in one window tab, the pane closes EVERYWHERE. Thus when, for example, I go to a .xib window tab, I have to close the Navigators pane AGAIN. But then when I go back to a code window tab, I have to OPEN the Navigators pane there (because it became closed globally). And have to do this endlessly every day. WHY??? Please restore the normal, pre-26 behavior of the Navigators pane. That is, the Navigators pane should remain open or closed as PER INDIVIDUAL WINDOW TAB, not globally. Thank you for your attention to this important issue!
2
0
72
21h
AVAssetDownloadConfiguration: How many video variants are actually downloaded when multiple variants exist in the HLS master playlist?
Hi, I’m trying to better understand how AVAssetDownloadConfiguration selects video variants when downloading HLS content for offline playback. Suppose I have an HLS master playlist (.m3u8) that contains several video variants defined with #EXT-X-STREAM-INF. For example, the master playlist may contain multiple video streams like this: Same resolution, different BANDWIDTH Or different resolutions (for example 720p, 1080p, etc.) My question is: How many video variants are actually downloaded when using AVAssetDownloadConfiguration without specifying any variantQualifiers? In other words: If the master playlist contains multiple video variants, will the download task fetch only one variant, or multiple variants? Does the behavior differ depending on whether the variants differ only by BANDWIDTH or also by RESOLUTION? What I observed in testing In my tests, I always end up with only one video variant downloaded, specifically the one with the highest BANDWIDTH parameter. In the m3u8 files I tested, all video variants had identical parameters (resolution, codec, frame rate, etc.) and differed only by the BANDWIDTH attribute in the master playlist. However, when inspecting the downloaded .movpkg, I noticed something interesting in boot.xml. It lists two video streams: one with complete="true" (the one with highest bandwidth) another with complete="no" (the one with lowest bandwidth) I actually had 3 video streams listed in m3u8, but the one with middle bandwidth wasn't listed in boot.xml file at all. There are also additional streams for audio and subtitles in boot.xml file. This made me wonder whether the system initially attempts to download another video variant (possibly a lower bitrate one), but then switches to the highest-quality variant and only completes that one. Additional question about variantQualifiers If I provide a predicate such as: NSPredicate(format: "peakBitRate > 0") which should theoretically match all variants, will the download task attempt to download all matching video variants, or will it still select only one? Summary So the main questions are: Without variantQualifiers, does AVAssetDownloadConfiguration always download a single video variant, and if so, how is it chosen? Does the behavior differ if variants have different resolutions vs only different bitrates? When a predicate matches multiple variants, can multiple video variants actually be downloaded in a single .movpkg? Why might boot.xml list multiple video streams when only one appears to be fully downloaded? Any clarification on the intended behavior would be greatly appreciated. Thanks!
1
0
173
21h
Broken autocomplete in Xcode 26
Xcode 16 and 26 changes in painful way how the Tab key works during autocomplete. Previously, pressing Tab would extend the typed text up to the word match. For example, we have two classes: NSViewController and NSViewCoordinator BEFORE, typing: "NSV" + Tab used to complete to NSViewCo Now, in Xcode 26, pressing Tab just use the first suggestion. Stupidly. Especially when you want DispatchQueue and it gaves you DispatchSemaphore… That is very inconvenient because very often I want just see all possible cases with some prefix...without need of typing all prefix manually. How to restore the previous behavior? How to do autocomplete word-by-word?
7
0
178
21h
Beta Update Killed Mini M4
I dutifully upgraded my software (beta) on Feb. 24 when prompted. I could not get the computer to reboot, then after about 5 hours on the phone with, I think, 4 techs, they told me the only solution was to wait for the next update - I could not go backwards to the regular version. So $1,299 later I have a new Mac Mini M4! I have to work, so it was the only solution. What do I win?
0
0
66
21h
WiFi not working since build 25E5218f
I installed the latest build of Tahoe (25E5218f) yesterday on our test machine, an M1 Pro MacBook Pro and have been having a hard time getting my WiFi network to work. It's especially noticeable in Mail and Safari. Mail shows it can't connect to the designated server, and Safari simply can't connect to most sites. None of my other devices or computers are having problems, so I have to assume it's this last build that is the culprit. When I tether to my iPhone Air, everything pops back into place and I can access Mail and use Safari. I've reported the problem with FBA, but wanted to know if anyone else is experiencing the same thing.
11
2
757
21h
In-App Payments
Does a payment that is processed within the app, that generates a QR-Code for the redeeming of a real-life-good (such as tickets, vouchers for drinks, etc.), fall under IN-APP-PAYMENT regulation, which would get a fee of 15-30% on top or can that payment be processed with an external mechanism such as Stripe?
0
0
85
21h
Driver Activation failure error code 9. Maybe Entitlements? Please help
This is my first driver and I have had the devil of a time trying to find any information to help me with this. I beg help with this, since I cannot find any tutorials that will get me over this problem. I am attempting to write a bridging driver for an older UPS that only communicates via RPC-over-USB rather than the HID Power Device class the OS requires. I have written the basic framework for the driver (details below) and am calling OSSystemExtensionRequest.submitRequest with a request object created by OSSystemExtensionRequest.activationRequest, but the didFailWithError callback is called with OSSystemExtensionErrorDomain of a value of 9, which appears to be a general failure to activate the driver. I can find no other information on how to address this issue, but I presume the issue is one of entitlements in either the entitlements file or Info.plist. I will have more code-based details below. For testing context, I am testing this on a 2021 iMac (M1) running Sequoia 15.7, and this iMac is on MDM, specifically Jamf. I have disabled SIP and set systemextensionsctl developer on, per the instructions here, and I have compiled and am attempting to debug the app using xcode 26.2. The driver itself targets DriverKit 25, as 26 does not appear to be available in xcode despite hints on google that it's out. For the software, I have a two-target structure in my xcode project, the main Manager app, which is a swift-ui app that both handles installation/activation of the driver and (if that finally manages to work) handles communication from the driver via its UserClient, and the driver which compiles as a dext. Both apps compile and use automated signing attached to our Apple Development team. I won't delve into the Manager app much, as it runs even though activation fails, except to include its entitlements file in case it proves relevant <dict> <key>com.apple.developer.driverkit.communicates-with-drivers</key> <true/> <key>com.apple.developer.system-extension.install</key> <true/> <key>com.apple.security.app-sandbox</key> <true/> <key>com.apple.security.files.user-selected.read-only</key> <true/> </dict> and the relevant activation code: func request(_ request: OSSystemExtensionRequest, didFailWithError error: any Error) { // handling the error, which is always code value 9 } func activateDriver() { let request = OSSystemExtensionRequest.activationRequest(forExtensionWithIdentifier: "com.mycompany.driver.bundle.identifier", queue: .main) request.delegate = self OSSystemExtensionManager.shared.submitRequest(request) //... } And finally the Manager app has the following capabilities requested for its matching identifier in our Apple Developer Account: DriverKit Communicates with Drivers System Extension On the Driver side, I have two major pieces, the main driver class MyDriver, and UserClient class, StatusUserClient. MyDriver derives from IDriverKit/IOService.iig but (in case this is somehow important) does not have the same name as the project/target name MyBatteryDriver. StatusUserClient derives from DriverKit/IOUserClient.iig. I have os_log(OS_LOG_DEFAULT, "trace messages") code in every method of both classes, including the initializers and Start implementations, and the log entries never seem to show up in Console, so I presume that means the OS never tried to load the driver. Unless I'm looking in the wrong place? Because I don't think the driver code is the current issue, I won't go into it unless it becomes necessary. As I mentioned above, I think this is a code signing / entitlements issue, but I don't know how to resolve it. In our Apple Developer account, the Driver's matching identifier has the following capabilities requested: DriverKit (development) DriverKit Allow Any UserClient (development) DriverKit Family HID Device (development) -- NOTE: this is planned for future use, but not yet implemented by my driver code. Could that be part of the problem? DriverKit Transport HID (development) DriverKit USB Transport (development) DriverKit USB Transport - VendorID -- submitted, no response from Apple yet HID Virtual Device -- submitted, no response from Apple. yet. This is vestigial from an early plan to build the bridge via shared memory funneling to a virtual HID device. I think I've found a way to do it with one Service, but... not sure yet. Still, that's a problem for tomorrow. Apparently I've gone over the 7000 character maximum so I will add my entitlements and info.plist contents in a reply.
8
0
269
22h
presentOfferCodeRedeemSheet Not showing product icon
Hi - Using storekit2 on ios26.2 and using presentOfferCodeRedeemSheet to allow users to leverage Offer Codes. The codes work (sandbox and production), however on the confirmation view that shows Redeem Special Offer, while my App Icon is properly displayed up top, the associated product subscription image is missing and I see a grey App Store image/icon instead. I do successfully see the associated subscription and pricing to the right. My subscription product images are already reviewed/approved and have been live for a number of weeks. I see this in Sandbox and Production (with a live customer sending me the phone screenshot). PS, my product icons/logos all show up successfully during normal checkout in sandbox/production, this only occurs on Offer Code Redemption views.
1
0
50
22h
iOS Simulator fails to boot (18.6 / 26.1 / 26.2) – launchd_sim could not bind to session
Hi, I’m facing a consistent simulator boot issue that appears to start after iOS 18.2 simulator runtimes and persists in 18.6, 26.1, and 26.2. Observed behavior iOS 18.2 simulator works fine iOS 18.6 simulator does NOT boot iOS 26.1 / 26.2 simulators do NOT boot Tried everything reinstall/clear cache and all and event formatted the system Unable to boot the Simulator NSPOSIXErrorDomain Code: 4 Failure Reason: Interrupted system call Failed to start launchd_sim: could not bind to session, launchd_sim may have crashed or quit responding macOS: Sequoia Xcode: 26.1, 26.2 Machine: Apple Silicon Unable to boot the Simulator. Domain: NSPOSIXErrorDomain Code: 4 Failure Reason: Interrupted system call User Info: { DVTErrorCreationDateKey = "2025-12-26 02:19:27 +0000"; IDERunOperationFailingWorker = "_IDEInstalliP.honeSimulatorWorker", Session = "com apple CoreSimulator.SimDevice CCDECA56-4A59-491B-A830-0F3928FCD957"; } Failed to start launchd_sim: could not bind to session, launchd_sim may have crashed or quit responding Domain: com.apple.SimLaunchHostService.RequestError Code: 4 Event Metadata: com.apple. dt. DERunOperationWorkerFinished : { "device_identifier" = "CCDECAE6-4A59-491B-A830-0E3928FCD957"; "device_model" = "iPhone18, 1"; "device_osBuild" = "26.1 (23B86)"; "device_osBuild_monotonic" = 2301008600; "device_os_variant" = 1; "device_platform" = "com apple.platform.iohonesimulator"; "device_platform_family" = 2; "device_reality" = 2; "device_thinningType" = "iPhone18,1"; "device_transport" = 4; "launchSession_schemeCommand" = Run; "launchSession_schemeCommand_enum" = 1; "launchSession_targetArch" = arm64; "launchSession_targetArch_enum" = 6; "operation_duration_ms" = 1183; "operation_errorCode" = 4; "operation_errorDomain" = NSPOSIXErrorDomain; "operation_errorWorker" = "_IDEInstalliPhoneSimulatorWorker"; "operation_error_reportable" = 1; "operation_name" = IDERunOperationWorkerGroup; "param_consoleMode" = 1; "param_debugger_attachToExtensions" = 0; "param_debugger_attachToXPC" = 1; "param_debugger_type" = 3; "param_destination_isProxy" = 0; "param_destination_platform" = "com apple platform Please help on this as it got stuck. Thanks
7
5
794
22h
Error during In-App Provisioning (eligibility step, PKErrorHTTPResponseStatusCodeKey=500)
Hello, We are implementing in-app provisioning in our fintech app; the card issuer is a third party, so we have limited control and visibility. We have ruled out the causes we could investigate on our side and on the card issuer’s side. We are reaching out to ask for your help in understanding what is going wrong so we can fix it. What happens: User taps “Add to Apple Wallet” → we present PKAddPaymentPassViewController → they tap Next → after a few seconds the flow fails with "Set Up Later" alert. Device log: ProvisioningOperationComposer: Step 'eligibility' failed with error <PKProvisioningError: severity: 'terminal'; internalDebugDescriptions: '( "eligibility request failure", "Received HTTP 500" )'; underlyingError: 'Error Domain=PKPaymentWebServiceErrorDomain Code=0 "Unexpected error." UserInfo={PKErrorHTTPResponseStatusCodeKey=500, NSLocalizedDescription=Unexpected error.}'; userInfo: '{ PKErrorHTTPResponseStatusCodeKey = 500; }'; Feedback Assistant ID: FB22007923 (Error during the In-App Provisioning process)
7
0
318
23h
Urgent Inquiry: Significant Delays in App and Update Reviews (Waiting for Review) During February
​I am writing to express my deep concern regarding the noticeable and unusual delays in the app and update review process throughout this month of February. ​We have observed that all of our recent submissions have been stuck in the "Waiting for Review" status for periods that far exceed the standard App Store review times. This continuous delay is having a direct and negative impact on our workflow, as it is hindering our ability to: ​Release critical updates and timely bug fixes. ​Roll out new features that our users are expecting. ​Adhere to our planned marketing strategies and launch schedules. ​While we highly value your ongoing efforts to maintain the quality and security of the App Store, we kindly request some clarification on the cause of these widespread delays this month. We also urgently request that you expedite the review process for our pending submissions to prevent further disruption to our users' experience. ​Here are the details of the affected I have sent many emails no response
4
2
221
23h
Multiple iOS app updates stuck in “Waiting for Review” for 4–5 weeks
Hello, I have multiple iOS app updates (for already live apps) that have remained in “Waiting for Review” status since early February (approximately 4–5 weeks). These are standard updates (minor improvements / maintenance). All builds are properly attached, agreements are active, and there are no compliance or metadata warnings in App Store Connect. The apps were moved to “Waiting for Review” on February 6–11 and have not progressed to “In Review” since. Has anyone else experienced unusually long review times for updates recently? Could this indicate a queue issue at the account level? I have already contacted App Review Support and one of the submissions was marked for expedited review approximately one week ago, but the status remains unchanged in “Waiting for Review.” Thank you in advance.
4
1
144
23h
Apps stuck on 'Waiting for Review' for over 14 days
Hello, I am experiencing the same severe delays as many other developers on the forum recently. I have multiple apps ( 6759218500 and 6758253704)that have been completely stuck in the "Waiting for Review" status, with one sitting there since mid-February. I have already tried reaching out via the "Contact Us" form multiple times, but my open support case (Case ID: 102828235824) has received no follow-up or resolution. Could someone from the app review team please look into this, any assistance would be greatly appreciated, as the standard support channels seem to be unresponsive. Thank you.
2
1
107
23h
Organization Enrollment Rejected — Non-UK Director of UK Company — No Alternative Path Offered
I'm trying to enroll a UK-registered limited company in the Apple Developer Program. I am the sole director and authorized signatory of the company, but I am not a UK national and do not hold a UK-issued passport or driving licence. Apple support keeps asking for a "government-issued ID from the United Kingdom" and won't accept my valid passport from another country, even though UK company law fully permits non-UK nationals to be sole directors of UK-registered companies. My enrollment ID was withdrawn and I was told to "designate a UK team member" — but I have no UK employees. I am a solo founder. I have offered to provide my passport, Certificate of Incorporation from Companies House, proof of directorship, and notarized copies of anything needed. Support keeps repeating the same response without offering any alternative path. Case: 102823892910 Has anyone solved this situation? Is there an official alternative verification path for non-UK directors of UK-registered organizations? Any help or escalation pointer appreciated.
0
0
42
23h
Basic introduction to DEXT Matching and Loading
Note: This document is specifically focused on what happens after a DEXT has passed its initial code-signing checks. Code-signing issues are dealt with in other posts. Preliminary Guidance: Using and understanding DriverKit basically requires understanding IOKit, something which isn't entirely clear in our documentation. The good news here is that IOKit actually does have fairly good "foundational" documentation in the documentation archive. Here are a few of the documents I'd take a look at: IOKit Fundamentals IOKit Device Driver Design Guidelines Accessing Hardware From Applications Special mention to QA1075: "Making sense of IOKit error codes",, which I happened to notice today and which documents the IOReturn error format (which is a bit weird on first review). Those documents do not cover the full DEXT loading process, but they are the foundation of how all of this actually works. Understanding the IOKitPersonalities Dictionary The first thing to understand here is that the "IOKitPersonalities" is called that because it is in fact a fully valid "IOKitPersonalities" dictionary. That is, what the system actually uses that dictionary "for" is: Perform a standard IOKit match and load cycle in the kernel. The final driver in the kernel then uses the DEXT-specific data to launch and run your DEXT process outside the kernel. So, working through the critical keys in that dictionary: "IOProviderClass"-> This is the in-kernel class that your in-kernel driver loads "on top" of. The IOKit documentation and naming convention uses the term "Nub", but the naming convention is not consistent enough that it applies to all cases. "IOClass"-> This is the in-kernel class that your driver loads on top of. This is where things can become a bit confused, as some families work by: Routing all activity through the provider reference so that the DEXT-specific class does not matter (PCIDriverKit). Having the DEXT subclass a specific subclass which corresponds to a specific kernel driver (SCSIPeripheralsDriverKit). This distinction is described in the documentation, but it's easy to overlook if you don't understand what's going on. However, compare PCIDriverKit: "When the system loads your custom PCI driver, it passes an IOPCIDevice object as the provider to your driver. Use that object to read and write the configuration and memory of your PCI hardware." Versus SCSIPeripheralsDriverKit: Develop your driver by subclassing IOUserSCSIPeripheralDeviceType00 or IOUserSCSIPeripheralDeviceType05, depending on whether your device works with SCSI Block Commands (SBC) or SCSI Multimedia Commands (SMC), respectively. In your subclass, override all methods the framework declares as pure virtual. The reason these differences exist actually comes from the relationship and interactions between the DEXT families. Case in point, PCIDriverKit doesn't require a specific subclass because it wants SCSIControllerDriverKit DEXTs to be able to directly load "above" it. Note that the common mistake many developers make is leaving "IOUserService" in place when they should have specified a family-specific subclass (case 2 above). This is an undocumented implementation detail, but if there is a mismatch between your DEXT driver ("IOUserSCSIPeripheralDeviceType00") and your kernel driver ("IOUserService"), you end up trying to call unimplemented kernel methods. When a method is "missing" like that, the codegen system ends up handling that by returning kIOReturnUnsupported. One special case here is the "IOUserResources" provider. This class is the DEXT equivalent of "IOResources" in the kernel. In both cases, these classes exist as an attachment point for objects which don't otherwise have a provider. It's specifically used by the sample "Communicating between a DriverKit extension and a client app" to allow that sample to load on all hardware but is not something the vast majority of DEXT will use. Following on from that point, most DEXT should NOT include "IOMatchCategory". Quoting IOKit fundamentals: "Important: Any driver that declares IOResources as the value of its IOProviderClass key must also include in its personality the IOMatchCategory key and a private match category value. This prevents the driver from matching exclusively on the IOResources nub and thereby preventing other drivers from matching on it. It also prevents the driver from having to compete with all other drivers that need to match on IOResources. The value of the IOMatchCategory property should be identical to the value of the driver's IOClass property, which is the driver’s class name in reverse-DNS notation with underbars instead of dots, such as com_MyCompany_driver_MyDriver." The critical point here is that including IOMatchCategory does this: "This prevents the driver from matching exclusively on the IOResources nub and thereby preventing other drivers from matching on it." The problem here is that this is actually the exceptional case. For a typical DEXT, including IOMatchCategory means that a system driver will load "beside" their DEXT, then open the provider blocking DEXT access and breaking the DEXT. DEXT Launching The key point here is that the entire process above is the standard IOKit loading process used by all KEXT. Once that process finishes, what actually happens next is the DEXT-specific part of this process: IOUserServerName-> This key is the bundle ID of your DEXT, which the system uses to find your DEXT target. IOUserClass-> This is the name of the class the system instantiates after launching your DEXT. Note that this directly mimics how IOKit loading works. Keep in mind that the second, DEXT-specific, half of this process is the first point your actual code becomes relevant. Any issue before that point will ONLY be visible through kernel logging or possibly the IORegistry. __ Kevin Elliott DTS Engineer, CoreOS/Hardware
1
0
215
1d
SwipeActions-triggered reorder animation briefly removes row and re-inserts it
I’m seeing a visual glitch in SwiftUI List on iOS 26 when row order changes after a swipeActions action. Setup: List + ForEach of items Items are sorted dynamically by isSelected (unselected first, selected last) Swipe action toggles isSelected Row should animate to new position Problem: On swipe select/unselect, the row sometimes appears to disappear briefly, then reappear in the new position Most visible when unselecting an item from the bottom selected group (it should move to top) Sometimes there is a temporary “empty gap” near the top during the move In some row styling setups, row corner masking also looks wrong during animation What I tried: Different animations (default, easeInOut, spring) Adding/removing small dispatch delay before state change Moving section header content outside List Using custom row backgrounds/corners vs system row styling Keeping stable IDs in ForEach Behavior still appears with native List + swipeActions on iOS 26. So my question is: Is this a known issue/regression with List row move animations on iOS 26? Recommended pattern to keep native swipe actions but avoid this visual artifact? This worked smoothly on iOS 18 with the same approach, and the visual glitch appears only after moving to iOS 26.
Topic: UI Frameworks SubTopic: SwiftUI
0
0
80
1d
Cannot finish account setup
Hello, Our Apple Developer Program membership is active and renewed until 2027, and the updated terms and conditions were accepted a few days ago by the account holder. However, in App Store Connect we are still seeing the following messages: "Your Apple Developer Program subscription has expired. Your apps won't be available on the App Store until you renew it. To renew the subscription, the account holder must go to the Membership section of their account on the Apple Developer website." "The Apple Developer Program license agreement has been updated and needs to be reviewed. To update your apps and submit new apps, the account holder must log in to their account, review the updated agreement, and accept it." Both actions appear to have already been completed, but the warnings are still displayed in App Store Connect. Has anyone experienced a similar issue? Is there any known delay for the system to reflect the updated membership status, or any additional step that we might be missing? Thank you.
0
0
47
1d
App stuck in "Waiting for review", no contact since Feb 12th
Hey team, I am reaching out about an app I submitted for review (app id: 6748933312). I started the review process Feb 4th, 26 days ago. The process started off positively - I got my first response within 3 days and had to go back and forth a couple times to bake in some review feedback, which was expected since this was the first submission. I even jumped on a call with Bill who gave some super helpful clarifying guidance! Thanks Bill :) But it then went downhill from there... I submitted my 3rd version on Feb 12th and was hoping that would get me the approval. But then I didn't hear anything for 10 days despite calls to support and a request for expedited review. At which point I wasn't sure what to do and I wanted to iron out some bugs, so i pulled and resubmitted on Feb 22nd, and I still haven't heard back from the team. Stuck in "Waiting for review" for another 10 days. I really don't know what to do now, I can't tell if Apple has just stopped accepting new apps altogether? My friends are able to submit updates to existing apps and get approvals within hours. Pls help, I'm losing hope as a new app developer. -James
4
1
122
1d