Xcode 12 Beta 6 Released

The Xcode 12 Beta 6 image has just been released and can be selected as follows:

macos:
    xcode: 12.0.0

Please Note This image is still in the process of being deployed and as such you may see some slower Spin Up Environment times over the next few days.


Ruby Changes since Beta 5

As a result of the System Ruby (2.6.3) becoming increasingly incompatible with various gems (especially those which require native extensions) due to the way it is secured and recent changes to clang, we have decided to switch the default Ruby to 2.7 via chruby.

This should allow greater compatibility out of the box with gems moving forward and will resolve most of the issues people have been hitting with Ruby in the recent Xcode 12 releases. For the vast majority of users this switch will be transparent as common gems, such as Fastlane, run without issues on 2.7.

We still provide Ruby 2.5 and 2.6 which you can switch to and the System Ruby can still be switched to via chruby by adding the following to the start of your job:

-run: echo 'chruby system' >> ~/.bash_profile

Xcode 12 Beta Major Updates

As a result of Xcode now being a Universal App, and including the Apple Silicon tooling, the resulting size of Xcode itself has grown, meaning there is around 6GB less free space on the new Xcode 12 images.

We are now shipping Cocoapods 1.10 beta as the default Cocoapods version. Cocoapods 1.9 has some incompatibility issues with Xcode 12, whereas 1.10 has much better Xcode 12 support.


CircleCI Xcode Beta Support Policy

For information on what CircleCI Support can, and can’t, help you with via support tickets, please see the following article: What is CircleCI’s Xcode Beta Image Support Policy?

We would encourage the the use of the beta image announcement threads to discuss any issues you may encounter with Apple’s beta software releases.


Major Software Changes from 11.x series

We will no longer be shipping Python 2 in our images due to it hitting EOL status and causing issues during installation as it is no longer maintained by Homebrew. If you require Python 2, we would suggest moving to a previous Xcode image, or creating your own tap for the Python 2 package.

We have bumped OpenJDK to version 11 (LTS) from OpenJDK 8 due to the latter being deprecated.

macOS version has been bumped up to 10.15.5 from 10.15.4.


Image Info

Xcode 12.0 Build version 12A8189n is installed at /Applications/Xcode-12.beta.6.app

The following runtimes are installed:

  • iOS 13.5
  • iOS 14.0
  • tvOS 13.4
  • tvOS 14.0
  • watchOS 6.2
  • watchOS 7.0

The full manifest of installed software can be found here.