I have a Swift package with a test suite that contains some tests implemented with Swift Testing. Locally, they run quickly, but when I run them on Semaphore CI (https://semaphore.io), the first Swift Testing test to execute incurs a performance penalty.
I'm running the tests with xcodebuild on iOS Simulator:
xcodebuild test \
-scheme "Scheme" \
-workspace Workspace.xcworkspace \
-destination "platform=iOS Simulator,name=iPhone 16,OS=18.2"
The scheme is configured to use a test plan that has parallelization disabled.
Here's an excerpt from the output showing what I'm seeing:
Test Suite 'All tests' started at 2025-04-03 07:47:37.328.
◇ Test run started.
↳ Testing Library Version: 102 (arm64-apple-ios13.0-simulator)
◇ Iteration 1 started.
◇ Suite <redacted> started.
◇ Test foo() started.
✔ Test foo() passed after 23.063 seconds.
When foo() is not the first test it runs in under 100 ms.
The reason that I have parallelization disabled is that I was initially seeing all of the tests in this suite incur a performance hit. But now it's clear that there must be some startup cost.
Things I'm wondering:
What is this startup penalty?
Why don't I encounter it locally?
Why is it attributed to the first test? (this seems like a bug)
My wild guesses around 1 so far have been…
maybe some simulator clone is booting. I've tried to rule that out by disabling parallelization, but maybe there's still something there.
maybe swift testing is getting loaded lazily and there's some kind of dynamic linking cost
Thoughts on 2…
maybe there's some one-time penalty when using swift testing that I've already incurred locally but that has not yet been incurred in the CI image
Guidance welcome!
x-posted:
FB17102970 (Unexpected performance penalty attributed to first Swift Testing test)
https://forums.swift.org/t/first-swifttesting-test-always-slow/79066
General
RSS for tagDive into the vast array of tools and services available to developers.
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
I'm experiencing an inconsistent behavior with the App Tracking Transparency (ATT) prompt in my Cordova iOS app using the admob-plus-cordova and cordova-plugin-consent plugins.
Environment:
Cordova iOS app
Plugins: admob-plus-cordova, cordova-plugin-consent
iOS Simulator: 16.0
Physical device: iphone 12 17.5.1
Xcode version: 16.2
Issue:
The ATT permission prompt appears correctly in the iOS Simulator but fails to show on physical devices. I've verified that:
Info.plist includes NSUserTrackingUsageDescription
The ATT request is triggered before initializing AdMob
The device is running iOS 14.5 or later
Expected behavior:
ATT prompt should appear on first launch on physical devices (as it does in the simulator)
Actual behavior:
ATT prompt appears correctly in simulator [attach your screenshot]
ATT prompt never appears on physical device
Troubleshooting steps tried:
Verified app hasn't previously requested ATT permission
Confirmed tracking is enabled in device Settings -> Privacy -> Tracking
Verified implementation order (ATT request before AdMob initialization)
Any insights on why this might be happening or additional debugging steps would be greatly appreciated.
Topic:
Developer Tools & Services
SubTopic:
General
Tags:
iOS
Simulator
Privacy
App Tracking Transparency
When building binutils (2.4.4) on Mac OS Sequoia (15.4), a compilation error occurs.
In file included from ../../zlib/gzguts.h:21:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/stdio.h:61:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/_stdio.h:318:7: error: expected identifier or '('
318:7: error: expected identifier or '('
318 | FILE | FILE fdofdopen(int, cpen(int, const char onst char ) __DARWI) __DARWIN_ALIN_ALIAS_STARTIAS_STARTING(__MAC_NG(__MAC_10_6, __I10_6, __IPHONE_2_0PHONE_2_0, __DARWI, __DARWIN_ALN_ALIAS(fIAS(fdopen));
dopen));
| ^
| ^
../../zlib/zutil.h:147:33: note: expanded from macro 'fdopen'
147 | # ../../zlib/zutil.h:147:33: note: expanded from macro 'fdopen'
147 | # define define fdopefdopen(fd,moden(fd,mode) NULL /) NULL / No f No fdopen() *dopen() */
| ^
/
|
error.txt
In 1311 Line.
Topic:
Developer Tools & Services
SubTopic:
General
Hi,
This can't be right. Is there really no replacement for Quartz Debug?!?
As the sole developer on a project who has an Intel Mac and Quartz Debug, I am basically a god now.
Everyone else has Apple Silicon and... I think they're randomly guessing at this point.
Because I have entire teams sending me Intel Mac builds of stuff just so I can test it in QD.
This is THE TOOL we used at NewTek to find performance issues, and THE TOOL I used for a dozen companies after that, to help them with similar issues.
If there's no replacement, is there a reason there's no replacement? This feels like a massive step backwards, having to guess at problems like this.
-Chilton
I am using Swift Testing for TDD my project. I have a struct that contains an array of 65536 UInt8's along with other properties. I am testing methods that modify the properties of the struct including the contents of the array.
In just one of my test files, any test fails (there are several in the file), the entire contents of the struct, including the array, are printed to the console. In another test file they are not. I'm don't think there are any differences to the test setup in the two files. Any idea what's going on?
I'm able get the program to skip the dump to the console by copying the properties I want to test to local let constants and testing those.
Thanks
Hi, there's this point at which a beginner needs to beg for help.
Unable to open mach-O at path: /Library/Caches/com.apple.xbs/Binaries/RenderBox/install/Root/System/Library/PrivateFrameworks/RenderBox.framework/default.metallib Error:2
I get this everytime I select a month and year on a custom date picker, I believe because I try to force the ".generateChartData()" for the chart to update.
I guess the problem might be that the ".onAppear" and ".onChange" are conflicting with each other?
}
.onChange(of: showDatePicker) {
viewModel.startDate = selectedDate
viewModel.generateChartData()
}
}
.onAppear {
viewModel.generateChartData()
}
Hello,
I'm encountering an issue when trying to build and launch a Flutter app on a physical iOS device using Android Studio.
Here is the full log:
`Launching lib/main.dart on (iPhone Name) in debug mode...
Automatically signing iOS for device deployment using specified development team in Xcode project: (Project ID)
Running Xcode build...
Xcode build done. 19.7s
Failed to build iOS app
Could not build the precompiled application for the device.
Error (Xcode): Target debug_unpack_ios failed: Exception: Failed to codesign (Project Names)/build/ios/Debug-iphoneos/Flutter.framework/Flutter with identity (identity ID).
Error launching application on (iPhone Name).`
This only happens when using Android Studio.
When I build the same project using Xcode, it runs fine on the same device.
Background:
I accidentally deleted all Apple accounts from Xcode recently.
In Keychain Access, I had three identical certificates; I deleted the older two and kept the newest one.
I suspect this may be related to provisioning or code signing, but I’m not sure how to resolve it within Android Studio.
Any advice or steps to fix this would be greatly appreciated.
I created a new test project in Xcode using the iOS > App template, enabled automatic signing in Signing & Capabilities, and selected my team.
I then tried building and installing the app on a real device, and it worked successfully.
This confirms that there are no issues with code signing or provisioning on the Apple side.
Thanks in advance!
Topic:
Developer Tools & Services
SubTopic:
General
Hello guys,
I have probleme with the lib react tinode on ios , someone can help m on it plz ?
There is an error when building binutils.
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/_stdio.h:318:7: note: to match this '('
/Users/koudah/elf2x68k/build_gcc/src/binutils-2.42/zlib/zutil.h:147:33: note: expanded from macro 'fdopen'
147 | # define fdopen(fd,mode) NULL /* No fdopen() */
| ^
Topic:
Developer Tools & Services
SubTopic:
General
Hello Apple Developer Support,
I am writing to seek assistance with an issue we are experiencing in our SwiftUI application concerning UI test cases.
Our application uses accessibility labels that differ slightly from the display content to enhance VoiceOver support. However, we have encountered a problem where our UI test cases fail when the accessibility label does not match the actual display content.
Currently, we are using accessibility identifiers in our tests, but they only retrieve the accessibility label, leaving us without a method to access the actual display content. This discrepancy is causing our automated tests to fail, as they cannot verify the visual content of the UI elements.
We would greatly appreciate any guidance or solutions you could provide to address this issue. Specifically, we are looking for a way to ensure our UI tests can access both the accessibility label and the actual display content for verification purposes.
For ex:
Problem scenario - setting accessibilityLabel masks access to any displayed content
If an accessibilityLabel is set on a UI element, then it seems to be no-longer possible to check/access the displayed content of that element:
var body: some View {
Text("AAA")
.accessibilityIdentifier("textThing")
.accessibilityLabel("ZZZ") // Different label from the text which is displayed in UI
}
// in test...
func test_ThingExists() {
XCTAssert(app.staticTexts["AAA"].exists) // Fails, cannot find the element
XCTAssertEqual(app.staticTexts["ZZZ"].label, "AAA") // Fails - '.label' is the accessibilityLabel, not the displayed content
XCTAssertEqual(app.staticTexts["ZZZ"].label, "ZZZ") // Passes, but validates the accessibility content, not the displayed content
XCTAssert(app.staticTexts["textThing"].exists) // Passes, but does not check the displayed content
XCTAssertEqual(app.staticTexts["textThing"].label, "AAA") // Fails - '.label' is the accessibilityLabel, not the displayed content
XCTAssertEqual(app.staticTexts["textThing"].label, "ZZZ") // Passes, but validates the accessibility content, not the displayed content
}
element.label still only checks the accessibilityLabel. There is not, it seems, an way back to being able to check the content of the Text element directly.
Thank you for your attention and support. We look forward to your valuable insights.
This morning I installed podman on my new Apple laptop. It can be inited successfully but failed to start.
The error is: Error: Error Domain=VZErrorDomain Code=1 Description="Internal Virtualization error. The virtual machine failed to start." UserInfo={
NSLocalizedFailure = "Internal Virtualization error.";
NSLocalizedFailureReason = "The virtual machine failed to start.";
My new Mac laptop with the latest OS version: 15.3.1 and it is Apple M4 chip.
I verified that my Virtualization.framework is good by ls -l /System/Library/Frameworks/Virtualization.framework also my MacOS support virtualization because sysctl kern.hv_support returns kern.hv_support: 1.
I tried to install it on my old Apple laptop which is intel core, same OS version - everything is good.
How to fix this issue?
辅助功能 | Apple Developer Documentation
In the illustration on this page related to "Prefer system-defined colors," Light is incorrectly translated as "细体". However, in the context of this article, translating it as "浅色" (light color) would be a more appropriate choice.
I'm running the latest iOS 26 beta 5 on my iPad and iPhone. Whenever I run these betas, I always get the message below telling me an update is available (whenever I plug in my devices). I'm assuming this is because the update check is detecting that I have something other than the latest production release. Obviously, it makes no sense to ask me to update to a prod build when I'm running the dev beta. Is there a way to turn this message off? Or maybe Apple could handle this situation better? Or maybe it's just a bug and I'm the only one getting this message?
Topic:
Developer Tools & Services
SubTopic:
General
Hello,
PrivacyInfo.xcprivacy Is primordial and without it the app is rejected from the Store I believe.
All 5 ressources I had found related to it, mention XCODE, or explain how to add the code to langages that I don't use (Switf i think?) etc.
I am building the app thought CI/CD, so prior to building it the app does not have privacy manifest and there is not way to generate it automatically without xcode it seems.
My app is written in Flutter prior to becoming an iOS app.
I am seeking for a method to do that. Thanks.
where can i find the account quota usage for WeatherAPI?
Hi there! I am not a coder, but I built an app in ADALO just for in-house use in my company, PetroImaging. The app looked the way I wanted it to in the preview mode in ADALO, but when my app was approved and ready for download in the app store, a lot of content was missing. Many buttons that linked to screens were just gone - even though they were there in the preview and the buttons are formatted correctly in adalo. How can I get my content that I need back on my app so the employees can being using it?
Topic:
Developer Tools & Services
SubTopic:
General
How to replicate:
Design a icon in icon composer
Save it and put the .icon file in your project, then in your targets put the name of the .icon file in there. Either clean build folder or restart IDE
One Error:
unable to open dependencies file (/Users/user/Library/Developer/Xcode/DerivedData/project-fqrfzzkwgrutdabmcqjeupvyetci/Build/Intermediates.noindex/project.build/Debug/project.build/assetcatalog_dependencies_thinned)
And one warning:
Icon export exited with status 255, signal 0
Is this a known issue or a easy fix? Or is it a issue on my end? Thanks
I want to upload my App logo. I am using Expo and I am not sure how to get my logo up? Please help.
Topic:
Developer Tools & Services
SubTopic:
General
I want to test different types of journaling suggestions, like for example photo/video containing ones but as a developer I have no control over what's shown in the Journaling Suggestions sheet. And this makes it really difficult to develop or test any suggestion type other than "reflection". Please let us have a fake suggestions sheet that includes all kinds of suggestion types so we can test. We could toggle it under Developer settings I think.
Topic:
Developer Tools & Services
SubTopic:
General
Hi Apple Engineers and fellow developers,
I'm a student developer working on an educational focus management app that helps users hide distracting apps during study sessions. The app consists of:
macOS app: Simple "Hide apps" button that triggers app hidding sessions
iOS app: Uses Screen Time API to temporarily hide selected apps from home screen
Communication: Bonjour networking between Mac and iPhone for session coordination
The Challenge
My app requires two entitlements that aren't available with Personal Developer Teams:
com.apple.developer.family-controls (for Screen Time API)
com.apple.developer.networking.multicast (for Bonjour device discovery)
Current Error Messages
text
Cannot create a iOS App Development provisioning profile for "focuser.focuser-app".
Personal development teams, including "My Name", do not support the
Family Controls (Development) capability.
Provisioning profile doesn't include the com.apple.developer.family-controls
and com.apple.developer.networking.multicast entitlements.
My Question for Apple Engineers
Is there any legitimate way to test these privacy-sensitive APIs on my own devices for educational/learning purposes without purchasing the $99/year Apple Developer Program membership?
I understand the security reasons behind these restrictions, but as a student just learning iOS development, it creates a significant barrier to experimenting with these technologies.
Topic:
Developer Tools & Services
SubTopic:
General
Tags:
Entitlements
Network
Family Controls
Bonjour