Use Xcode 15.0.1
Migrates the project to Xcode 15 and Apple Silicon in CI
Also includes:
- An adjustment to the
UITextViewsubclass that injects aUIPasteboardobject. This allows us to mock access to the system pasteboard, which requires user interaction in recent iOS versions - An adjustment to string index handling – in newer versions of Xcode, there are runtime assertions about string index overflow, so we need to be a bit more careful when replacing text
- A tiny little fix for a failing test, presumably related to something about how iOS generates PNG files.
This can be reviewed by anyone, but I'd appreciate if @mokagio or @crazytonyli took a look at the project code adjustments!
Testing Details
Ensure CI passes
- [x] Please check here if your pull request includes additional test coverage.
- [x] I have considered if this change warrants release notes and have added them to the appropriate section in the
CHANGELOG.mdif necessary.
Breadcrumbs: I reverted the attribution of the cluster to this repo in Buildkite (https://github.com/Automattic/buildkite-ci/pull/331) — aka reverted this repo to use Intel infra — while this PR is still not merged.
Once we land this PR, don't forget to redo the change in aztec-editor-ios.tf to switch it back to use the cluster again.
I wanted to help here and tried to address the unit tests failures via https://github.com/wordpress-mobile/AztecEditor-iOS/pull/1382 but didn't get very far.
Going to merge this despite unit tests failures, to unblock moving to the cluster in CI, which in turns unblocks adopting the latest Xcode, https://github.com/wordpress-mobile/AztecEditor-iOS/pull/1392, which, finally, will unblock https://github.com/wordpress-mobile/AztecEditor-iOS/pull/1391.
I'm still experiencing unit tests issue locally, but I want to see how/if the situation changes once this lands.