Severe performance problems with Xcode 15

Hello,
At the time of image building, we always include the latest stable software released. At the time of doing the re-release the latest was not fastlane 2.217.0. That being said, the latest 15.1.0 Beta 3 has that version of Fastlane.

Thank you,
Luis

Hello @luis_cci ,

Xcode 15.1 RC 1 has just been released.

When is a reasonable timeline by then we can expect CircleCI to use this image?

We are currently blocked on making AppStore releases on the CI using Xcode 15, hence checking-in.

Thank you.

2 Likes

Same for us here - I’d always had a backup plan of reverting back to the 15.0 image when I cut a release branch so we could start preparing for our final release of the year but now the 15.1 final release is out it would be good if we could avoid this entirely and just ship using that, so any ETA on an updated image would be helpful.

Is there an eta on 15.1 or preferably 15.2? We still haven’t been able to update to any of the Xcode 15 containers due to the performance regressions.

We’ve been using 15.1 and so far the performance is about 20% - 30% worse which is still acceptable for us. We also saved a bunch of minutes by removing storyboards and xibs. The compilation is way slower for these kind of objects.

15.1 has been available for a few weeks now I think.

completely missed that, thanks!

I was just curious if any of you seeing longer test times were running UITests. I’ve noticed that with Xcode 15.1/15.2/15.3 our app often fails to send idle notifications after opening a textfield and attempting to type into it. This results in a 60s timeout before proceeding with the test. Is anyone else seeing similar behavior? It’s worth noting the test runs without issue locally.

    t =     9.98s     Wait for com.test.app to idle
    t =    70.00s         App event loop idle notification not received, will attempt to continue.
    t =    70.00s Type 'Typing' into "TypingTyping" TextField
    t =    70.00s     Wait for com.test.app to idle
    t =   130.03s         App event loop idle notification not received, will attempt to continue.

I’m having this exact same problem (on Xcode 15.1 and 15.2). Runs fine locally, but on CI it hangs for 60s on every text field.
I tried disabling animations but that didn’t seem to make any difference.

1 Like

Hello everyone!

I conducted an investigation into the hanging UI tests issue, and determined that the 60 second delay is due to a missing permission required by the iOS Simulator bundle on Sonoma based Xcode images (15.1, 15.2, 15.3). This is causing macOS to pop up a GUI permissions prompt requesting access to the microphone.

A fix to ensure this permission is present automatically on all Sonoma images is in progress, but in the mean time you can use the macOS orb to add the permission manually.

- macos/add-permission:
          bundle-id: "com.apple.CoreSimulator.SimulatorTrampoline"
          permission-type: "kTCCServiceMicrophone"

The orb will execute a replace into access ... query, so it won’t error out after we’ve deployed the fix that is currently in the works.

1 Like

Hello,

To follow on my last post, I wanted to let everyone know that all Xcode images running macOS 14 or greater will now always include the kTCCServiceMicrophone permission, so the issue with the iOS simulator hanging when opening the virtual keyboard should no longer happen. Please let us know if you run into any other hangs that might be related to simulator permissions.

1 Like

The issues we were having with media playback seem to have returned over the weekend although our config remained the same. We are on MacOS / M1 Medium resources and whenever there is a test with audio, it hangs and fails.

Hi,

Sorry for missing this earlier. There was a short conversation over in another discussion thread. TLDR; identified the issue and deployed a fix. Please let us know if you run into any other issues related to media playback or have any additional questions.

1 Like