Bump iOS deployment target from 13.0 to 14.0 - #19496
Conversation
|
All iOS13 widget targets |
|
If there are no objections to dropping iOS 13 support and it's possible to merge this PR by Friday, we could:
From your side @mokagio, does this seem like a viable approach? |
|
@guarani yes sounds good. I started working on this ( |
I think maybe we should merge iOS14+ to trunk and then adjust this PR branch accordingly? Widgets changes are a must for 21.1, unlike a version bump.
@guarani I don't think it makes sense to support iOS13 widgets, even if we won't manage to bump the deployment target this release. The usability of iOS13 is too low and we would be removing the changes next release either way. |
The iOS 13 widget removals is ready for review, so there should be ample time for the Jetpack widgets to go on top of this.
Are they? Is there an external commitment that must be met by that version? Just curious. |
This is a good point, I think we can afford to ship iOS 14 Home Screen widgets on Jetpack, without trying to support iOS 13 Today View widgets on Jetpack as well. The only users who will benefit from iOS Today View widgets are:
Not an external commitment, but an internal goal for the Jetpack app to offer the same features the WordPress app offers by Nov 17. Shipping widgets on Jetpack in 21.1 contributes to this goal. |
|
@guarani @staskus prioritizing the Jetpack widgets sounds good to me. There are only two days left for that in my time zone by now and we'd be cutting it close any other way. I'll wait for that to land on |
|
@mokagio Jetpack Widgets merged ✅ |
You can test the changes in Jetpack from this Pull Request by:
|
This way, all the targets will use the same iOS deployment, all coming from the project-level setting.
The class property was deprecated in iOS 14. Xcode gave the following warning (which we treat as an error): > Deprecated. Use the instance property `authorizationStatus` instead.
The deprecation warning in Xcode wasn't informative, but the deprecation
annotation suggested what to do:
```
/*
* locationManager:didChangeAuthorizationStatus:
*
* Discussion:
* Invoked when the authorization status changes for this application.
*/
- (void)locationManager:(CLLocationManager *)manager didChangeAuthorizationStatus:(CLAuthorizationStatus)status API_DEPRECATED_WITH_REPLACEMENT("-locationManagerDidChangeAuthorization:", ios(4.2, 14.0), macos(10.7, 11.0), watchos(1.0, 7.0), tvos(9.0, 14.0));
```
| @available(iOS, deprecated: 14.0, message: "Use SchedulingDatePickerViewController, based on UIDatePicker.inline") | ||
| class SchedulingCalendarViewController: UIViewController, CalendarSheet, DateCoordinatorHandler, SchedulingViewControllerProtocol { |
There was a problem hiding this comment.
The deprecation annotation recommends using SchedulingDatePickerViewController instead of SchedulingCalendarViewController in iOS 14 and above.
Now that we support only iOS 14 and above, this whole file can be deleted. Notice that in this file we also had CalendarSheet and TimePickerViewController.
| // FIXME: This protocol is redundant as of dropping iOS 13. | ||
| // | ||
| // It was used as a facade in between `SchedulingCalendarViewController` (iOS 13) and | ||
| // `SchedulingDatePickerViewController` (iOS 14+). `SchedulingCalendarViewController` has been | ||
| // deleted so we can remove this as well. | ||
| protocol SchedulingViewControllerProtocol: UIViewController, UIViewControllerTransitioningDelegate, UIAdaptivePresentationControllerDelegate { |
There was a problem hiding this comment.
I'll follow this up later on. I wanted to keep the scope limited.
|
|
||
| class TimePickerViewControllerTests: XCTestCase { | ||
|
|
||
| var timePickerVC: TimePickerViewController? |
There was a problem hiding this comment.
TimePickerViewController was removed together with `
|
@crazytonyli I asked for your review on this PR with failing CI because I already have #19509 which addresses the issue and has been approved. I didn't want to merge it in, otherwise the diff would have become bigger. Let me know what you think. |
Oh yes, that would do it too. I guess what I should have done was create the widgets PR from But, given that PR was based off this one, your suggestion will save us a merge. Thanks! |
|
Closing in favor of merging #19509 directly into |
Bump iOS deployment target from 13.0 to 14.0.
To test
The app should build locally. Ideally, there should be no deprecation warnings or errors.
Currently, we have a bunch of errors due to "Today View extensions have been deprecated". The reason we have an error and not a warning is because those targets have "Treat Warnings as Errors" set toUpdate: #19509 addressed those.YES.See Today View errors
Regression Notes
RELEASE-NOTES.txtif necessary. N.A.