-
Notifications
You must be signed in to change notification settings - Fork 27.1k
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
[macOS] Migrate @NSApplicationMain attribute to @main #146848
[macOS] Migrate @NSApplicationMain attribute to @main #146848
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for doing this!
@jmagman One thing in my mind is whether this kind of migration scripts will get out of hand in the future? Because keeping track of the delta can be tedious.
Strawman idea - what if we just regenerate the whole thing? This way we can have a simple one-for-all migration script that simply detects some sort of version change.
/// | ||
/// See: | ||
/// https://github.com/apple/swift-evolution/blob/main/proposals/0383-deprecate-uiapplicationmain-and-nsapplicationmain.md | ||
class NSApplicationMainDeprecationMigration extends ProjectMigrator { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
im wondering if it's possible to reuse the ios migration?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
They're very similar but subtly different - the affected file is different, the log messages are slightly different (due to differences in path), the attribute is different. The migration logic would need to be more a little more complicated to support both platforms.
Personally I think this duplication results in simple code that's easier to maintain. That said, both approaches are viable and I'm happy to defer to whatever the team prefers :)
We can't regenerate files Flutter doesn't "own", at least not easily, or we would blow away the user changes. For example in https://github.com/flutter/flutter/pull/146707/files#r1566254461, if we had regenerated the AppDelegate the user would have lost all their changes. flutter/examples/platform_channel_swift/ios/Runner/AppDelegate.swift Lines 22 to 23 in 2240998
The Xcode project files are another example: users are supposed to edit their Xcode project in some cases (as you know from your validator tool work), so we can't just regenerate it for them without keeping track of the deltas in a much more complicated, error-prone way. There was an attempt to do something much more complicated with https://github.com/flutter/flutter/wiki/Flutter-migrate, (see https://flutter.dev/go/flutter-migrate and #40460), but it was extremely complicated and required users running a tool explicitly, and allowing rollbacks. There wasn't much appetite to finish up that project since these incremental migrations that essentially just string match (the first one was introduced in #51453) were doing a decent enough job. Before that, users would just get build errors and have to figure out how to fix them themselves. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
Roll Flutter from 3882afbfa997 to fb110b98da15 (56 revisions) flutter/flutter@3882afb...fb110b9 2024-04-18 32538273+ValentinVignal@users.noreply.github.com Fix memory leaks in `MaterialBanner` (flutter/flutter#146963) 2024-04-18 32538273+ValentinVignal@users.noreply.github.com Fix memory leak in data table (flutter/flutter#146892) 2024-04-18 32538273+ValentinVignal@users.noreply.github.com Dispose the curved animation in transition test (flutter/flutter#146961) 2024-04-18 engine-flutter-autoroll@skia.org Roll Flutter Engine from 5687011d5e94 to 2c3e9c8bfce6 (1 revision) (flutter/flutter#146982) 2024-04-18 engine-flutter-autoroll@skia.org Roll Flutter Engine from 132d364ef373 to 5687011d5e94 (2 revisions) (flutter/flutter#146972) 2024-04-18 engine-flutter-autoroll@skia.org Roll Flutter Engine from 20638b75c8c4 to 132d364ef373 (1 revision) (flutter/flutter#146969) 2024-04-18 737941+loic-sharma@users.noreply.github.com [macOS] Migrate @NSApplicationMain attribute to @main (flutter/flutter#146848) 2024-04-18 engine-flutter-autoroll@skia.org Roll Flutter Engine from 07f7532ecd29 to 20638b75c8c4 (2 revisions) (flutter/flutter#146962) 2024-04-18 engine-flutter-autoroll@skia.org Roll Flutter Engine from 725ebd708246 to 07f7532ecd29 (1 revision) (flutter/flutter#146960) 2024-04-18 engine-flutter-autoroll@skia.org Roll Flutter Engine from 624730fb8840 to 725ebd708246 (4 revisions) (flutter/flutter#146959) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 9edcb26f5949 to 624730fb8840 (2 revisions) (flutter/flutter#146955) 2024-04-17 49699333+dependabot[bot]@users.noreply.github.com Bump github/codeql-action from 3.25.0 to 3.25.1 (flutter/flutter#146953) 2024-04-17 49699333+dependabot[bot]@users.noreply.github.com Bump peter-evans/create-pull-request from 6.0.3 to 6.0.4 (flutter/flutter#146954) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from cc73c5c124c4 to 9edcb26f5949 (4 revisions) (flutter/flutter#146946) 2024-04-17 goderbauer@google.com Bump meta to 1.14.0 (flutter/flutter#146925) 2024-04-17 ian@hixie.ch Make goldenFileComparator a field instead of a trivial property (flutter/flutter#146800) 2024-04-17 ian@hixie.ch Assert that the goldenFileComparator is a LocalFileComparator (flutter/flutter#146802) 2024-04-17 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Try to be more consistent about deleting test apps in devicelab logic (#146931)" (flutter/flutter#146947) 2024-04-17 103135467+sealesj@users.noreply.github.com Create web tests suite & runner_utils (flutter/flutter#146592) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 376c86e3bbb6 to cc73c5c124c4 (3 revisions) (flutter/flutter#146940) 2024-04-17 ian@hixie.ch Try to be more consistent about deleting test apps in devicelab logic (flutter/flutter#146931) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from bc6382e35365 to 376c86e3bbb6 (2 revisions) (flutter/flutter#146937) 2024-04-17 ian@hixie.ch Remove now-redundant tests for isForEnvironment (flutter/flutter#146804) 2024-04-17 137456488+flutter-pub-roller-bot@users.noreply.github.com Roll pub packages (flutter/flutter#146929) 2024-04-17 polinach@google.com Get rid of _NullElement. (flutter/flutter#146741) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 818191d11404 to bc6382e35365 (2 revisions) (flutter/flutter#146930) 2024-04-17 32538273+ValentinVignal@users.noreply.github.com Fix memory leak in paginated tables (flutter/flutter#146755) 2024-04-17 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Try to be more consistent about deleting test apps in devicelab logic. (#146856)" (flutter/flutter#146927) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 25b09e883dd8 to 818191d11404 (3 revisions) (flutter/flutter#146898) 2024-04-17 ian@hixie.ch Try to be more consistent about deleting test apps in devicelab logic. (flutter/flutter#146856) 2024-04-17 derekx@google.com Unpin frontend_server_client and roll packages (flutter/flutter#146650) 2024-04-17 engine-flutter-autoroll@skia.org Roll Packages from 90c876d to d39830e (4 revisions) (flutter/flutter#146895) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 0e9e2f419225 to 25b09e883dd8 (1 revision) (flutter/flutter#146889) 2024-04-17 6655696+guidezpl@users.noreply.github.com Reland: Update link branches to `main` (flutter/flutter#146882) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 4b949d7d6065 to 0e9e2f419225 (4 revisions) (flutter/flutter#146884) 2024-04-17 6655696+guidezpl@users.noreply.github.com Revert "Update link branches to `main`" (flutter/flutter#146880) 2024-04-17 tessertaha@gmail.com Fix `Tab` indicator image configuration doesn't inherit device pixel ratio (flutter/flutter#146812) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 1ea39b29ce8c to 4b949d7d6065 (1 revision) (flutter/flutter#146865) 2024-04-17 6655696+guidezpl@users.noreply.github.com Update link branches to `main` (flutter/flutter#146558) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 45c86593a09a to 1ea39b29ce8c (1 revision) (flutter/flutter#146863) 2024-04-17 ian@hixie.ch Rewrap some lines that are about to get much longer. (flutter/flutter#146803) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 0cdbc8a6e463 to 45c86593a09a (1 revision) (flutter/flutter#146862) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 31b67985de27 to 0cdbc8a6e463 (1 revision) (flutter/flutter#146861) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from e7d8c62d291a to 31b67985de27 (1 revision) (flutter/flutter#146859) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 4d69c0c95483 to e7d8c62d291a (11 revisions) (flutter/flutter#146857) 2024-04-16 nate.w5687@gmail.com Switch to relevant `Remote` constructors (flutter/flutter#146773) ...
This migrates Flutter to use the `@main` attribute introduced in Swift 5.3. The `@NSApplicationMain` attribute is deprecated and will be removed in Swift 6. See: https://github.com/apple/swift-evolution/blob/main/proposals/0383-deprecate-uiapplicationmain-and-nsapplicationmain.md This change is split into two commits: 1. flutter@a508d3e - This updates the macOS app template and adds a migration to replace `@NSApplicationMain` uses with `@main`. 2. flutter@f434827 - I ran `flutter run -d macos` on each Flutter macOS app in this repository to verify the app migrates and launches successfully. Follow-up to flutter#146707 Fixes flutter#143044
…r#6565) Roll Flutter from 3882afbfa997 to fb110b98da15 (56 revisions) flutter/flutter@3882afb...fb110b9 2024-04-18 32538273+ValentinVignal@users.noreply.github.com Fix memory leaks in `MaterialBanner` (flutter/flutter#146963) 2024-04-18 32538273+ValentinVignal@users.noreply.github.com Fix memory leak in data table (flutter/flutter#146892) 2024-04-18 32538273+ValentinVignal@users.noreply.github.com Dispose the curved animation in transition test (flutter/flutter#146961) 2024-04-18 engine-flutter-autoroll@skia.org Roll Flutter Engine from 5687011d5e94 to 2c3e9c8bfce6 (1 revision) (flutter/flutter#146982) 2024-04-18 engine-flutter-autoroll@skia.org Roll Flutter Engine from 132d364ef373 to 5687011d5e94 (2 revisions) (flutter/flutter#146972) 2024-04-18 engine-flutter-autoroll@skia.org Roll Flutter Engine from 20638b75c8c4 to 132d364ef373 (1 revision) (flutter/flutter#146969) 2024-04-18 737941+loic-sharma@users.noreply.github.com [macOS] Migrate @NSApplicationMain attribute to @main (flutter/flutter#146848) 2024-04-18 engine-flutter-autoroll@skia.org Roll Flutter Engine from 07f7532ecd29 to 20638b75c8c4 (2 revisions) (flutter/flutter#146962) 2024-04-18 engine-flutter-autoroll@skia.org Roll Flutter Engine from 725ebd708246 to 07f7532ecd29 (1 revision) (flutter/flutter#146960) 2024-04-18 engine-flutter-autoroll@skia.org Roll Flutter Engine from 624730fb8840 to 725ebd708246 (4 revisions) (flutter/flutter#146959) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 9edcb26f5949 to 624730fb8840 (2 revisions) (flutter/flutter#146955) 2024-04-17 49699333+dependabot[bot]@users.noreply.github.com Bump github/codeql-action from 3.25.0 to 3.25.1 (flutter/flutter#146953) 2024-04-17 49699333+dependabot[bot]@users.noreply.github.com Bump peter-evans/create-pull-request from 6.0.3 to 6.0.4 (flutter/flutter#146954) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from cc73c5c124c4 to 9edcb26f5949 (4 revisions) (flutter/flutter#146946) 2024-04-17 goderbauer@google.com Bump meta to 1.14.0 (flutter/flutter#146925) 2024-04-17 ian@hixie.ch Make goldenFileComparator a field instead of a trivial property (flutter/flutter#146800) 2024-04-17 ian@hixie.ch Assert that the goldenFileComparator is a LocalFileComparator (flutter/flutter#146802) 2024-04-17 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Try to be more consistent about deleting test apps in devicelab logic (#146931)" (flutter/flutter#146947) 2024-04-17 103135467+sealesj@users.noreply.github.com Create web tests suite & runner_utils (flutter/flutter#146592) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 376c86e3bbb6 to cc73c5c124c4 (3 revisions) (flutter/flutter#146940) 2024-04-17 ian@hixie.ch Try to be more consistent about deleting test apps in devicelab logic (flutter/flutter#146931) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from bc6382e35365 to 376c86e3bbb6 (2 revisions) (flutter/flutter#146937) 2024-04-17 ian@hixie.ch Remove now-redundant tests for isForEnvironment (flutter/flutter#146804) 2024-04-17 137456488+flutter-pub-roller-bot@users.noreply.github.com Roll pub packages (flutter/flutter#146929) 2024-04-17 polinach@google.com Get rid of _NullElement. (flutter/flutter#146741) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 818191d11404 to bc6382e35365 (2 revisions) (flutter/flutter#146930) 2024-04-17 32538273+ValentinVignal@users.noreply.github.com Fix memory leak in paginated tables (flutter/flutter#146755) 2024-04-17 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Try to be more consistent about deleting test apps in devicelab logic. (#146856)" (flutter/flutter#146927) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 25b09e883dd8 to 818191d11404 (3 revisions) (flutter/flutter#146898) 2024-04-17 ian@hixie.ch Try to be more consistent about deleting test apps in devicelab logic. (flutter/flutter#146856) 2024-04-17 derekx@google.com Unpin frontend_server_client and roll packages (flutter/flutter#146650) 2024-04-17 engine-flutter-autoroll@skia.org Roll Packages from 90c876d to d39830e (4 revisions) (flutter/flutter#146895) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 0e9e2f419225 to 25b09e883dd8 (1 revision) (flutter/flutter#146889) 2024-04-17 6655696+guidezpl@users.noreply.github.com Reland: Update link branches to `main` (flutter/flutter#146882) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 4b949d7d6065 to 0e9e2f419225 (4 revisions) (flutter/flutter#146884) 2024-04-17 6655696+guidezpl@users.noreply.github.com Revert "Update link branches to `main`" (flutter/flutter#146880) 2024-04-17 tessertaha@gmail.com Fix `Tab` indicator image configuration doesn't inherit device pixel ratio (flutter/flutter#146812) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 1ea39b29ce8c to 4b949d7d6065 (1 revision) (flutter/flutter#146865) 2024-04-17 6655696+guidezpl@users.noreply.github.com Update link branches to `main` (flutter/flutter#146558) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 45c86593a09a to 1ea39b29ce8c (1 revision) (flutter/flutter#146863) 2024-04-17 ian@hixie.ch Rewrap some lines that are about to get much longer. (flutter/flutter#146803) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 0cdbc8a6e463 to 45c86593a09a (1 revision) (flutter/flutter#146862) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 31b67985de27 to 0cdbc8a6e463 (1 revision) (flutter/flutter#146861) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from e7d8c62d291a to 31b67985de27 (1 revision) (flutter/flutter#146859) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 4d69c0c95483 to e7d8c62d291a (11 revisions) (flutter/flutter#146857) 2024-04-16 nate.w5687@gmail.com Switch to relevant `Remote` constructors (flutter/flutter#146773) ...
…r#6565) Roll Flutter from 3882afbfa997 to fb110b98da15 (56 revisions) flutter/flutter@3882afb...fb110b9 2024-04-18 32538273+ValentinVignal@users.noreply.github.com Fix memory leaks in `MaterialBanner` (flutter/flutter#146963) 2024-04-18 32538273+ValentinVignal@users.noreply.github.com Fix memory leak in data table (flutter/flutter#146892) 2024-04-18 32538273+ValentinVignal@users.noreply.github.com Dispose the curved animation in transition test (flutter/flutter#146961) 2024-04-18 engine-flutter-autoroll@skia.org Roll Flutter Engine from 5687011d5e94 to 2c3e9c8bfce6 (1 revision) (flutter/flutter#146982) 2024-04-18 engine-flutter-autoroll@skia.org Roll Flutter Engine from 132d364ef373 to 5687011d5e94 (2 revisions) (flutter/flutter#146972) 2024-04-18 engine-flutter-autoroll@skia.org Roll Flutter Engine from 20638b75c8c4 to 132d364ef373 (1 revision) (flutter/flutter#146969) 2024-04-18 737941+loic-sharma@users.noreply.github.com [macOS] Migrate @NSApplicationMain attribute to @main (flutter/flutter#146848) 2024-04-18 engine-flutter-autoroll@skia.org Roll Flutter Engine from 07f7532ecd29 to 20638b75c8c4 (2 revisions) (flutter/flutter#146962) 2024-04-18 engine-flutter-autoroll@skia.org Roll Flutter Engine from 725ebd708246 to 07f7532ecd29 (1 revision) (flutter/flutter#146960) 2024-04-18 engine-flutter-autoroll@skia.org Roll Flutter Engine from 624730fb8840 to 725ebd708246 (4 revisions) (flutter/flutter#146959) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 9edcb26f5949 to 624730fb8840 (2 revisions) (flutter/flutter#146955) 2024-04-17 49699333+dependabot[bot]@users.noreply.github.com Bump github/codeql-action from 3.25.0 to 3.25.1 (flutter/flutter#146953) 2024-04-17 49699333+dependabot[bot]@users.noreply.github.com Bump peter-evans/create-pull-request from 6.0.3 to 6.0.4 (flutter/flutter#146954) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from cc73c5c124c4 to 9edcb26f5949 (4 revisions) (flutter/flutter#146946) 2024-04-17 goderbauer@google.com Bump meta to 1.14.0 (flutter/flutter#146925) 2024-04-17 ian@hixie.ch Make goldenFileComparator a field instead of a trivial property (flutter/flutter#146800) 2024-04-17 ian@hixie.ch Assert that the goldenFileComparator is a LocalFileComparator (flutter/flutter#146802) 2024-04-17 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Try to be more consistent about deleting test apps in devicelab logic (#146931)" (flutter/flutter#146947) 2024-04-17 103135467+sealesj@users.noreply.github.com Create web tests suite & runner_utils (flutter/flutter#146592) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 376c86e3bbb6 to cc73c5c124c4 (3 revisions) (flutter/flutter#146940) 2024-04-17 ian@hixie.ch Try to be more consistent about deleting test apps in devicelab logic (flutter/flutter#146931) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from bc6382e35365 to 376c86e3bbb6 (2 revisions) (flutter/flutter#146937) 2024-04-17 ian@hixie.ch Remove now-redundant tests for isForEnvironment (flutter/flutter#146804) 2024-04-17 137456488+flutter-pub-roller-bot@users.noreply.github.com Roll pub packages (flutter/flutter#146929) 2024-04-17 polinach@google.com Get rid of _NullElement. (flutter/flutter#146741) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 818191d11404 to bc6382e35365 (2 revisions) (flutter/flutter#146930) 2024-04-17 32538273+ValentinVignal@users.noreply.github.com Fix memory leak in paginated tables (flutter/flutter#146755) 2024-04-17 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Try to be more consistent about deleting test apps in devicelab logic. (#146856)" (flutter/flutter#146927) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 25b09e883dd8 to 818191d11404 (3 revisions) (flutter/flutter#146898) 2024-04-17 ian@hixie.ch Try to be more consistent about deleting test apps in devicelab logic. (flutter/flutter#146856) 2024-04-17 derekx@google.com Unpin frontend_server_client and roll packages (flutter/flutter#146650) 2024-04-17 engine-flutter-autoroll@skia.org Roll Packages from 90c876d to d39830e (4 revisions) (flutter/flutter#146895) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 0e9e2f419225 to 25b09e883dd8 (1 revision) (flutter/flutter#146889) 2024-04-17 6655696+guidezpl@users.noreply.github.com Reland: Update link branches to `main` (flutter/flutter#146882) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 4b949d7d6065 to 0e9e2f419225 (4 revisions) (flutter/flutter#146884) 2024-04-17 6655696+guidezpl@users.noreply.github.com Revert "Update link branches to `main`" (flutter/flutter#146880) 2024-04-17 tessertaha@gmail.com Fix `Tab` indicator image configuration doesn't inherit device pixel ratio (flutter/flutter#146812) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 1ea39b29ce8c to 4b949d7d6065 (1 revision) (flutter/flutter#146865) 2024-04-17 6655696+guidezpl@users.noreply.github.com Update link branches to `main` (flutter/flutter#146558) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 45c86593a09a to 1ea39b29ce8c (1 revision) (flutter/flutter#146863) 2024-04-17 ian@hixie.ch Rewrap some lines that are about to get much longer. (flutter/flutter#146803) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 0cdbc8a6e463 to 45c86593a09a (1 revision) (flutter/flutter#146862) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 31b67985de27 to 0cdbc8a6e463 (1 revision) (flutter/flutter#146861) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from e7d8c62d291a to 31b67985de27 (1 revision) (flutter/flutter#146859) 2024-04-17 engine-flutter-autoroll@skia.org Roll Flutter Engine from 4d69c0c95483 to e7d8c62d291a (11 revisions) (flutter/flutter#146857) 2024-04-16 nate.w5687@gmail.com Switch to relevant `Remote` constructors (flutter/flutter#146773) ...
This migrates Flutter to use the
@main
attribute introduced in Swift 5.3. The@NSApplicationMain
attribute is deprecated and will be removed in Swift 6. See: https://github.com/apple/swift-evolution/blob/main/proposals/0383-deprecate-uiapplicationmain-and-nsapplicationmain.mdThis change is split into two commits:
@NSApplicationMain
uses with@main
.flutter run -d macos
on each Flutter macOS app in this repository to verify the app migrates and launches successfully.Follow-up to #146707
Fixes #143044
Pre-launch Checklist
///
).If you need help, consider asking for advice on the #hackers-new channel on Discord.