From 374939361f117958639e3a5947bdf5b031a83adb Mon Sep 17 00:00:00 2001 From: Jen Basch Date: Fri, 14 Nov 2025 15:25:17 -0800 Subject: [PATCH] Fix simulator testing --- .github/index.pkl | 5 +++++ .github/workflows/build.yml | 12 ++++++++++++ .github/workflows/main.yml | 12 ++++++++++++ .github/workflows/prb.yml | 12 ++++++++++++ .github/workflows/release-branch.yml | 12 ++++++++++++ .github/workflows/release.yml | 12 ++++++++++++ 6 files changed, 65 insertions(+) diff --git a/.github/index.pkl b/.github/index.pkl index 305c0c0..0af5a20 100644 --- a/.github/index.pkl +++ b/.github/index.pkl @@ -153,6 +153,7 @@ prb { } steps { new Common.Checkout {} + new { run = "brew install gmp libyaml" } new { uses = "ruby/setup-ruby@v1" with { @@ -162,6 +163,10 @@ prb { new { run = "gem install xcpretty" } new { name = "xcodebuild test" + env { + // needed for xcpretty: https://github.com/xcpretty/xcpretty/issues/73 + ["LC_CTYPE"] = "en_US.UTF-8" + } run = #""" xcodebuild -scheme pkl-swift-Package \#(simulator.flags.join(" ")) test \ diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index bf46eee..cf18ac5 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -91,11 +91,14 @@ jobs: DEVELOPER_DIR: /Applications/Xcode_26.1.app steps: - uses: actions/checkout@v5 + - run: brew install gmp libyaml - uses: ruby/setup-ruby@v1 with: ruby-version: '3.4' - run: gem install xcpretty - name: xcodebuild test + env: + LC_CTYPE: en_US.UTF-8 run: |- xcodebuild -scheme pkl-swift-Package -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 17' ONLY_ACTIVE_ARCH=YES CODE_SIGNING_REQUIRED=NO CODE_SIGNING_ALLOWED=YES COMPILER_INDEX_STORE_ENABLE=NO test \ | xcpretty --report junit --output .out/test-results/test-sim-ios-simulator.xml @@ -115,11 +118,14 @@ jobs: DEVELOPER_DIR: /Applications/Xcode_26.1.app steps: - uses: actions/checkout@v5 + - run: brew install gmp libyaml - uses: ruby/setup-ruby@v1 with: ruby-version: '3.4' - run: gem install xcpretty - name: xcodebuild test + env: + LC_CTYPE: en_US.UTF-8 run: |- xcodebuild -scheme pkl-swift-Package -sdk watchsimulator -destination 'platform=watchOS Simulator,name=Apple Watch Series 11 (42mm)' ONLY_ACTIVE_ARCH=YES CODE_SIGNING_REQUIRED=NO CODE_SIGNING_ALLOWED=YES COMPILER_INDEX_STORE_ENABLE=NO test \ | xcpretty --report junit --output .out/test-results/test-sim-watchos-simulator.xml @@ -139,11 +145,14 @@ jobs: DEVELOPER_DIR: /Applications/Xcode_26.1.app steps: - uses: actions/checkout@v5 + - run: brew install gmp libyaml - uses: ruby/setup-ruby@v1 with: ruby-version: '3.4' - run: gem install xcpretty - name: xcodebuild test + env: + LC_CTYPE: en_US.UTF-8 run: |- xcodebuild -scheme pkl-swift-Package -sdk appletvsimulator -destination 'platform=tvOS Simulator,name=Apple TV 4K (3rd generation)' ONLY_ACTIVE_ARCH=YES CODE_SIGNING_REQUIRED=NO CODE_SIGNING_ALLOWED=YES COMPILER_INDEX_STORE_ENABLE=NO test \ | xcpretty --report junit --output .out/test-results/test-sim-tvos-simulator.xml @@ -163,11 +172,14 @@ jobs: DEVELOPER_DIR: /Applications/Xcode_26.1.app steps: - uses: actions/checkout@v5 + - run: brew install gmp libyaml - uses: ruby/setup-ruby@v1 with: ruby-version: '3.4' - run: gem install xcpretty - name: xcodebuild test + env: + LC_CTYPE: en_US.UTF-8 run: |- xcodebuild -scheme pkl-swift-Package -sdk macosx -destination 'platform=macOS,variant=Mac Catalyst,arch=arm64' ONLY_ACTIVE_ARCH=YES CODE_SIGNING_REQUIRED=NO CODE_SIGNING_ALLOWED=NO COMPILER_INDEX_STORE_ENABLE=NO ARCH=arm64 VALID_ARCHS=arm64 SUPPORTS_MACCATALYST=YES TARGETED_DEVICE_FAMILY=2 CODE_SIGN_IDENTITY=- test \ | xcpretty --report junit --output .out/test-results/test-sim-mac-catalyst.xml diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 6cb6997..0f90238 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -90,11 +90,14 @@ jobs: DEVELOPER_DIR: /Applications/Xcode_26.1.app steps: - uses: actions/checkout@v5 + - run: brew install gmp libyaml - uses: ruby/setup-ruby@v1 with: ruby-version: '3.4' - run: gem install xcpretty - name: xcodebuild test + env: + LC_CTYPE: en_US.UTF-8 run: |- xcodebuild -scheme pkl-swift-Package -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 17' ONLY_ACTIVE_ARCH=YES CODE_SIGNING_REQUIRED=NO CODE_SIGNING_ALLOWED=YES COMPILER_INDEX_STORE_ENABLE=NO test \ | xcpretty --report junit --output .out/test-results/test-sim-ios-simulator.xml @@ -114,11 +117,14 @@ jobs: DEVELOPER_DIR: /Applications/Xcode_26.1.app steps: - uses: actions/checkout@v5 + - run: brew install gmp libyaml - uses: ruby/setup-ruby@v1 with: ruby-version: '3.4' - run: gem install xcpretty - name: xcodebuild test + env: + LC_CTYPE: en_US.UTF-8 run: |- xcodebuild -scheme pkl-swift-Package -sdk watchsimulator -destination 'platform=watchOS Simulator,name=Apple Watch Series 11 (42mm)' ONLY_ACTIVE_ARCH=YES CODE_SIGNING_REQUIRED=NO CODE_SIGNING_ALLOWED=YES COMPILER_INDEX_STORE_ENABLE=NO test \ | xcpretty --report junit --output .out/test-results/test-sim-watchos-simulator.xml @@ -138,11 +144,14 @@ jobs: DEVELOPER_DIR: /Applications/Xcode_26.1.app steps: - uses: actions/checkout@v5 + - run: brew install gmp libyaml - uses: ruby/setup-ruby@v1 with: ruby-version: '3.4' - run: gem install xcpretty - name: xcodebuild test + env: + LC_CTYPE: en_US.UTF-8 run: |- xcodebuild -scheme pkl-swift-Package -sdk appletvsimulator -destination 'platform=tvOS Simulator,name=Apple TV 4K (3rd generation)' ONLY_ACTIVE_ARCH=YES CODE_SIGNING_REQUIRED=NO CODE_SIGNING_ALLOWED=YES COMPILER_INDEX_STORE_ENABLE=NO test \ | xcpretty --report junit --output .out/test-results/test-sim-tvos-simulator.xml @@ -162,11 +171,14 @@ jobs: DEVELOPER_DIR: /Applications/Xcode_26.1.app steps: - uses: actions/checkout@v5 + - run: brew install gmp libyaml - uses: ruby/setup-ruby@v1 with: ruby-version: '3.4' - run: gem install xcpretty - name: xcodebuild test + env: + LC_CTYPE: en_US.UTF-8 run: |- xcodebuild -scheme pkl-swift-Package -sdk macosx -destination 'platform=macOS,variant=Mac Catalyst,arch=arm64' ONLY_ACTIVE_ARCH=YES CODE_SIGNING_REQUIRED=NO CODE_SIGNING_ALLOWED=NO COMPILER_INDEX_STORE_ENABLE=NO ARCH=arm64 VALID_ARCHS=arm64 SUPPORTS_MACCATALYST=YES TARGETED_DEVICE_FAMILY=2 CODE_SIGN_IDENTITY=- test \ | xcpretty --report junit --output .out/test-results/test-sim-mac-catalyst.xml diff --git a/.github/workflows/prb.yml b/.github/workflows/prb.yml index 2b8c332..6aad649 100644 --- a/.github/workflows/prb.yml +++ b/.github/workflows/prb.yml @@ -88,11 +88,14 @@ jobs: DEVELOPER_DIR: /Applications/Xcode_26.1.app steps: - uses: actions/checkout@v5 + - run: brew install gmp libyaml - uses: ruby/setup-ruby@v1 with: ruby-version: '3.4' - run: gem install xcpretty - name: xcodebuild test + env: + LC_CTYPE: en_US.UTF-8 run: |- xcodebuild -scheme pkl-swift-Package -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 17' ONLY_ACTIVE_ARCH=YES CODE_SIGNING_REQUIRED=NO CODE_SIGNING_ALLOWED=YES COMPILER_INDEX_STORE_ENABLE=NO test \ | xcpretty --report junit --output .out/test-results/test-sim-ios-simulator.xml @@ -113,11 +116,14 @@ jobs: DEVELOPER_DIR: /Applications/Xcode_26.1.app steps: - uses: actions/checkout@v5 + - run: brew install gmp libyaml - uses: ruby/setup-ruby@v1 with: ruby-version: '3.4' - run: gem install xcpretty - name: xcodebuild test + env: + LC_CTYPE: en_US.UTF-8 run: |- xcodebuild -scheme pkl-swift-Package -sdk watchsimulator -destination 'platform=watchOS Simulator,name=Apple Watch Series 11 (42mm)' ONLY_ACTIVE_ARCH=YES CODE_SIGNING_REQUIRED=NO CODE_SIGNING_ALLOWED=YES COMPILER_INDEX_STORE_ENABLE=NO test \ | xcpretty --report junit --output .out/test-results/test-sim-watchos-simulator.xml @@ -138,11 +144,14 @@ jobs: DEVELOPER_DIR: /Applications/Xcode_26.1.app steps: - uses: actions/checkout@v5 + - run: brew install gmp libyaml - uses: ruby/setup-ruby@v1 with: ruby-version: '3.4' - run: gem install xcpretty - name: xcodebuild test + env: + LC_CTYPE: en_US.UTF-8 run: |- xcodebuild -scheme pkl-swift-Package -sdk appletvsimulator -destination 'platform=tvOS Simulator,name=Apple TV 4K (3rd generation)' ONLY_ACTIVE_ARCH=YES CODE_SIGNING_REQUIRED=NO CODE_SIGNING_ALLOWED=YES COMPILER_INDEX_STORE_ENABLE=NO test \ | xcpretty --report junit --output .out/test-results/test-sim-tvos-simulator.xml @@ -163,11 +172,14 @@ jobs: DEVELOPER_DIR: /Applications/Xcode_26.1.app steps: - uses: actions/checkout@v5 + - run: brew install gmp libyaml - uses: ruby/setup-ruby@v1 with: ruby-version: '3.4' - run: gem install xcpretty - name: xcodebuild test + env: + LC_CTYPE: en_US.UTF-8 run: |- xcodebuild -scheme pkl-swift-Package -sdk macosx -destination 'platform=macOS,variant=Mac Catalyst,arch=arm64' ONLY_ACTIVE_ARCH=YES CODE_SIGNING_REQUIRED=NO CODE_SIGNING_ALLOWED=NO COMPILER_INDEX_STORE_ENABLE=NO ARCH=arm64 VALID_ARCHS=arm64 SUPPORTS_MACCATALYST=YES TARGETED_DEVICE_FAMILY=2 CODE_SIGN_IDENTITY=- test \ | xcpretty --report junit --output .out/test-results/test-sim-mac-catalyst.xml diff --git a/.github/workflows/release-branch.yml b/.github/workflows/release-branch.yml index 4a26f68..7771f92 100644 --- a/.github/workflows/release-branch.yml +++ b/.github/workflows/release-branch.yml @@ -90,11 +90,14 @@ jobs: DEVELOPER_DIR: /Applications/Xcode_26.1.app steps: - uses: actions/checkout@v5 + - run: brew install gmp libyaml - uses: ruby/setup-ruby@v1 with: ruby-version: '3.4' - run: gem install xcpretty - name: xcodebuild test + env: + LC_CTYPE: en_US.UTF-8 run: |- xcodebuild -scheme pkl-swift-Package -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 17' ONLY_ACTIVE_ARCH=YES CODE_SIGNING_REQUIRED=NO CODE_SIGNING_ALLOWED=YES COMPILER_INDEX_STORE_ENABLE=NO test \ | xcpretty --report junit --output .out/test-results/test-sim-ios-simulator.xml @@ -114,11 +117,14 @@ jobs: DEVELOPER_DIR: /Applications/Xcode_26.1.app steps: - uses: actions/checkout@v5 + - run: brew install gmp libyaml - uses: ruby/setup-ruby@v1 with: ruby-version: '3.4' - run: gem install xcpretty - name: xcodebuild test + env: + LC_CTYPE: en_US.UTF-8 run: |- xcodebuild -scheme pkl-swift-Package -sdk watchsimulator -destination 'platform=watchOS Simulator,name=Apple Watch Series 11 (42mm)' ONLY_ACTIVE_ARCH=YES CODE_SIGNING_REQUIRED=NO CODE_SIGNING_ALLOWED=YES COMPILER_INDEX_STORE_ENABLE=NO test \ | xcpretty --report junit --output .out/test-results/test-sim-watchos-simulator.xml @@ -138,11 +144,14 @@ jobs: DEVELOPER_DIR: /Applications/Xcode_26.1.app steps: - uses: actions/checkout@v5 + - run: brew install gmp libyaml - uses: ruby/setup-ruby@v1 with: ruby-version: '3.4' - run: gem install xcpretty - name: xcodebuild test + env: + LC_CTYPE: en_US.UTF-8 run: |- xcodebuild -scheme pkl-swift-Package -sdk appletvsimulator -destination 'platform=tvOS Simulator,name=Apple TV 4K (3rd generation)' ONLY_ACTIVE_ARCH=YES CODE_SIGNING_REQUIRED=NO CODE_SIGNING_ALLOWED=YES COMPILER_INDEX_STORE_ENABLE=NO test \ | xcpretty --report junit --output .out/test-results/test-sim-tvos-simulator.xml @@ -162,11 +171,14 @@ jobs: DEVELOPER_DIR: /Applications/Xcode_26.1.app steps: - uses: actions/checkout@v5 + - run: brew install gmp libyaml - uses: ruby/setup-ruby@v1 with: ruby-version: '3.4' - run: gem install xcpretty - name: xcodebuild test + env: + LC_CTYPE: en_US.UTF-8 run: |- xcodebuild -scheme pkl-swift-Package -sdk macosx -destination 'platform=macOS,variant=Mac Catalyst,arch=arm64' ONLY_ACTIVE_ARCH=YES CODE_SIGNING_REQUIRED=NO CODE_SIGNING_ALLOWED=NO COMPILER_INDEX_STORE_ENABLE=NO ARCH=arm64 VALID_ARCHS=arm64 SUPPORTS_MACCATALYST=YES TARGETED_DEVICE_FAMILY=2 CODE_SIGN_IDENTITY=- test \ | xcpretty --report junit --output .out/test-results/test-sim-mac-catalyst.xml diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index cd32596..3c62b66 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -90,11 +90,14 @@ jobs: DEVELOPER_DIR: /Applications/Xcode_26.1.app steps: - uses: actions/checkout@v5 + - run: brew install gmp libyaml - uses: ruby/setup-ruby@v1 with: ruby-version: '3.4' - run: gem install xcpretty - name: xcodebuild test + env: + LC_CTYPE: en_US.UTF-8 run: |- xcodebuild -scheme pkl-swift-Package -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 17' ONLY_ACTIVE_ARCH=YES CODE_SIGNING_REQUIRED=NO CODE_SIGNING_ALLOWED=YES COMPILER_INDEX_STORE_ENABLE=NO test \ | xcpretty --report junit --output .out/test-results/test-sim-ios-simulator.xml @@ -114,11 +117,14 @@ jobs: DEVELOPER_DIR: /Applications/Xcode_26.1.app steps: - uses: actions/checkout@v5 + - run: brew install gmp libyaml - uses: ruby/setup-ruby@v1 with: ruby-version: '3.4' - run: gem install xcpretty - name: xcodebuild test + env: + LC_CTYPE: en_US.UTF-8 run: |- xcodebuild -scheme pkl-swift-Package -sdk watchsimulator -destination 'platform=watchOS Simulator,name=Apple Watch Series 11 (42mm)' ONLY_ACTIVE_ARCH=YES CODE_SIGNING_REQUIRED=NO CODE_SIGNING_ALLOWED=YES COMPILER_INDEX_STORE_ENABLE=NO test \ | xcpretty --report junit --output .out/test-results/test-sim-watchos-simulator.xml @@ -138,11 +144,14 @@ jobs: DEVELOPER_DIR: /Applications/Xcode_26.1.app steps: - uses: actions/checkout@v5 + - run: brew install gmp libyaml - uses: ruby/setup-ruby@v1 with: ruby-version: '3.4' - run: gem install xcpretty - name: xcodebuild test + env: + LC_CTYPE: en_US.UTF-8 run: |- xcodebuild -scheme pkl-swift-Package -sdk appletvsimulator -destination 'platform=tvOS Simulator,name=Apple TV 4K (3rd generation)' ONLY_ACTIVE_ARCH=YES CODE_SIGNING_REQUIRED=NO CODE_SIGNING_ALLOWED=YES COMPILER_INDEX_STORE_ENABLE=NO test \ | xcpretty --report junit --output .out/test-results/test-sim-tvos-simulator.xml @@ -162,11 +171,14 @@ jobs: DEVELOPER_DIR: /Applications/Xcode_26.1.app steps: - uses: actions/checkout@v5 + - run: brew install gmp libyaml - uses: ruby/setup-ruby@v1 with: ruby-version: '3.4' - run: gem install xcpretty - name: xcodebuild test + env: + LC_CTYPE: en_US.UTF-8 run: |- xcodebuild -scheme pkl-swift-Package -sdk macosx -destination 'platform=macOS,variant=Mac Catalyst,arch=arm64' ONLY_ACTIVE_ARCH=YES CODE_SIGNING_REQUIRED=NO CODE_SIGNING_ALLOWED=NO COMPILER_INDEX_STORE_ENABLE=NO ARCH=arm64 VALID_ARCHS=arm64 SUPPORTS_MACCATALYST=YES TARGETED_DEVICE_FAMILY=2 CODE_SIGN_IDENTITY=- test \ | xcpretty --report junit --output .out/test-results/test-sim-mac-catalyst.xml