Xcode 11 Beta 3 image released

We have released an Xcode 11 Beta 3 image today. You can select the image by adding the following to a job in config.yml :

macos:
  xcode: 11.0.0

These are the changes in this image compared to Xcode 11.0 Beta 2:

  • Xcode is now version 11.0 Beta 3 Build 11M362v
  • Since this is a beta image, we have a reduced set of simulators, all running iOS 13. We will add more simulators to the final image.
  • Fixed: The Java 8 JDK is correctly installed, along with javac.
  • Updates:
    • cocoapods: 1.7.2 => 1.7.3
    • node: 12.4.0 => 12.5.0
    • yarn: 1.17.0 => 1.16.0

The full manifest of the installed software and SDKs is available here.

Known issues

  • There is an issue where a dialog appears for the first 30 seconds after the image boots reporting that the OS did not shut down cleanly on the last boot. This might impact UI tests. We pre-boot VMs so that builds can start as quickly as possible, so in many cases our VMs have been booted more than 30 seconds prior before to build running, which will reduce the rate of occurance of this bug.

Upcoming deprecations / changes

4 Likes

I’m currently distributing Xcode 11 Beta 5, I hope to get it fully released today.

1 Like

I’ve been trying tirelessly to have the java home and path set properly for a mac os container…
if we are using version 11.0.0 should we still have to set them?

i’ve tried tons of different ways to set the paths and java --version doesn’t work

Hi John,

Can you describe the problem that you are having please?

bash-3.2$ cat >> HelloWorld.java
public class HelloWorld {

    public static void main(String[] args) {
        // Prints "Hello, World" to the terminal window.
        System.out.println("Hello, World");
    }

}
bash-3.2$ javac HelloWorld.java
bash-3.2$ java HelloWorld
Hello, World
bash-3.2$ java -version
openjdk version "1.8.0_222"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_222-b10)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.222-b10, mixed mode)
bash-3.2$ javac -version
javac 1.8.0_222

I ran this in an SSH build, and it looks like Java is behaving as expected for me.

Thanks for the fast reply marc here is my sample config where a java —version does not work

Here is my sample config.yml (i’ve renamed app to XXXApp for privacy) where java version does not work for me


# Short-hand

defaults: &defaults

macos:

xcode: "11.0.0"

working_directory: ~/react-native

# Jobs

jobs:

build-test:

<<: *defaults

steps:

- run: ls -R /Library/Java/

- run:

name: this is the jvm of the container

command: /usr/libexec/java_home

- run: echo $JAVA_HOME

- run: echo $PATH

- run: java —version

- run:

name: js > java

command: |

echo 'export JAVA_HOME=$(/usr/libexec/java_home)' >> $BASH_ENV

echo 'export PATH=${JAVA_HOME}/bin:$PATH' >> $BASH_ENV

source $BASH_ENV

- run: yarn global add appium-doctor

- run: appium-doctor

- checkout

- attach_workspace:

at: ~/react-native

- restore_cache:

name: Restore Yarn Package Cache

keys:

- yarn-packages-{{ checksum "yarn.lock" }}

- run:

name: Install Dependencies

command: yarn

- run:

name: Install Carthage

command: |

brew update

brew install carthage

- save_cache:

name: Save Yarn Package Cache

key: yarn-packages-{{ checksum "yarn.lock" }}

paths:

- ~/.cache/yarn

- run:

name: Install Cocoa Pods

command: pod install

working_directory: ios

- run:

name: Xcodebuild workspace with specified derived data directory

command: xcodebuild -workspace ios/XXXApp.xcworkspace -scheme XXXApp -UseModernBuildSystem=NO -configuration Debug -sdk iphonesimulator -derivedDataPath derivedData

- run:

name: e2e smoke tests

command: yarn e2e-circleciTests:ios

# Workflows

workflows:

version: 2

e2e_smokeTests:

jobs:

- build-test

And for a little more context forgot to add— i am trying to use circleci job to run automated tests on a react-native project utilizing appium.io and webdriver.io on an ios xcode app

Hi John.

Which step is failing? What is the output that you are seeing, and what do you expect to see?

I copied your config and when I ran it, there was an em-dash in the command java –version rather than a hyphen java -version. Could your problem be that simple?

Marc

Good catch Marc, it was just the em-dash, appears working now in macos 11. Interesting though echoing $JAVA_HOME didnt return anything. Do you even need to set the java environment or does it default properly for 11.x.x?

hi John.

We install java through homebrew using brew cask install adoptopenjdk8. We don’t do any more tweaking than that. If there are issues with the install, you might open a ticket with the adoptopenjdk8 project.

Thanks,

Marc

Thanks marc, we can close this ticket. I opened up a support ticket the other day in regards to all of sudden the xcode cli command to build our iOS app is timing out hoping to get some traction on, it has caused a lot of issues for us where the container just went on and ran for 5 hours every time