Xcode 14.3 Beta 3 Released [macOS Ventura]

The Xcode 14.3 Beta 3 image has been released on Gen2 Intel resource class and can be selected as follows:

macos:
    xcode: 14.3.0

:rotating_light: This image includes some breaking changes :rotating_light:

This image is based on macOS Ventura (13.2), therefore there may be breaking changes when switching from a macOS Monterey (12) image. Please ensure your Xcode projects are updated locally before updating the executor on CircleCI.

Additionally, this image is only available on Gen2 Intel resource classes. Please see the following for information regarding deprecation of medium and large Gen1 resource classes:

If you run into any unexpected behaviour, or any other problems, upgrading your pipelines to this image, please let us know in this thread, or by reaching out to support.


:information_source: VM Image Info :information_source:

Xcode 14.3 Build version 14E5215g is installed at /Applications/Xcode-14.3.app

The full manifest of installed software can be found here

Hi!

Thank you for releasing the beta version quickly.

I have a question regarding the NodeJS and npm versions. In the description of the installed software for this version, the default NodeJS version is v18.15.0. According to the official site, this is associated with npm 9.5.0.

However, when using this image and running npm i, I encountered an error. Based on the error message, the installed NodeJS version is v18.14.2. Could you please verify this?

npm i
npm ERR! code EBADENGINE
npm ERR! engine Unsupported engine
npm ERR! engine Not compatible with your version of node/npm: ********-ios@1.0.0
npm ERR! notsup Not compatible with your version of node/npm: ********-ios@1.0.0
npm ERR! notsup Required: {"node":"v18.15.0","npm":"9.5.0"}
npm ERR! notsup Actual:   {"npm":"9.5.0","node":"v18.14.2"}

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/distiller/.npm/_logs/2023-03-22T08_40_35_057Z-debug-0.log
make: *** [setup-npm] Error 1

Exited with code exit status 2
CircleCI received exit code 2

I’ve just given this a try and the good news is that our build pipeline passed first time (I’ve been using the betas for a few weeks anyway).

The bad news is that there seems to be a notable performance regression with this new image - our pipeline normally takes just under 12m to run but the build on the Ventura/14.3 image took 21m - that’s 1.75x as long.

  • Warmup source cache: downloads our cached source, does a git update and updates the cache if necessary - before: 30s, after: 45s.
  • build/test job - one of numerous fan-out jobs that builds and tests our feature modules using Xcode’s build-for-testing and test-without-building tasks - before: around 7m 30s, after: 10m 34s.
  • Create coverage reports: process the Xcode coverage data and uploads to Coveralls - before: around 1m 30s, after: 2m 13s.

Its hard to be sure if this is due to macOS or the latest Xcode.