Thanks to visit codestin.com
Credit goes to github.com

Skip to content

macOS: Update minimum macOS version to 10.15 #168101

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

Merged
merged 5 commits into from
May 1, 2025

Conversation

cbracken
Copy link
Member

@cbracken cbracken commented Apr 30, 2025

This updates the Flutter minimum macOS version from 10.14 to 10.15 adds a migrator for existing apps, and updates our own examples, tests, and benchmark apps to 10.15. A follow-up patch will drop macOS 10.15 @available checks in the embedder.

This is required in order to use Swift in the embedder and not need to bundle the Swift runtime libs in every app that uses Flutter. Swift stable ABI was introduced in macOS 10.14.4.

As of March 2025, usage of macOS 10.14 is approximately 1.2~1.8% depending on source of statistics, see example public usage data here:
https://gs.statcounter.com/macos-version-market-share/desktop/worldwide

This patch makes the following changes:

  1. Updates mac_deployment_target from 12.0 to 13.0.
  2. Changes templates to MACOSX_DEPLOYMENT_TARGET, MinimumOSVersion, and Podfile platform :osx to 10.15.
  3. Adds migrator for Podfile part to migrate platform :osx, '10.14' -> platform :osx, '10.15'
  4. Compiles with -mmacosx-version-min=10.15
  5. Runs the migrator on all example apps and integration tests.
  6. Updates examples, tests to macOS 10.15 deployment target

Issue: #167745

Pre-launch Checklist

If you need help, consider asking for advice on the #hackers-new channel on Discord.

@cbracken cbracken requested a review from a team as a code owner April 30, 2025 20:55
@github-actions github-actions bot added a: tests "flutter test", flutter_test, or one of our tests tool Affects the "flutter" command-line tool. See also t: labels. framework flutter/packages/flutter repository. See also f: labels. engine flutter/engine repository. See also e: labels. d: api docs Issues with https://api.flutter.dev/ d: examples Sample code and demos a: desktop Running on desktop f: integration_test The flutter/packages/integration_test plugin team-ios Owned by iOS platform team labels Apr 30, 2025
@cbracken cbracken changed the title bump macos 10.14 to 10.15 macOS: Update minimum macOS version to 10.15 Apr 30, 2025
cbracken added a commit to cbracken/flutter that referenced this pull request Apr 30, 2025
iOS deployment target was migrated from 12 to 13 in:
* flutter#167737

macOS deployment target was migrated from 10.14 to 10.15 in:
* flutter#168101

Issue: flutter#167735
Issue: flutter#167745
@cbracken
Copy link
Member Author

/cc all the people who might care about this. Blog entry added in the doc.

@@ -218,7 +218,7 @@ keep this 2
expect(testLogger.statusText, isEmpty);
});

testWithoutContext('Xcode project is migrated from 10.11 to 10.14', () async {
testWithoutContext('Xcode project is migrated from 10.11 to 10.15', () async {
Copy link
Contributor

Choose a reason for hiding this comment

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

curious how migration script works - say a user is on 10.11, do they run migration scripts for 10.12, 10.13, 10.14, and then finally 10.15? Or is it migrating from any versions above directly to 10.15?

Copy link
Member

Choose a reason for hiding this comment

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

It migrates directly, but only if the deployment target is one we set in the Xcode project template. If they updated it themselves to something specific, they are on their own:

https://github.com/flutter/flutter/pull/168101/files/fd43a43386f9ce5a07aad729d7c360628a9640ac#diff-346db78c4cd00cab61b70cc48b895efee275ecbbfed6ef55e6b8ae7436375e29R38-R40

@cbracken cbracken added the autosubmit Merge PR when tree becomes green via auto submit App label May 1, 2025
@cbracken cbracken added this pull request to the merge queue May 1, 2025
Merged via the queue into flutter:master with commit 4c5d0de May 1, 2025
178 checks passed
@cbracken cbracken deleted the bump-macos-10.14-to-10.15 branch May 1, 2025 04:31
@flutter-dashboard flutter-dashboard bot removed the autosubmit Merge PR when tree becomes green via auto submit App label May 1, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 1, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 1, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 2, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 2, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 2, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 2, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 2, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 3, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 3, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 4, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 5, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 5, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 5, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 5, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 5, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 5, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 5, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 5, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 6, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 6, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 6, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 6, 2025
pranavo72bex added a commit to pranavo72bex/flutter that referenced this pull request May 7, 2025
pranavo72bex added a commit to pranavo72bex/flutter that referenced this pull request May 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
a: desktop Running on desktop a: tests "flutter test", flutter_test, or one of our tests d: api docs Issues with https://api.flutter.dev/ d: examples Sample code and demos engine flutter/engine repository. See also e: labels. f: integration_test The flutter/packages/integration_test plugin framework flutter/packages/flutter repository. See also f: labels. team-ios Owned by iOS platform team tool Affects the "flutter" command-line tool. See also t: labels.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants