Posts under Developer Tools & Services topic

Post

Replies

Boosts

Views

Activity

Crash during batch deletion merge when positive fractional decimals are stored and used in a derived attribute
I am experiencing a crash when performing a batch delete and merging changes on a Core Data store that uses NSPersistentCloudKitContainer. The crash appears to be triggered when positive fractional Decimal values are stored in a TransactionSplit entity (those values are aggregated via a derived attribute in the AccountTransaction entity). If I store whole numbers or negative fractional decimals, deletion seems to work correctly. I suspect that the issue is related to the internal representation of positive fractional decimals in conjunction with a derived attribute. Data Model Setup: Account (1:N relationship → AccountTransaction) AccountTransaction (1:N relationship → TransactionSplit), which contains a derived attribute (e.g., “splits.amount.@sum”) that computes the sum over the “amount” attribute on its related TransactionSplit objects. TransactionSplit, which contains a stored Decimal attribute named “amount” (of type Decimal/NSDecimalNumber). Steps to Reproduce: Insert sample data where each TransactionSplit’s “amount” is set to a positive fractional value (e.g., 1000.01), by using code similar to: func createSampleData() { // Execute all creation on the context’s queue. let checkingAccount = Account(context: context) checkingAccount.id = UUID() checkingAccount.name = "Main Checking" let randomTransactionCount = 1000 for _ in 0..<randomTransactionCount { let transaction = AccountTransaction(context: context) transaction.id = UUID() transaction.account = checkingAccount let randomValue = Double.random(in: 5...5000) let decimalValue = NSDecimalNumber(value: randomValue) let split1 = TransactionSplit(context: context) split1.id = UUID() split1.amount = decimalValue split1.transaction = transaction let split2 = TransactionSplit(context: context) split2.id = UUID() split2.amount = decimalValue split2.transaction = transaction } save() } The AccountTransaction’s derived attribute automatically aggregates the sum of its related TransactionSplit amounts. Perform a batch deletion using NSBatchDeleteRequest (with resultType set to .resultTypeObjectIDs) on your entities and merge the changes back into your main context: private func delete(_ fetchRequest: NSFetchRequest<NSFetchRequestResult>) { let batchDeleteRequest = NSBatchDeleteRequest(fetchRequest: fetchRequest) batchDeleteRequest.resultType = .resultTypeObjectIDs // ⚠️ When performing a batch delete we need to make sure we read the result back // then merge all the changes from that result back into our live view context // so that the two stay in sync. if let delete = try? context.execute(batchDeleteRequest) as? NSBatchDeleteResult { let changes = [NSDeletedObjectsKey: delete.result as? [NSManagedObjectID] ?? []] NSManagedObjectContext.mergeChanges(fromRemoteContextSave: changes, into: [context]) } } Save the context after deletion.
4
0
625
Mar ’25
Xcode Cloud can't connect to Self-Hosted Gitlab Instance using the Change URL function
Hi, I'm trying to use the change url functionality to switch my Xcode Cloud setup from Gitlab.com to my self hosted Gitlab instance. The setup process completes successfully, however, Xcode Cloud does not create any web hooks in my repo and also is not able to fetch any branch/tag information from the Gitlab instance. There is also no error displayed on Xcode Cloud UI. I even tried to debug by looking at requests on my server to see if there are any clues, to no avail. The only clue seems to be that in my repositories page, I see the instance listed but the row is highlighted red (which I assume means there's an issue with the connection). The last accessed date is also empty. The call to the /repos-v3 endpoint from App Store Connect seems to indicate there's an authentication issue: { "primary_repos" : [ { "repo" : { "id" : "xxxxxxxxxxx", "http_clone_url" : "xxxxxxxxxxx", "owner_name" : "xxxxxxxxxxx", "repo_name" : "xxxxxxxxxxx-ios", "repo_id" : "7", "provider" : "gitlab-hosted", "ssh_clone_url" : "ssh://xxxxxxxxxxx", "scp_clone_url" : "git@xxxxxxxxxxx", "default_branch" : "master" }, "authorization_state" : "unauthorized" } ], "additional_repos" : [ ], "unauthorized_repos" : [ ], "revoked_repos" : [ ] } On my end, when I try to add the repository to Xcode Cloud, I see a few requests to my GitLab instance, all of which succeed with 200: {"time":"2025-03-11T21:10:26.217Z","severity":"INFO","duration_s":0.05674,"db_duration_s":0.00567,"view_duration_s":0.05107,"status":200,"method":"GET","path":"/api/v4/user",.... {"time":"2025-03-11T21:10:26.797Z","severity":"INFO","duration_s":0.16682,"db_duration_s":0.02024,"view_duration_s":0.14658,"status":200,"method":"GET","path":"/api/v4/projects/xxxxxx%2Fxxxxxx-ios",.... {"time":"2025-03-11T21:10:28.298Z","severity":"INFO","duration_s":0.06617,"db_duration_s":0.00835,"view_duration_s":0.05782,"status":200,"method":"GET","path":"/api/v4/user",.... {"time":"2025-03-11T21:10:28.867Z","severity":"INFO","duration_s":0.21071,"db_duration_s":0.03075,"view_duration_s":0.17996,"status":200,"method":"GET","path":"/api/v4/projects/xxxxxx%2Fxxxxxx-ios",.... {"time":"2025-03-11T21:10:30.621Z","severity":"INFO","duration_s":0.15613,"db_duration_s":0.01842,"view_duration_s":0.13771,"status":200,"method":"GET","path":"/api/v4/projects/7",.... {"time":"2025-03-11T21:10:31.239Z","severity":"INFO","duration_s":0.1672,"db_duration_s":0.01828,"view_duration_s":0.14892,"status":200,"method":"GET","path":"/api/v4/projects/7",..... At this point I'm sure this is some sort of a bug with Xcode Cloud since the requests do succeed but Xcode Cloud is unable to process the responses and identify the correct branches and tags, as well as set the web hook for the repo.
1
0
30k
Mar ’25
can't get Xcode not to build x86_64 for Swift Packages
I'm trying to improve my build time on macOS by not building for x86_64. I've got the following settings: This gets Xcode not to build x86_64 for my app, but not all the package dependencies. I've updated most of the packages to swift-tools-version: 6.0 but FlatBuffers is still on 5.8 and .macOS(.v10_14). GPT claims: If your deployment target is set to macOS 10.15 or earlier, Xcode may force x86_64 support for compatibility reasons. But Xcode is building x86_64 for ALL my packages, even the ones that don't depend on FlatBuffers. When I open a package in Xcode that depends on FlatBuffers, then it builds arm only, so that may be a red herring. Not sure what else to try.
1
0
332
Mar ’25
FamilyControls Framework info.plist missing
We are trying to create a screentime app using the Family Controls as well as Device activity frameworks. The build succeeds but while pushing to an iphone we are getting an info.plist file for deviceactivity.framework could not be found error. For reference when using the Screentime API a physical device must be used not a simulator. When we remove the device activity framework this error also occurs for the family controls framework. We have added the Family Controls(development) Capability and applied for the distribution capability. We have redownloaded xcode multiple times on the main device, deleted derived data, and redownloaded all of the iphone SDKs and the issue still persists.
0
0
266
Mar ’25
Errors after importing plugins on other machines via source control
We are trying to setup Apple Unity Plugins, in out project we have a handful of developers who contribute to the project via git. When building and importing plugins via tarball (as instructed in the Github repo) the package clearly points to local path, so once pushed all members encounter the error: An error occurred while resolving packages: Project has invalid dependencies: com.apple.unityplugin.accessibility: Tarball package [com.apple.unityplugin.accessibility] cannot be found at path ..... When trying to actually move content to the package folder (same way as any other unity plugins is setup) and add it as "embedded", it works fine on local machine, but team members will get a few of errors: [Apple Unity Plug-ins] No Apple native plug-in libraries found. DLLNotFoundException: AppleCoreNativeMac assembly ... No Apple Native plug-in libraries found. Moreover AppleCoreNativeMac.bundle is flag as not verified and deleted by macOS. What is the right way to setup unity plugins in a project used by multiple members via sourcetree ?
2
0
240
Mar ’25
TestFlight app crashes on launch when minimum supported iOS version is set to iOS 14
Hi All, I have an App on AppStore, recently the minimum supported version of the app was changed from iOS 12 to iOS 14. Post that the TestFlight builds are crashing on launch. If we revert the minimum supported iOS version to 12, the crash no longer happens. This project is using cocoapods, and from the crash logs it seems the issue with with PLCrashReporter framework. "EXC_CRASH" Termination reason: DYLD 9 weak-def symbol not found '__ZN7plcrash3PL_5async15dwarf_cfa_stateljiE10push_stateEv'. This issue is happening only on TestFlight builds where the minimum supported version is 14.0 Any pointer to a solution is welcome.
1
0
396
Mar ’25
Fed up with forum "Unauthorized" messages.
I'm fed up with this. I write a detailed message and press Submit, and I get that. I press back, and my composition is gone. I think it happens most often when I've logged in only recently, i.e. I've read a few posts, decide to reply to one and log in. At that point, if I close everything and start again and find the thread I want to reply to then it works. But if I don't do that then I run the risk of being told I'm "unauthorized" and losing whatever I've written. This isn't rocket science! Why do we put up with it?
3
0
447
Mar ’25
xcode15.1/15.2 debug does not show the value but only the address of its pointer
xcode15.1 debug does not show the value on the real machine but only the address of the pointer, but on the emulator it shows the normal value. But in the emulator it shows the normal value. xcode15.2 debug doesn't show the value but only the address of the pointer in both the real machine and the emulator. In Xcode14, the value is displayed normally in both the real machine and the emulator. What do I need to do to get it back to the way it was in Xcode14?
2
1
473
Mar ’25
Bluetooth issues - iOS 18.4 beta and before
Bluetooth connection is very buggy since updating to iOS 18.4. Beta X (with all betas) Airpods Pro 2 most of the time don't connect directly with my Iphone 15 Max. I have to disable bluetooth and then the connection works find. This issue ist not only with my Airpods, but also with the car, ... Very annoyinig. I reset the network settings. But this didn't help. Any suggestion how to fix this? I hear from quite a few people that they have bluetooth issues with iOS 18.X. Hope Apple fixes this soon.
0
1
512
Mar ’25
No access to apple developer account
I have enrolled for being a developer 10.03. I have received an order acknowledgment email on 10th of March but there have been no updates since then. I am still seeing 'complete your purchase' in the main page. What should I do to get through? 
I would greatly appreciate it if could help me solve this problem as soon as possible. Thank you so much.
0
0
125
Mar ’25
Flutter App not Building for iOS
Hey, Since I set up push notifications for my Flutter app following this tutorial https://documentation.onesignal.com/docs/flutter-sdk-setup, my Flutter app no ​​longer builds for iOS in the CD pipeline. I get the following error: [17:24:47]: ▸ ProcessException: Process exited abnormally with exit code -6: [17:24:47]: ▸ Command line invocation: [17:24:47]: ▸ /Applications/Xcode_15.4.app/Contents/Developer/usr/bin/xcodebuild -list [17:24:47]: ▸ User defaults from command line: [17:24:47]: ▸ IDEPackageSupportUseBuiltinSCM = YES [17:24:47]: ▸ 2025-03-10 17:24:46.855 xcodebuild[13337:34491] [MT] DVTAssertions: ASSERTION FAILURE in DevToolsCore/Xcode3Core/LegacyProjects/Frameworks/DevToolsCore/DevToolsCore/ProjectModel/DataModel/References/SynchronizedGroups/PBXFileSystemSynchronizedAbstractGroup.m:28 [17:24:47]: ▸ Details: Assertion failed: IDEFileSystemSynchronizedGroupsAreEnabled() [17:24:47]: ▸ Object: <PBXFileSystemSynchronizedRootGroup> [17:24:47]: ▸ Method: +allocWithZone: [17:24:47]: ▸ Thread: <_NSMainThread: 0x60000026c200>{number = 1, name = main} [17:24:47]: ▸ Hints: [17:24:47]: ▸ Backtrace: [17:24:47]: ▸ 0 -[DVTAssertionHandler handleFailureInMethod:object:fileName:lineNumber:assertionSignature:messageFormat:arguments:] (in DVTFoundation) [17:24:47]: ▸ 1 _DVTAssertionHandler (in DVTFoundation) [17:24:47]: ▸ 2 _DVTAssertionFailureHandler (in DVTFoundation) [17:24:47]: ▸ 3 _DVTAssertionWarningHandler (in DVTFoundation) My pipeline looks like this: name: iOS Build and Deploy to App Store with Custom Version on: workflow_dispatch: inputs: version: description: 'Version number' required: true default: '1.0.0' env: FLUTTER_CHANNEL: "stable" RUBY_VERSION: "3.2.2" jobs: build_ios: name: Build iOS runs-on: macos-latest timeout-minutes: 20 steps: - name: Checkout uses: actions/checkout@v4 - name: Set up Ruby uses: ruby/setup-ruby@v1 with: ruby-version: ${{ env.RUBY_VERSION }} bundler-cache: true working-directory: 'daytistics/ios' - name: Clean up vendor working-directory: 'daytistics/ios' run: rm -rf vendor - name: Install Bundler Gems working-directory: 'daytistics/ios' run: bundle install - name: Run Flutter tasks and get pub packages uses: subosito/flutter-action@v2.16.0 with: flutter-version-file: 'daytistics/pubspec.yaml' channel: ${{ env.FLUTTER_CHANNEL }} cache: true - name: Get Flutter Packages working-directory: ./daytistics run: flutter pub get - name: Install Bundler Gems working-directory: 'daytistics/ios' run: | bundle install bundle exec pod repo update # Add this line # Remove the "Reinstall CocoaPods" step entirely - name: Pod Install working-directory: 'daytistics/ios' run: bundle exec pod install - name: Clean Flutter build working-directory: ./daytistics run: flutter clean - name: Create .env file working-directory: ./daytistics run: touch .env - uses: maierj/fastlane-action@v3.1.0 with: lane: 'release_app_store' subdirectory: daytistics/ios options: '{ "version_number": "${{ github.event.inputs.version }}", "env_vars": ["SUPABASE_URL", "SUPABASE_ANON_KEY", "POSTHOG_API_KEY", "SUPABASE_AUTH_EXTERNAL_GOOGLE_CLIENT_ID", "SENTRY_DSN"] }' env: ASC_KEY_ID: ${{ secrets.ASC_KEY_ID }} ASC_ISSUER_ID: ${{ secrets.ASC_ISSUER_ID }} ASC_KEY_P8_BASE64: ${{ secrets.ASC_KEY_P8_BASE64 }} MATCH_PASSWORD: ${{ secrets.MATCH_PASSWORD }} MATCH_GIT_BASIC_AUTHORIZATION: ${{ secrets.MATCH_GIT_BASIC_AUTHORIZATION }} APP_BUNDLE_ID: ${{ secrets.APP_BUNDLE_ID }} GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} SUPABASE_URL: ${{ secrets.SUPABASE_URL }} SUPABASE_ANON_KEY: ${{ secrets.SUPABASE_ANON_KEY }} POSTHOG_API_KEY: ${{ secrets.POSTHOG_API_KEY }} SUPABASE_AUTH_EXTERNAL_GOOGLE_CLIENT_ID: ${{ secrets.SUPABASE_AUTH_EXTERNAL_GOOGLE_CLIENT_ID }} SENTRY_DSN: ${{ secrets.SENTRY_DSN }} Everything works as expected in the simulator. However, I think that the problem isn't related to the pipeline. Instead I think it is related to the "Signing Capabilities" in X-Code: https://i.sstatic.net/E0tSetZP.png https://i.sstatic.net/oC1xG0A4.png Thanks for your help!
1
0
650
Mar ’25
UI Testing Issues
Hi everyone, I've been working on an iOS app for about a year and a half. That application comes with unit and UI automated testings. Recently I started the development of the tvOS application so I added a new target and used the same bundle id as I want to eventually share purchases. What I need I'm working on an application that uses VLC (Need to play media more exotic than MP4) through these two pods pod 'MobileVLCKit', '3.6.0' (Only for iOS) pod 'TVVLCKit', '3.6.0' (Only for tvOS) What works Compilation works fine for both targets Unit tests work fine for both targets UI tests work fine ONLY for the original iOS target What doesn't work and how it fails When I launch the UI tests for the tvOS target, the compilation succeeds, but I get an error when calling app.launch() from my XCTestCase. Failed to get launch progress for <XCUIApplicationImpl: 0x600000c61e90 abergia.com.iptv at ...AppPath...>: App installation failed: Unable to Install “...AppName...”. This app is not made for this device. This app was not built to support this device family; app is compatible with ( 1, 2 ) but this device supports ( 3 ). (Underlying Error: Unable to Install “...AppName...”. This app is not made for this device. This app was not built to support this device family; app is compatible with ( 1, 2 ) but this device supports ( 3 ). What I tried Single target - Both Pods It looks like I can 'cheat' a little the system and make the Xcode target compatible with both iOS and tvO, but when declaring both pods inside the same CocoaPod target, the installation fails as one of the library is not compatible. Use a newer version of VLC (4.0.0) Works BUT that version is way too unstable, I will eventually use it again once they fix all the issues. Different Bundle ID Changing the bundle id of the tvOS application resolves the issue BUT I really want to use the same bundle id to share the purchases. Not UI testing the tvOS version It's an option I'm starting to contemplate out of frustration but I'm sure that we have people here who can help me!
1
0
322
Mar ’25
Reproducible Builds on iOS
Dear Apple Developer Forum! I'm in need of help regarding an issue that has to do with binaries. I'm building an iOS App that needs a fingerprint of its binaries, exclusively based on the source code written. A "reproducible" build, meaning that when I compile it on my machine and run checksum on it, the output (hash) will be the same, as if another device clones the project, compiles and checksums the values. The App depends on swift packages which depends on Swift Packages, which I've managed to compile to .o files, convert to .a files (static frameworks) and create xcframeworks, which the App depends on. They work great, once compiled, their checksum value does not change when App is compiled (unless source code of them is changed of course), but the Apps executable (checksummed inside the IPA) changes every time it's compiled. I'm guessing that perhaps the Xcode compiler injects a timestamp or other unique identifier in the binaries? Is there any way to have "reproducible" builds on iOS (Swift Xcode)? All input is greatly appreciated, Thank you very much, Kind regards Johan.
10
0
1k
Mar ’25
xattr -c not removing com.apple.FinderInfo attribute from Xcode files
Hi all, reposting this from here: https://unix.stackexchange.com/questions/789849/xattr-c-not-removing-com-apple-finderinfo-attribute I came to this problem because my Xcode project was failing to build due to the error "resource fork, Finder information, or similar detritus not allowed" (was trying the solutions on this post). Basically, running xattr -cr . in the terminal on my project directory removes all extended attributes except com.apple.FinderInfo, which stays on all .xcodeproj and .xcworkspace files. I've tried everything under the sun, from sudo to xattr -d to dot_clean to tar to rsync and nothing works. Is this just an immortal attribute that can never be removed? I'm truly at a loss here, this is for my senior thesis project.
5
0
662
Mar ’25
Warning: Error creating LLDB target at path. the specified architecture 'arm64-*-*' is not compatible with 'x86_64-apple-ios13.2.0-simulator'
Every time my app runs in the simulator I see this error: Warning: Error creating LLDB target at path '/Users/aaronsmith/Library/Developer/Xcode/DerivedData/Babylist-ahvzjxxrpawwqhecszqeyvjstfca/Build/Products/Debug-iphonesimulator/Babylist.app'- using an empty LLDB target which can cause slow memory reads from remote devices: the specified architecture 'arm64--' is not compatible with 'x86_64-apple-ios13.2.0-simulator' in '/Users/aaronsmith/Library/Developer/Xcode/DerivedData/Babylist-ahvzjxxrpawwqhecszqeyvjstfca/Build/Products/Debug-iphonesimulator/Babylist.app/Babylist' What is this? I'm on an M1, no build issues. It makes me think the simulator is running under rosetta with x68_64. But I didn't choose to do that. Mac OS Ventura. Xcode 14 RC.
5
4
6.3k
Mar ’25
Unable to see source editor extension commands in Xcode 16
I am trying to create a source editor extension in Xcode 16, I just created a blank macOS project and added an extension target. I also changed "XcodeKit.framework" to Embed and sign, but when I run the extension on my Mac, I can't see the command under "Editor" menu. I even tried to clone a sample extension from online and run it, even in this project I'm unable to see the commands under "Editor" menu. Has anyone faced this issue?
4
1
336
Mar ’25
Error Missing required module 'RxCocoaRuntime' in xcframeworks
Hi. I have a xcframework that has a dependency on 'RxSwift' and 'RxCocoa'. I deployed it using SPM by embedding it in a Swift Package. However when I import swift package into another project, I keep getting the following error: "Missing required module 'RxCocoaRuntime" How can I fix this? Below are the steps to reproduce the error. Steps Create Xcode proejct, make a dependency on 'RxSwift' and 'RxCocoa' (no matter doing it through tuist or cocoapods) Create XCFramework from that proejct. (I used commands below) xcodebuild archive \ -workspace SimpleFramework.xcworkspace \ -scheme "SimpleFramework" \ -destination "generic/platform=iOS" \ -archivePath "./SimpleFramework-iphoneos.xcarchive" \ -sdk iphoneos \ SKIP_INSTALL=NO \ BUILD_LIBRARY_FOR_DISTRIBUTION=YES xcodebuild archive \ -workspace SimpleFramework.xcworkspace \ -scheme "SimpleFramework" \ -archivePath "./SimpleFramework-iphonesimulator.xcarchive" \ -sdk "iphonesimulator" \ SKIP_INSTALL=NO \ BUILD_LIBRARY_FOR_DISTRIBUTION=YES xcodebuild -create-xcframework \ -framework "./SimpleFramework-iphoneos.xcarchive/Products/Library/Frameworks/SimpleFramework.framework" \ -framework "./SimpleFramework-iphonesimulator.xcarchive/Products/Library/Frameworks/SimpleFramework.framework" \ -output "./SimpleFramework.xcframework" Embed in Swift Package, and deploy. // swift-tools-version: 6.0 // The swift-tools-version declares the minimum version of Swift required to build this package. import PackageDescription let package = Package( name: "SimplePackage", platforms: [.iOS(.v16)], products: [ .library( name: "SimplePackage", targets: ["SimplePackage"]), ], dependencies: [ .package(url: "https://github.com/ReactiveX/RxSwift", from: "6.8.0") ], targets: [ .binaryTarget( name: "SimpleFramework", path: "Sources/SimpleFramework.xcframework" ), .target( name: "SimplePackage", dependencies: [ "SimpleFramework", "RxSwift", .product(name: "RxCocoa", package: "RxSwift") ] ) ] ) Download Swift Package in another project and import module. I resolved this by removing dependencies from the Swift Package, downloading package in another project, and fetching dependencies by cocoapods. Thist works, but I don't want to use another dependency manager while using SPM. Development Environment CPU : Apple M4 Max MacOS : Sequoia 15.3 Xcode : 16.2
0
0
282
Mar ’25
Enrollment Delay After Completing the Purchase
I recently purchased an Apple Developer Account on March 01, 2025. Upon completing the purchase, I received a confirmation message stating that my account would be activated within 48 hours. However, it has now been more than ten days, and my account still remains inactive. I didn't recieve any further email regarding apple developer account enrollment. Two days ago, I sent email and discuss my issue but still there is no response from apple team what should I do?
0
0
157
Mar ’25