Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrade to Xcode 16.2 #1404

Open
wants to merge 27 commits into
base: tooling/fix-sync-pod-publication
Choose a base branch
from

Conversation

mokagio
Copy link
Contributor

@mokagio mokagio commented Jan 17, 2025

Picks up where #1392 left, upgrading the project to work with Xcode 16.2

This long overdue upgrade was prompted by looking into merging Support SPM installation #1379 and realizing that CI was not up to date via #1403

Notice that this PR adds custom GitHub status check names. I already updated the settings to require those names. After this PR is merged, and so is #1391, we'll need to update other PRs we want to merge by merging trunk into them or rebasing.


  • I have considered if this change warrants release notes and have added them to the appropriate section in the CHANGELOG.md if necessary. — N.A.

mokagio and others added 24 commits April 16, 2024 14:34
> Non-'@objc' instance method in extensions cannot be overridden;
> use 'public' instead
Ideally, this should be removed once the warnings have been addressed
@mokagio This should fix the `testPaste{Image,Video}WithoutFormatting` test failures.
 - I have searched the code for `decodeObject(forKey` occurrences and confirmed there wasn't any left
 - But I have not triple-checked that *every* custom subclass of anything we might encode in our `NSAttributedString` attributes have had `+supportsSecureCoding` redefined

Indeed, apparently, **even if** the parent class already overrides it to return `true`, subclasses which override `init?(coder:)`/`encode(with:)` from their parent class need to also re-override `+supportsSecureCoding`. I've added the overrides in classes that I've modified, but there may be more classes that might not be covered by our unit tests around archiving/pasting but would still require it to be added? So would be worth making another pass to be sure we didn't forget any,
…inText`

Since newer versions of iOS use this new `public.utf8-plain-text` UTI instead of `public.plain-text` like in previous OS versions.
This reverts commit 5c3004b, because I'm not convinced that's a good idea.

We should double-check that **not** having `+supportsSecureCoding` declared on this subclass doesn't make it fail to be copy/pasted (i.e. archived/unarchived)—like similar cases happened when running Aztec tests. Or if we need `+supportsSecureCoding`, we need to find a way to override/redefine it across module boundaries…
This is in line with our Buildkite/YML pipeline standard.
@mokagio mokagio mentioned this pull request Jan 17, 2025
1 task
@mokagio mokagio force-pushed the mokagio-olivier/xcode-16.2 branch from 44a3cbb to 834b097 Compare January 17, 2025 19:55
@mokagio mokagio marked this pull request as ready for review January 17, 2025 20:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants