Skip to content

Commit

Permalink
chore(ios): Bump to Xcode 15.1 and Ruby 3.2.2 [UI-5184] (#477)
Browse files Browse the repository at this point in the history
* Update to Xcode 15.1 and Ruby 3.2.2

* Explicit failure for emoji range test

* Regenerate snapshot images

* Run jobs on macos-13-xlarge (M1)

* Skip install of iOS 17.2 SDK

* More robust: Read the current Ruby version from the .ruby-version file

* Fix cocoapods job

* Update AttributedLabelTests.swift

* Revert SwiftFormat update

* Remove invalid range test. iOS 17 range behaviour has changed and it's a weird test

* Remove all nestedBoxes snapshot images

Snapshots from CI

Disabled the `test_nestedBoxes` test

* Update docs.yml

* Revert "Update AttributedLabelTests.swift"

This reverts commit 5f42b00.

* Revert "Remove all nestedBoxes snapshot images"

This reverts commit 46527b4.

* Regenerate snapshot images

* Update CHANGELOG.md

* Update test device to iPhone SE (3rd generation)
  • Loading branch information
robmaceachern committed Jan 30, 2024
1 parent cd8c0eb commit 0fbe962
Show file tree
Hide file tree
Showing 311 changed files with 71 additions and 51 deletions.
4 changes: 2 additions & 2 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ on:
jobs:
build:
name: Generate docs with jazzy and publish to Github pages
runs-on: macos-12
runs-on: macos-13-xlarge

steps:
- name: Checkout
Expand All @@ -22,7 +22,7 @@ jobs:
- name: Setup Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ env.ruby_version }}
# Uses version specified in .ruby_version
bundler-cache: true # runs 'bundle install' and caches installed gems automatically

- name: Generate Docs
Expand Down
3 changes: 1 addition & 2 deletions .github/workflows/env.properties
Original file line number Diff line number Diff line change
@@ -1,2 +1 @@
xcode_version=14.2
ruby_version=2.7
xcode_version=15.1
2 changes: 1 addition & 1 deletion .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ on:
jobs:
lint:
name: Lint Swift code with SwiftFormat
runs-on: macos-12
runs-on: macos-13-xlarge

steps:
- name: Checkout
Expand Down
26 changes: 16 additions & 10 deletions .github/workflows/tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,20 +10,25 @@ jobs:
spm:
name: "iOS ${{ matrix.sdk }}"

runs-on: macos-12
runs-on: macos-13-xlarge

strategy:
fail-fast: false # Don’t fail-fast so that we get all snapshot test changes
matrix:
include:
- sdk: "14.5"
destination: platform=iOS Simulator,OS=14.5,name=iPad (8th generation)

- sdk: "15.0"
destination: platform=iOS Simulator,OS=15.0,name=iPhone 8
- sdk: "15.4"
destination: platform=iOS Simulator,OS=15.4,name=iPhone SE (3rd generation)
installation_required: true

- sdk: "16.2"
destination: platform=iOS Simulator,OS=16.2,name=iPhone 8
destination: platform=iOS Simulator,OS=16.2,name=iPhone SE (3rd generation)
installation_required: true

- sdk: "17.2"
destination: platform=iOS Simulator,OS=17.2,name=iPhone SE (3rd generation)
# The iOS 17.2 SDK is pre-installed on the macOS 13 image.
# Attempting to install it will fail with an error.
installation_required: false

steps:
- uses: actions/checkout@v1
Expand All @@ -38,6 +43,7 @@ jobs:
run: brew install aria2 xcodesorg/made/xcodes

- name: Install iOS ${{ matrix.sdk }}
if: ${{ matrix.installation_required }}
run: sudo xcodes runtimes install "iOS ${{ matrix.sdk }}"

- name: Build & Test
Expand All @@ -60,7 +66,7 @@ jobs:
cocoapods:
name: "CocoaPods"

runs-on: macos-12
runs-on: macos-13-xlarge

steps:
- uses: actions/checkout@v1
Expand All @@ -74,7 +80,7 @@ jobs:
- name: Setup Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ env.ruby_version }}
# Uses version specified in .ruby_version
bundler-cache: true # runs 'bundle install' and caches installed gems automatically

- name: Pod Install
Expand All @@ -83,4 +89,4 @@ jobs:
- name: Build & Test
run: |
xcodebuild -workspace SampleApp/SampleApp.xcworkspace -scheme "BlueprintUI-Unit-Tests" -destination "platform=iOS Simulator,OS=16.2,name=iPhone 8"
xcodebuild -workspace SampleApp/SampleApp.xcworkspace -scheme "BlueprintUI-Unit-Tests" -destination "platform=iOS Simulator,OS=17.2,name=iPhone SE (3rd generation)"
1 change: 1 addition & 0 deletions .ruby-version
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
3.2.2
2 changes: 1 addition & 1 deletion .swift-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
5.7
5.9
5 changes: 0 additions & 5 deletions BlueprintUI/Tests/AttributedTextTests.swift
Original file line number Diff line number Diff line change
Expand Up @@ -119,9 +119,6 @@ class AttributedTextTests: XCTestCase {
var text = AttributedText("some emoji: 😵‍💫👨‍👩‍👧‍👦🏃🏽 and some hiragana: あいうえお and some katakana: アイウエオカキクケコ")
text.color = .blue

let partialEmoji = text.range(of: "😵")!
text[partialEmoji].color = .brown

let family = text.range(of: "👨‍👩‍👧‍👦")!
text[family].color = .magenta

Expand All @@ -131,12 +128,10 @@ class AttributedTextTests: XCTestCase {
let someKatakana = text.range(of: "ウエオカキク")!
text[someKatakana].color = .red

XCTAssertEqual(text["😵‍💫"].color, nil, "This emoji spans two colors due to changing the color of 😵")
XCTAssertEqual(text["🏃🏽"].color, .blue)
XCTAssertEqual(text[""].color, .blue)
XCTAssertEqual(text["アイ"].color, .blue)

XCTAssertEqual(text[partialEmoji].color, .brown)
XCTAssertEqual(text[family].color, .magenta)
XCTAssertEqual(text[someHiragana].color, .green)
XCTAssertEqual(text[someKatakana].color, .red)
Expand Down
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Loading

0 comments on commit 0fbe962

Please sign in to comment.