Posts under Developer Tools & Services topic

Post

Replies

Boosts

Views

Activity

Command line argument behaviour in macOS 15 after compiling with Xcode 16
I encountered this issue with an app I'm writing that accepts arguments. With some troubleshooting I've determined that this is an inherent behaviour in how Xcode 16 compiles SwiftUI apps and how macOS 15 launches them. The issue: Launching the app as open /Applications/AppName.app --args --arg1 --arg2 --arg3 etc should allow the app to process the arguments as CommandLine.arguments and this is still the case. How the app sees arguments is unchanged and doesn't matter if you use CommandLine.arguments or swift argument parser or don't have arguments at all. This will affect any SwiftUI app as I'll demonstrate below. The problem is that if you use a mix of arguments as --arg value pairs or --arg as a flag, then depending on the order the arguments are provides, the app won't launch properly. The icon will appear in the dock but no window appears until you click the icon in the dock. (BTW, having "Application is agent (UIElement)" set to YES in the Info.plist makes this task rather difficult.) In testing if you use all flags, it's fine. if the flags are in pairs, it's fine. if you have one flag and then a --arg value pair, you will see the issue. If you reverse the order so the flag is after then it works fine. How to replicate: On macOS 15 and Xcode 16 Open Xcode Create a new macOS App (called demoapp in my example) Select SwiftUI as the interface Build That it. Don't add anything and just build the boilerplate hello world app that Xcode makes for you. Once that's built, cd to your /Build/Products/Debug/ directory in terminal and try the following (this happens if you build for release as well): note, the app window will display when you click the icon in the dock, just not on initial launch # three single arguments open ./demoapp.app --args --foo --bar --baz # App window displays as expected # one single argument, one arg value pair open ./demoapp.app --args --foo --bar baz # The app window will not appear. # same arguments as before but the single argument is after the arg value pair open ./demoapp.app --args --bar baz --foo # App window displays as expected # arg[1] without `-` or `--` prefix open ./demoapp.app --args foo --bar --baz # The app window will not appear. # arg[1] and arg [2] without prefix open ./demoapp.app --args foo bar --baz # The app window will not appear. # single - in front of the first two arguments open ./demoapp.app --args -foo -bar baz # The app window will not appear. # single - in front of the first three arguments open ./demoapp.app --args -foo -bar -baz bob # App window displays as expected No idea what is going on but I suspect macOS does some pre-processing before launching the app, for example you can do stuff like open /Applications/SomeApp.app --args -AppleLanguages '(de)' to run using a specific language. I presume the OS is pre-processing arguments before launching the app proper. If I compile the app using Xcode 15.4 then this issue is not present. Also Apps compiled with Xcode 16 do not exhibit the issue on macOS 14 or earlier. It's a specific Xcode 16, macOS 15 thing in the way the app is compiled that makes it behave this way. I hope I've explained it correctly, but it's very easy to replicate. I filed a feedback for it (under a different apple account), FB15577018. Any insight into what's going on here would be helpful. Also if there's any compiler flags I could be setting. In my actual project, I'm not making any other changes. The same code compiled under Xcode 16 (.0 or .1RC) behaves differently to Xcode 15.4.
7
1
653
May ’25
App Store Connect Upload Fails with Icon Alpha Channel Error in Xcode 26 Beta 4
After updating to Xcode 26 Beta 4, I can no longer upload my app to App Store Connect due to a WatchKit icon validation error. The error states: Invalid Icon. The watch application 'YourApp.app/Watch/YourWatchApp.app' contains an icon file 'Icon Image-AppIcon-watch-1024x1024 @1x.png' with an alpha channel. Icons should not have an alpha channel. • This file name doesn’t exist in the asset catalog or project source. • All icon assets used in the Watch App’s AppIcon set, including the required 1024x1024 icon, were checked with sips -g hasAlpha and confirmed to not contain an alpha channel. • Project was cleaned, derived data cleared, and archive recreated multiple times. • This issue only began after updating to Xcode 26 Beta 4. In the previous versions, everything was ok. Is anyone else experiencing this after upgrading Xcode to Beta 4? Any idea/workaround on how to solve this would be appreciated.
7
2
213
Jul ’25
Xcode Cloud randomly fails to resolve package dependencies
Hi folks, I've been having this issue for the last few months, where Xcode Cloud fails to resolve Swift package dependencies while compiling my builds, seemingly at random. Some of my Xcode Cloud builds will fail after several minutes, with an error log looking like that : xcodebuild: error: Could not resolve package dependencies: failed downloading 'https://dl.google.com/firebase/ios/bin/grpc/1.62.2/rc0/grpcpp.zip' which is required by binary target 'grpcpp': downloadError("The request timed out.") Whenever this happens, I have to manually restart an Xcode Cloud build process (or several builds, since the error can happen multiple times in a row), to the point it's becoming increasingly painful to rely on Xcode Cloud for my workflow. The failing packages are mostly random (meaning, it's not always the same one that Xcode fails to resolve), but they are always publicly accessible, even though I have an environment variable set in my Xcode workflows to retrieve a single Github private dependency (maybe this has some kind of importance). Could anyone tell me if this is an isolated issue, or if I could do anything on my end to resolve this ? Thank you !
7
2
1.3k
Apr ’25
Building an app with both GUI and Command Line versions
I use CMake for my builds not the XCode GUI. I want to be able to build a single .app that contains both the GUI version and the command line version. I have seen products that ship both as part of the same .app (e.g. CMake) so this is clearly entirely possible, the 64k question is HOW? Right now I am building them as separate apps - lets call them DSS and DSSCL (*). The code base for each is in its own directory - each with its own CMakelists.txt file. My initial thoughts are to change the build for DSSCL so it doesn't create a bundle and then simply copy the DSSCL command and related .qm files into DSS.app/.../MacOS. However that's likely enough totally wrong, so how should I handle this please. As much detail as possible please, I am very new to macOS development -please don't assume knowledge of stuff that's second nature to you Many thanks David (*) Strictly they are DeepSkyStacker and DeepSkyStackerCL
7
0
142
Apr ’25
Xcode Cloud Export Archive Fails with Xcode 26.2 RC
Export archive step fails in Xcode Cloud when using Xcode 26.2 (17C48) RC. The same project exports successfully when switching back to Xcode 26.1 in Xcode Cloud workflow settings. The same project exports successfully when using Xcode 26.2 RC locally. Projects without Apple Watch app do not encounter this issue (not so sure about this). From Xcode Cloud UI: Exporting for App Store Distribution failed. Please download the logs artifact for more information. Run command: 'xcodebuild -exportArchive ... Command exited with non-zero exit-code: 70 From xcodebuild-export-archive.log: error: exportArchive Automatic signing cannot update bundle identifier "io.***.***.watchkitapp". error: exportArchive No profiles for 'io.***.***.watchkitapp' were found error: exportArchive Automatic signing cannot update bundle identifier "io.***.***". error: exportArchive No profiles for 'io.***.***' were found ** EXPORT FAILED ** IDEDistribution: App Store Connect request for store configuration failed for account Session Proxy Provider (Account "Session Proxy Provider": Unable to authenticate with App Store Connect (Error Domain=DVTITunesSoftwareServiceFoundation.DVTServicesSessionProviderCredentialITunesAuthenticationContextError Code=1 "(null)")) DVTServices: Sending request A7605D4E-2892-4B6D-9197-90BD3AB53D67 to <http://172.16.57.4:8089/services/v1/capabilities> Payload: {"urlEncodedQueryParams":"teamId=984L9QX9X5&filter%5BreferenceType%5D=bundle&filter%5BincludeRequestable%5D=true&limit=200"} { "errors": [{ "id": "fb67ecdb-103b-4446-a2db-618fd6bd99e7", "status": "400", "code": "PARAMETER_ERROR.INVALID", "title": "A parameter has an invalid value", "detail": "A parameter 'filter[includeRequestable]' has an invalid value : ''includeRequestable' is not a valid field name.'", "source": { "parameter": "filter[includeRequestable]" } }] } DVTServices: Could not fetch capabilities from network due to error: error = 'A parameter has an invalid value' Workaround Switching Xcode Cloud workflow to use Xcode 26.1 works around the issue. Using Xcode 26.2 RC locally works around the issue.
7
5
563
1w
Failed to verify code signature when trying to install on iPad from XCode
Hi, run into this error today: Failed to verify code signature of /var/installd/Library/Caches/com.apple.mobile.installd.staging/temp.QJh2l0/extracted/MyAwesome.app : 0xe8008015 (A valid provisioning profile for this executable was not found.) Project is an AUv3 app + extension. It builds and install fine on MacOS. It builds on iPad but can't install : that's when the error appears. Regarding provisioning files, I use Automatic manage signing and I can see that the Xcode Managed Profile looks fine an includes my iPad. The only thing I see that differ from other projects is that as an AUv3 project, I have both and App (host) and extension projects. Thus the bundle identifier for this extension project is not the same as it seems I have to use different identifiers. So app bundle id is x.y while extension is x.y.z (same x.y base)) Last but not least the project and IPA can be built fine on XCode Cloud. (Although I can't download the artifacts but it seems it's the same problem for many of us today...) macOS Version 15.4 (Build 24E248) Xcode 16.2 (23507) (Build 16C5032a) Thanks in advance for your help :)
7
0
361
Oct ’25
NWPathMonitor : Lost connection to the debugger
I tried to monitor the device's network status with Network framework code below. let networkMonitor = NWPathMonitor(requiredInterfaceType: .cellular) networkMonitor.pathUpdateHandler = { [weak self] path in     if path.status == .satisfied {         print("Cellular Satisfied")     } else {         print("Cellular Unsatisfied")     } } When I run the app in my iPhone(iOS 15.5) and turn cellular on/off, iPhone suddenly loses connection with XCode. Lost connection to the debugger on “...'s iPhone”. Domain: IDEDebugSessionErrorDomain Code: 12 Recovery Suggestion: Restore the connection to “...'s iPhone” and run “...” again, or if “...” is still running, you can attach to it by selecting Debug &gt; Attach to Process &gt; .... User Info: {     DVTErrorCreationDateKey = "2022-06-23 02:16:30 +0000";     IDERunOperationFailingWorker = DBGLLDBLauncher; } Analytics Event: com.apple.dt.IDERunOperationWorkerFinished : {     "device_model" = "iPhone13,2";     "device_osBuild" = "15.5 (19F77)";     "device_platform" = "com.apple.platform.iphoneos";     "launchSession_schemeCommand" = Run;     "launchSession_state" = 2;     "launchSession_targetArch" = arm64;     "operation_duration_ms" = 5861;     "operation_errorCode" = 12;     "operation_errorDomain" = IDEDebugSessionErrorDomain;     "operation_errorWorker" = DBGLLDBLauncher;     "operation_name" = IDEiPhoneRunOperationWorkerGroup;     "param_consoleMode" = 0;     "param_debugger_attachToExtensions" = 0;     "param_debugger_attachToXPC" = 1;     "param_debugger_type" = 5;     "param_destination_isProxy" = 0;     "param_destination_platform" = "com.apple.platform.iphoneos";     "param_diag_MainThreadChecker_stopOnIssue" = 0;     "param_diag_MallocStackLogging_enableDuringAttach" = 0;     "param_diag_MallocStackLogging_enableForXPC" = 1;     "param_diag_allowLocationSimulation" = 1;     "param_diag_gpu_frameCapture_enable" = 0;     "param_diag_gpu_shaderValidation_enable" = 0;     "param_diag_gpu_validation_enable" = 0;     "param_diag_memoryGraphOnResourceException" = 0;     "param_diag_queueDebugging_enable" = 1;     "param_diag_runtimeProfile_generate" = 0;     "param_diag_sanitizer_asan_enable" = 0;     "param_diag_sanitizer_tsan_enable" = 0;     "param_diag_sanitizer_tsan_stopOnIssue" = 0;     "param_diag_sanitizer_ubsan_stopOnIssue" = 0;     "param_diag_showNonLocalizedStrings" = 0;     "param_diag_viewDebugging_enabled" = 1;     "param_diag_viewDebugging_insertDylibOnLaunch" = 1;     "param_install_style" = 0;     "param_launcher_UID" = 2;     "param_launcher_allowDeviceSensorReplayData" = 0;     "param_launcher_kind" = 0;     "param_launcher_style" = 0;     "param_launcher_substyle" = 0;     "param_runnable_appExtensionHostRunMode" = 0;     "param_runnable_productType" = "com.apple.product-type.application";     "param_runnable_swiftVersion" = "5.6";     "param_runnable_type" = 2;     "param_testing_launchedForTesting" = 0;     "param_testing_suppressSimulatorApp" = 0;     "param_testing_usingCLI" = 0;     "sdk_canonicalName" = "iphoneos15.4";     "sdk_osVersion" = "15.4";     "sdk_variant" = iphoneos; } In my opinion, it seems like an error of XCode. Plz let me know if there's any solution. Also, there's a similar issue here : https://developer.apple.com/forums/thread/681459
7
0
1.4k
Feb ’25
Error in gathering code coverage in Xcode16
Fails to gather code coverage and throws this error Showing All Messages Failed to merge raw profiles in directory /Users//Library/Developer/Xcode/DerivedData/Receiver-ekqrbpsaciuxmlfslviajhoecyat/Build/ProfileData/0B0C6B69-FD46-4801-B106-56B7FCD44370 to destination /Users//Library/Developer/Xcode/DerivedData/Receiver-ekqrbpsaciuxmlfslviajhoecyat/Build/ProfileData/0B0C6B69-FD46-4801-B106-56B7FCD44370/Coverage.profdata: Aggregation tool '/Users/shwethamugeraya/Downloads/Xcode 2.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/llvm-profdata' failed with exit code 1: warning: /Users/shwethamugeraya/Library/Developer/Xcode/DerivedData/Receiver-ekqrbpsaciuxmlfslviajhoecyat/Build/ProfileData/0B0C6B69-FD46-4801-B106-56B7FCD44370/2F4EFBF7-1CCF-4E9E-8FD6-482EEDB98B6C-34646.profraw: raw profile version mismatch: Profile uses raw profile format version = 4; expected version = 8 PLEASE update this tool to version in the raw profile, or regenerate raw profile with expected version. error: no profile can be merged
7
9
1.3k
Oct ’25
Importing files to Files.app in iOS 26 Simulator
In previous versions of the simulator, it was possible to import files into the Files app by dragging them from the Finder into the Simulator. It appears that in the iOS 26 Simulator, this opens the file in Safari. I've only tried it with .json files so far. The documentation at https://developer.apple.com/documentation/xcode/sharing-data-with-simulator says that the original behaviour should happen: To add files to Simulator, select one or more files in Finder on your Mac, then click the Share button. Select Simulator from the share destination list. Choose the simulated device from the drop-down list. Simulator opens the Files app, and lets you select where to save the files. I'd love to learn if this is intentional behaviour, and if so, what workarounds there might be. I use this pattern quite a lot, as I have a HealthKit app, and I've built a system that allows me to export workouts as JSON files from a real device, that I can then import into a simulator for testing. Edit: I found a workaround. Make a folder in Files.app, then search for it within ~/Library/Developer/CoreSimulator/Devices. Open the folder in Finder, then add any files you want to be available in the Simulator.
7
6
363
2w
Check whether app is built in debug or release mode
Currently, if as a library author you are shipping dependencies as code, you can use the #if DEBUG preprocessor check to execute logic based on whether app is being built for Debug or Release. My concern is more about the approach that should be taken when distributing frameworks/xcframeworks. One approach I am thinking of using is checking the presence of {CFBundleName}.debug.dylib in the main bundle. Is this approach reliable? Do you suggest any other approach?
7
0
318
3w
Xcode 26.0 Share Extension crashes with NSInternalInconsistencyException on iOS 26.0
Issue : When creating a new project in Xcode 26.0 and adding a Share Extension target without modifying any code, the app crashes upon displaying the extension screen with the following error: *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'The layout constraints still need update after sending -updateConstraints to <_UINavigationBarTitleControl: 0x105b9cc00; frame = (0 0; 0 0); layer = <CALayer: 0x10b834270>>. _UINavigationBarTitleControl or one of its superclasses may have overridden -updateConstraints without calling super. Or, something may have dirtied layout constraints in the middle of updating them. Both are programming errors.' Environment : Xcode 26.0 iOS 26.0 (physical device) Note: This issue does not occur when running on iOS 18.3.1 (physical device). Temporary Workaround : Adding the following implementation to the isContentValid method prevents the exception from occurring: Objective-C- (BOOL)isContentValid { // Do validation of contentText and/or NSExtensionContext attachments here if (@available(iOS 26, *)) { self.navigationController.navigationBarHidden = YES; } return YES; } Questions : Is there any alternative way to avoid this exception? Since this crash occurs with the default implementation generated by Xcode, is there any plan to fix it in future updates?
7
1
538
3w
Xcode 16.2 not seeing iOS 18 devices
Ever since I updated to Xcode 16.2, no device running iOS 18 shows up in Xcode. I can see the devices in Finder and Apple Configurator, but not in Xcode. When I run xcrun devicectl list devices, I also do not see the devices, so I assume the issue is in CoreDevice somewhere. I've tried many things I've seen suggested in similar threads (toggling developer mode, reinstalling Xcode, using a different physical cable, etc) and so far nothing has helped. This same behavior is also happening for my entire development team, which has been as difficult as you might imagine. Any info on how to resolve this would be much appreciated.
7
3
6.8k
Feb ’25
[azure devops and Github runners] AVPIdentity: AppleVirtualPlatformHostKey.mm:234: Assert: platformExpert, value: 0
Description When starting the iOS simulators on macOS-15 intel image, the following assertion happens: The same issue not showing for macOS 15-arm64 image. Here is the issue details: https://github.com/actions/runner-images/issues/10925 raised by multiple users. AVPIdentity: AppleVirtualPlatformHostKey.mm:234: Assert: platformExpert, value: 0 AVPIdentity: AppleVirtualPlatformHostKey.mm:234: Failed to get AppleVirtualPlatformARMPE service. The Simulators worked fine the day before the above issue was posted. What changed? Did something update?
7
5
1.3k
Jan ’25
Xcode 16 Do not display comments correctly
Comments are not displayed correctly in Xcode 16. As you can see on the included screenshot, the first /// are displayed correctly but the remaining ////////////////////////// are super small. In a programming text editor, like Xcode, all characters MUST be monospaced. Otherwise it is impossible to code. Xcode is not supposed to be a word processor. There are no parameters to fix that. It was working fine for the past 15 years on Xcode. Please fix that so I can work again. And never do that ever again. Understood?
7
0
703
Apr ’25
I have a bone to pick with Xcode
Despite Xcode being the one and most used IDE for iOS, it is far from perfect. I have used many tools in my career and here are some features, that would make it much better or what I miss from other IDEs. I encourage others to chip in discussion and lets all hope, Apple starts to improve Xcode. Will put each issue in separate comment below. Slow debugger: not sure what bloat Xcode has or what it is doing, but sometimes it can take more than 10 seconds from breakpoint firing to actually see values. Moreover when debugging SwiftUI or something objC I have to drill down to see value of property or use po and p command and hope it works. SwiftUI views and states are a big pain to debug, to see what is changing a value I have to always use didSet trick or some other black magic. Is it too hard to make it easier? Breakpoints with condition can take up to 1 minute to load and I have M1 Max MBP. Just tried cursor IDE few days ago and breakpoints are much faster and without too much bloat in variable inspector.
7
0
352
Feb ’25
MacOS 15.4 removes rsync —log-file option?
I installed MacOS Sequoia 15.4 and now my backup script no longer works. My script is using rsync in this way: rsync -avz —delete —log-file=“$LOG_FILE” “$SRC_DIR” “$DEST_DIR” This has been working fine for a very long time. After updating to 15.4, this produces the error “rsync: unrecognized action —log-file=/users/admin/logs/backuplog_xxx.log”. The log file path is correct (and hasn’t changed). Interestingly, the man page for rsync no longer shows the —log-file as an option. I know I can use: rsync -avz —delete “$SRC_DIR” “$DEST_DIR” > “$LOG_FILE”` or even rsync -avz —delete “$SRC_DIR” “$DEST_DIR” > “$LOG_FILE” 2>&1` to also capture stderr. However, I liked the output from the built-In log option. Does anyone know why this might have been removed or if there is a way to get it back? Thanks.
7
2
1.1k
Jun ’25
Xcode won't execute code?
Hi everyone. I have the following code that I am trying to execute in Xcode. I then install it on my iPhone. It doesn't run at all and I don't know why. Any thoughts? Thank you. import CoreMotion class MyViewController: UIViewController { let motionManager = CMMotionManager() func startAccelerometer() { if motionManager.isAccelerometerAvailable { motionManager.accelerometerUpdateInterval = 0.1 // 10 updates per second motionManager.startAccelerometerUpdates(to: .main) { (data, error) in guard let accelerometerData = data else { return } let x = accelerometerData.acceleration.x let y = accelerometerData.acceleration.y let z = accelerometerData.acceleration.z // Process the x, y, and z acceleration values here print("X: \(x), Y: \(y), Z: \(z)") } } } }
7
0
176
Aug ’25