We have a dependency, Apollo iOS, that is managed by SwiftPM in an internal module Swift Package.
That internal Swift Package is then linked and included in our iOS target.
The iOS target has an associated WidgetKit extension app.
When archiving the app, we're seeing extremely long "Copy Apollo_Apollo.bundle" build steps, on the magnitude of 15 minutes. This is only happening when copying the bundle for the Widget extension app.
Builds are done with Xcode 15.2, but we've tried on 15.4 and 16.2, seeing a few minutes shaved off.
How can we begin to debug this issue?
Xcode
RSS for tagBuild, test, and submit your app using Xcode, Apple's integrated development environment.
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
I’ve noticed a good number of strange problems in the IOS development process, so I’m going to track them here. If they’re resolved at some point, I’ll note it.
At least in my first attempt, letting Appleconnect build my code resulted in a build with no errors that could not be submitted for review. The solution for me was to build from Xcode. It took a while to stumble on that, so if you have problems with one way, try the other.
Xcode doesn’t show Info.plist by default. This is a particularly nasty bug that caused a great deal of trouble, being the biggest reason I had so much trouble getting my first app submitted for review. The only way I found to get around it was to make a small change to one of the items under the Info tab under the project name/icon in Xcode. Then, the Info.plist showed up!
SwiftUI and SwiftData are siloed off from each other, so if you have a list, the view is controlled by SwiftUI. This means that if a user moves an item in a list, SwiftData is not informed. If the user quits the app, the order will revert to the last saved version! So you must resort to tracking the order in your code and adjusting your query accordingly.
In my Mac's Settings -> General -> Storage -> Developer -> (i) I have a series of entries for "bridgeOS", all 2.49 GB except one that is "zero".
Do I need these? Can I remove them?
I am only doing "normal" iPhone / iPad development.
(There was some previous mention of this here:
https://developer.apple.com/forums/thread/711279
with no feedback.)
I am new to Xcode and coding in general. I am trying to resolve an issue with my CI in GitHub, which I think is coming from a path issue. To summarize my approach: I start by creating a GitHub repo, I then clone that to a outer folder (e.g., TEST) on my desktop, which results in desktop/TEST/TEST/[github files]. When I go to create my Xcode project, it always forces me to create a new folder resulting in desktop/TEST/TEST/TEST/[xcode files]. I want the Xcode files to sit in the repo folder so its desktop/TEST/TEST/[github & Xcode files]. I thought I could drag and drop them in but get a popup blocking it. Any thoughts on how to address this. Thank you in advance.
Topic:
Developer Tools & Services
SubTopic:
Xcode
When launching the SimpleWatchConnectivity sample in a simulator (iOS 18.2 + watchOS 11.2), almost all the functionality works, but TransferFile does not work. The error is the following:
-[WCFileStorage persistOutgoingFileTransfer:] error serializing file transfer <WCSessionFileTransfer: ...> due to Error Domain=NSCocoaErrorDomain Code=4866 "Caught exception during archival: This object may only be encoded by an NSXPCCoder."
How can it be fixed or worked around?
Topic:
Developer Tools & Services
SubTopic:
Xcode
Tags:
Watch Connectivity
WatchKit
watchOS
Simulator
Hello,
Since Xcode update to 16.1, I can't open some of my storyboard files in Interface Builder.
When I click on a storyboard, Xcode takes a long time to load, then crashes.
I dont have any errors or warnings and everything works well, I can build and distribute the app, just I can't use my storyboards.
MacBook Pro M1 on Sequoia 15.1.1
Any help is welcome!
Topic:
Developer Tools & Services
SubTopic:
Xcode
computer specs:
MacBook Pro 14in 2023 m2 pro 16gb
macos ver:
Version 15.1 Beta (24B5009l)
Issue: When I open xcode on my Mac, it unexpectedly quits every time. I have disabled internet connection, it doesn't work. I have uninstalled and install again on appstore, it still doesn't work. I've open the app in another user on my laptop, it doesn't work.
The problem report generated from the quitting Xcode is too long so i put it into the attached text file:
Report Log when it reported quit unexpectedly
How can I add navigation to an existing program. I coded this as per youtube video:
var body: some View {
NavigationView {
VStack {
NavigationLink(destination: viewdetail()) {
Text("click")
.frame(width: 300, height: 150,
alignment: .center)
.background(Color.gray)
.foregroundColor(.black)
}
}
}
It doesn't work. If I comment out the rest of the program it works. I have VStacks and HStacks and functions after the navigation code. Please help.
Topic:
Developer Tools & Services
SubTopic:
Xcode
Hi everyone,
Since a couple days, I can't launch my watchOS widget extension in the Xcode simulator.
After launching the scheme in Debug or Release, I always end up with Xcode stuck on "Waiting to attach to watchOSWidgets on Apple Watch Series 9".
I already uninstalled and reinstalled Xcode and cleared all Xcode related folders in Library.
I also tried to use Debug > Attach to process, then Xcode goes into "Running watchOSWidgets on Apple Watch Series 9" but no widgets are installed, neither the app so I cannot debug anything.
I tried on different simulators, always end up with the same problem.
However, the watch app scheme works fine, in Debug or Release, it is only the widgets extension which doesn't work anymore.
This seems related to my computer, because if I create an empty project with a default watch widget extension, I still have the same issue. I really don't know what to do... Does anyone has a clue ?
Thanks
It only seems to happen in the real app I am working on and not within any of the test apps I make.
Its lasted a few Xcode versions. Don't know if this is widespread to the point of having a name?
I'm using xcode 16.1 withSwiftUI. I want to know how to call a function passing in an array. Also I need to know how to declare the function receiving the array.
I currently have:
func myfunc(costa: [Double] {
some code
}
I call it like this:
myfunc(costa:[ ])
It's an array of Doubles.
I don't get any errors but the array is always empty even though it's not empty on the sending side. Please help. Thank you.
Topic:
Developer Tools & Services
SubTopic:
Xcode
I saw in the Xcode 16 release notes that on-device debugging is no longer available on watchOS prior to version 7.0, but I can't even get a signed, compiled app to run on an older watch. The current version I have live in the App Store works just fine on 4.3.2. I have changed no code, I just started building the app with Xcode 16, and now it won't launch on older watches.
Is it no longer possible to update an app for older watches?
We use a local swift package in 6 of our app extensions. The product from the local package that we link to each app extension is a dynamic framework. And while the dynamic framework is copied into the final app bundle once, the resource bundles of each target that comprise the dynamic framework is copied into each app extension. I'd much rather have the bundles be copied into the dynamic framework once to prevent app bloat.
Here is a visualization of the issue:
.
└── MyApp.ipa/
├── MyApp (executable)
├── MyDynamicFramework_TargetA.bundle
├── MyDynamicFramework_TargetB.bundle
├── MyDynamicFramework_TargetC.bundle
├── Frameworks/
│ └── MyDynamicFramework.framework/
│ ├── TargetA
│ ├── TargetB
│ └── TargetC
└── PlugIns/
├── Widgets.appex/
│ ├── MyDynamicFramework_TargetA.bundle
│ ├── MyDynamicFramework_TargetB.bundle
│ └── MyDynamicFramework_TargetC.bundle
├── Intents.appex/
│ ├── MyDynamicFramework_TargetA.bundle
│ ├── MyDynamicFramework_TargetB.bundle
│ └── MyDynamicFramework_TargetC.bundle
├── IntentsUI.appex/
│ ├── MyDynamicFramework_TargetA.bundle
│ ├── MyDynamicFramework_TargetB.bundle
│ └── MyDynamicFramework_TargetC.bundle
├── NotificationContent.appex/
│ ├── MyDynamicFramework_TargetA.bundle
│ ├── MyDynamicFramework_TargetB.bundle
│ └── MyDynamicFramework_TargetC.bundle
├── RichPushContent.appex/
│ ├── MyDynamicFramework_TargetA.bundle
│ ├── MyDynamicFramework_TargetB.bundle
│ └── MyDynamicFramework_TargetC.bundle
└── NotificationService.appex/
├── MyDynamicFramework_TargetA.bundle
├── MyDynamicFramework_TargetB.bundle
└── MyDynamicFramework_TargetC.bundle
Notice that the resource bundles of Target A, B, and C are copied multiple times causing an unhealthy app size.
I'd either like the resource bundles to be copied into MyDynamicFramework or copied once into the app bundle and let the app extensions reference them.
Given the SPM + Xcode linking is a black box for the most part, how would I accomplish this?
Happy to have a new MacBook Pro M4 now - the new machine was setup from time machine backup of my old MacBook Pro M1.
Sadly Predictive Code Completion does not work on the new M4 (it was working great on the M1).
Xcode shows as downloaded component:
Predictive Code Completion Model [com.apple.fm.code.generate_small_v1.base: 500.1.81600.13.200772,0] [com.apple.fm.code.generate_safety_guardrail.base: 1.6.81619.13.200716,0] [com.apple.gm.safety_deny.input.code_intelligence.base: 32024010.20241007.171244.100.377,0] [com.apple.gm.safety_deny.output.code_intelligence.base: 32024010.20241007.171244.100.377,0] (Installed)
Things I already tried:
Removed and reinstalled Xcode 16 (also latest beta).
Disabled/enabled Xcode Editor Settings for predictive code completion
Many many reboots
Removed Xcode cache
Maybe the downloaded Model is somehow locked to the old machine?
How can I remove, redownload or reinstall it again?
Thank you very much.
Tobias
I am writing a package in Swift using Xcode 16.1 (swift-tools-version: 6.0) and am trying to use features that became available in later versions of macOS and iOS.
The following line naturally causes a compiler error when compiling against 'My Mac':
let match = "test-string".firstMatch(of: /-(.+)/)!
'firstMatch(of:)' is only available in macOS 13.0 or newer
I can of course fix this by using @available(macOS 13.0, *), but there are dozens of methods and I would prefer to use the platforms property in the Package file like this:
platforms: [
.macOS(.v10_13),
.iOS(.v16)
],
However for reason that are not clear, this does not work and the compiler errors remain.
I have tried cleaning, removing derived data etc.
What I am doing wrong?
I try to use "Download container" on "Devices and Simulators".
But on iOS 17, xcappdata file size is 4KB and ''AppData" folder is empty.
On iOS 15, xcappdata file size is 2MB and success downloaded.
Xcode show these error when I unplug iOS 17 and plugin iOS 15.
The system failed to get a list of files on the remote device.
Domain: com.apple.dt.CoreDeviceError
Code: 7001
User Info: {
DVTErrorCreationDateKey = "2023-12-12 07:39:24 +0000";
NSFilePath = "";
}
--
Unknown response: {
XPCErrorDescription => Connection interrupted
}
Domain: com.apple.dt.remoteservices.error
Code: -1
--
System Information
macOS Version 14.2 (Build 23C64)
Xcode 15.1 (22502) (Build 15C65)
Timestamp: 2023-12-12T15:39:24+08:00
PS.
I had turn on [Airplane mode] on iOS 17.
When I attempt to preview my code, I encounter an error message stating, “Cannot preview in this file: Failed to launch (App Name).” This issue is specific to this particular app. I attempted creating a new project, and that works fine.
This is what it says in the diagnostics:
| [Remote] JITError
|
| ==================================
|
| | [Remote] LLVMError
| |
| | LLVMError: LLVMError(description: "The file was not recognized as a valid object file")
Since Xcode 15.3 it has become impossible to build our project more twice in a row without encountering a batch of "internal inconsistency error: never received target ended message for target ID …".
This issues appeared a few months ago (15.0 i think, but i'm not sure), but xcode 15.3 makes it almost unusable. We're a team of 3 iOS devs, and we're all having the problem.
Our project involves a lot of SPM packages, a few cocoa pods, a few iOS Frameworks, and a bit of swiftgen. Nothing particularly special for a large project, and no custom build steps that does anything fancy.
It is now to the point where we're looking for alternative to xcode, because we can't decently kill xcode and restart every time we have to build our code...
Today I got stuck with a weird behaviour with my c++ project. There is the code which doesn't catch exception from standard library (the same snippet works well on intel mac and under linux machines).
Code snippet:
#include <exception>
#include <stdexcept>
#include <iostream>
#include <string>
int main() {
try {
std::stod("notanumber");
} catch (const std::invalid_argument&) {
std::cerr << "Caught std::invalid_argument" << std::endl;
}
}
Compilation command:
clang++ -fno-rtti main.cpp -o main && ./main
Clang versions:
clang++ --version
Homebrew clang version 15.0.3
Target: arm64-apple-darwin21.6.0
Thread model: posix
InstalledDir: /opt/homebrew/opt/llvm/bin
Also tried:
Apple clang version 14.0.0 (clang-1400.0.29.102)
Target: arm64-apple-darwin21.6.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
Output:
libc++abi: terminating with uncaught exception of type std::invalid_argument: stod: no conversion
[1] 65643 abort ./main
Expected output:
Caught std::invalid_argument
Other info:
Chip: Apple M1
OS: 12.6
We have a watchOS app in TestFlight that is currently crashing on any device running watchOS 11 and up.
I have an older Apple Watch SE that's capped at 10.6.1 that can run the app just fine, but the same exact install on a newer device fails.
This started happening after I updated my MacBook to macOS Sequoia and Xcode to 16.
In order to get the Watch app to run on the 10.6.1 device, I had to change the Swift Optimization Level from -O to -Osize. I already filed Feedback on this (FB15691116).
I've tried so many different things and have come up with nothing to show for it.
When I look in the IPS file, I see that the crash point in my code on the watchOS 11 device is at
KinesiaUOnWatch`@objc SessionDelegator.session(_:activationDidCompleteWith:error:):
0x3a3f48 <+0>: sub sp, sp, #0x60
0x3a3f4c <+4>: stp x26, x25, [sp, #0x10]
0x3a3f50 <+8>: stp x24, x23, [sp, #0x20]
0x3a3f54 <+12>: stp x22, x21, [sp, #0x30]
0x3a3f58 <+16>: stp x20, x19, [sp, #0x40]
0x3a3f5c <+20>: stp x29, x30, [sp, #0x50]
0x3a3f60 <+24>: add x29, sp, #0x50
0x3a3f64 <+28>: mov x19, x4
0x3a3f68 <+32>: mov x23, x2
0x3a3f6c <+36>: mov x22, x0
0x3a3f70 <+40>: mov w0, #0x0 ; =0
0x3a3f74 <+44>: bl 0x89818 ; symbol stub for: type metadata accessor for Swift.MainActor
0x3a3f78 <+48>: mov x24, x0
0x3a3f7c <+52>: adrp x25, 161
0x3a3f80 <+56>: ldr w25, [x25, #0x654]
0x3a3f84 <+60>: mov x20, x0
0x3a3f88 <+64>: bl 0x8980c ; symbol stub for: static Swift.MainActor.shared.getter : Swift.MainActor
0x3a3f8c <+68>: mov x21, x0
0x3a3f90 <+72>: adrp x0, 166
0x3a3f94 <+76>: add x0, x0, #0xc40 ; lazy protocol witness table cache variable for type Swift.MainActor and conformance Swift.MainActor : Swift.Actor in Swift
Incident Identifier: 08E2F667-7965-4C86-B85E-9E2F03EAA963
Beta Identifier: AD390666-55CB-43B3-9B14-BD3E70F456EB
Hardware Model: Watch6,1
Process: KinesiaUOnWatch [389]
Path: /private/var/containers/Bundle/Application/B571E983-F2B0-40EF-9F0D-8C471CAEB3FB/KinesiaUOnWatch.app/KinesiaUOnWatch
Identifier: com.glneurotech.kinesiau.watchapp
Version: 5.1.0 (510271)
AppStoreTools: 16B39
AppVariant: 1:Watch6,1:11
Beta: YES
Code Type: ARM64_32 (Native)
Role: Foreground
Parent Process: launchd [1]
Coalition: com.glneurotech.kinesiau.watchapp [464]
Date/Time: 2024-12-03 15:12:51.1876 -0500
Launch Time: 2024-12-03 15:12:50.0000 -0500
OS Version: Watch OS 11.1 (22R585)
Release Type: User
Report Version: 104
Exception Type: EXC_BREAKPOINT (SIGTRAP)
Exception Codes: 0x0000000000000001, 0x000000002053dd4c
Termination Reason: SIGNAL 5 Trace/BPT trap: 5
Terminating Process: exc handler [389]
But, as I said, this exact app runs just fine on an older watchOS 10.6.1 device.
Has anyone else encountered something like this, or have any ideas on stuff to try?
Topic:
Developer Tools & Services
SubTopic:
Xcode
Tags:
Watch Connectivity
Swift
watchOS
Apple Watch