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

Change minimum iOS version from 8.0 to 9.0 #62902

Merged
merged 2 commits into from
Aug 6, 2020

Conversation

jmagman
Copy link
Member

@jmagman jmagman commented Aug 4, 2020

Description

Update create app and module templates to iOS minimum version 9.0.
Updated example projects manually. Will hold off on integration tests until know know if we can do it automatically with #62880

This does not update the plugin template podspec minimum version. To be discussed separately.

Related Issues

Fixes #60035

Tests

Updated -miphoneos-version-min calls.
App creation and example build integration tests cover part of this.

Checklist

  • I read the [Contributor Guide] and followed the process outlined there for submitting PRs.
  • I signed the [CLA].
  • I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement].
  • I read the [Tree Hygiene] wiki page, which explains my responsibilities.
  • I updated/added relevant documentation (doc comments with ///).
  • All existing and new tests are passing.
  • The analyzer (flutter analyze --flutter-repo) does not report any problems on my PR.
  • I am willing to follow-up on review comments in a timely manner.

Breaking Change

  • No, no existing tests failed, so this is not a breaking change.
  • Yes, this is a breaking change. If not, delete the remainder of this section.

@flutter-dashboard flutter-dashboard bot added d: examples Sample code and demos team Infra upgrades, team productivity, code health, technical debt. See also team: labels. tool Affects the "flutter" command-line tool. See also t: labels. work in progress; do not review labels Aug 4, 2020
@jmagman jmagman self-assigned this Aug 4, 2020
@@ -16,7 +16,7 @@ Pod::Spec.new do |s|
s.source_files = 'Classes/**/*'
s.public_header_files = 'Classes/**/*.h'
s.dependency 'Flutter'
s.platform = :ios, '8.0'
s.platform = :ios, '9.0'
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note these newly created plugins will not be able to be used by Flutter apps with a minimum of 8.0 (compilation time error), so that's all apps currently in the wild now.

I really wish there wasn't an error for this, or at least I wish it was suppressible.

I'm willing to be convinced we shouldn't increase the plugin minimum requirement for a few stable cycles until more apps have upgraded to 9.0...

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

so you're saying an app can't use a plugin with a higher minimum ios version?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes. I'm going to revert the plugin min version bump, it seems like we need to talk about that separately.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

SGTM

@jmagman jmagman marked this pull request as ready for review August 5, 2020 01:11
@@ -891,7 +891,7 @@ Future<void> _writeIOSPluginRegistrant(FlutterProject project, List<Plugin> plug
final List<Map<String, dynamic>> iosPlugins = _extractPlatformMaps(plugins, IOSPlugin.kConfigKey);
final Map<String, dynamic> context = <String, dynamic>{
'os': 'ios',
'deploymentTarget': '8.0',
'deploymentTarget': '9.0',
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is not used for published plugins, it's generated for app and modules that need to import plugins.

Copy link
Member

@christopherfujino christopherfujino left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@xster
Copy link
Member

xster commented Aug 5, 2020

This means we're intentionally not changing ios_workflow in this PR?

@jmagman
Copy link
Member Author

jmagman commented Aug 5, 2020

This means we're intentionally not changing ios_workflow in this PR?

This PR is to prevent the "IPHONEOS_DEPLOYMENT_TARGET too low" warning that happens when you target 8.0 in Xcode 14.

Are you think of #62883 maybe?

@xster
Copy link
Member

xster commented Aug 6, 2020

Yes, my comment makes no sense :D
Please disregard. LGTM

@PiN73
Copy link

PiN73 commented Oct 20, 2020

As it breaks building of existing apps for iOS (see issue), there should be a notice in breaking changes page saying to modify ios project, shouldn't it?

@PiN73
Copy link

PiN73 commented Oct 20, 2020

Also if I understood correctly, Flutter now supports iOS 9.0 and later, not 8.0 as before, this should be fixed at Build and release an iOS app page

@jmagman
Copy link
Member Author

jmagman commented Oct 21, 2020

@PiN73 Flutter supports iOS 8, but the default for a new app is now iOS 9 to avoid Xcode 12 warnings.

@jmagman jmagman restored the ios-9 branch October 21, 2020 17:55
@jmagman jmagman deleted the ios-9 branch October 21, 2020 17:56
auto-submit bot pushed a commit that referenced this pull request Jan 2, 2024
1. Change templates to `IPHONEOS_DEPLOYMENT_TARGET`, `MinimumOSVersion`, and Podfile `platform :ios` to 12.0.
2. Add migrator for Podfile part to migrate `platform :ios, '11.0'` -> `platform :ios, '12.0'`
3. Compile with `-miphoneos-version-min=12.0`
4. Run the migrator on all example apps and integration tests.

See also #62902 and #85174 and #101963

Fixes #136060
auto-submit bot added a commit that referenced this pull request Jan 2, 2024
Reverts #140478
Initiated by: loic-sharma
This change reverts the following previous change:
Original Description:
1. Change templates to `IPHONEOS_DEPLOYMENT_TARGET`, `MinimumOSVersion`, and Podfile `platform :ios` to 12.0.
2. Add migrator for Podfile part to migrate `platform :ios, '11.0'` -> `platform :ios, '12.0'`
3. Compile with `-miphoneos-version-min=12.0`
4. Run the migrator on all example apps and integration tests.

See also #62902 and #85174 and #101963

Fixes #136060
auto-submit bot pushed a commit that referenced this pull request Jan 3, 2024
Reland #140478 with `ios_content_validation_test` test fix.
```
[ios_content_validation_test] Process terminated with exit code 0.
Task result:
{
  "success": true,
  "data": null,
  "detailFiles": [],
  "benchmarkScoreKeys": [],
  "reason": "success"
}

```

__________

1. Change templates to `IPHONEOS_DEPLOYMENT_TARGET`, `MinimumOSVersion`, and Podfile `platform :ios` to 12.0.
2. Add migrator for Podfile part to migrate `platform :ios, '11.0'` -> `platform :ios, '12.0'`
3. Compile with `-miphoneos-version-min=12.0`
4. Run the migrator on all example apps and integration tests.

See also #62902 and #85174 and #101963

Fixes #136060
jmagman added a commit to jmagman/flutter that referenced this pull request Jan 3, 2024
Reland flutter#140478 with `ios_content_validation_test` test fix.
```
[ios_content_validation_test] Process terminated with exit code 0.
Task result:
{
  "success": true,
  "data": null,
  "detailFiles": [],
  "benchmarkScoreKeys": [],
  "reason": "success"
}

```

__________

1. Change templates to `IPHONEOS_DEPLOYMENT_TARGET`, `MinimumOSVersion`, and Podfile `platform :ios` to 12.0.
2. Add migrator for Podfile part to migrate `platform :ios, '11.0'` -> `platform :ios, '12.0'`
3. Compile with `-miphoneos-version-min=12.0`
4. Run the migrator on all example apps and integration tests.

See also flutter#62902 and flutter#85174 and flutter#101963

Fixes flutter#136060
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
d: examples Sample code and demos platform-ios iOS applications specifically team Infra upgrades, team productivity, code health, technical debt. See also team: labels. tool Affects the "flutter" command-line tool. See also t: labels.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Increase app template minimum supported iOS version from 8.0 to 9.0
6 participants