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

Add macOS plugin tooling #32718

Closed
stuartmorgan opened this issue May 14, 2019 · 1 comment · Fixed by #33636
Closed

Add macOS plugin tooling #32718

stuartmorgan opened this issue May 14, 2019 · 1 comment · Fixed by #33636
Assignees
Labels
a: desktop Running on desktop platform-mac Building on or for macOS specifically tool Affects the "flutter" command-line tool. See also t: labels.

Comments

@stuartmorgan
Copy link
Contributor

We'll need flutter_tool support for adding the native portions of plugins to the build, including fetching dependencies, plugin registrant generation, etc.

Most likely this will use CocoaPods, re-using tooling already built for iOS.

@stuartmorgan stuartmorgan added tool Affects the "flutter" command-line tool. See also t: labels. platform-mac Building on or for macOS specifically a: desktop Running on desktop labels May 14, 2019
@stuartmorgan stuartmorgan self-assigned this May 22, 2019
stuartmorgan added a commit to stuartmorgan/engine that referenced this issue May 22, 2019
Based on the iOS Flutter.podspec. This will be used for plugin
management via CocoaPods, as on iOS.

Part of flutter/flutter#32718
stuartmorgan added a commit to flutter/engine that referenced this issue May 22, 2019
Based on the iOS Flutter.podspec. This will be used for plugin
management via CocoaPods, as on iOS.

Part of flutter/flutter#32718
stuartmorgan added a commit to stuartmorgan/engine that referenced this issue May 23, 2019
As another step toward aligning the macOS plugin API with the iOS plugin
API, and with its final form, rename the plugin-related classes from
FLEPlugin* to FlutterPlugin*. This makes the names of the clasess the
same between iOS and macOS. Eventually they should actually merge, with
annotations/ifdefs for platform differences, but for now since the macOS
version uses the same method names and is simply a subset of the iOS
APIs (with one to-be-stabilized method that is macOS-specific) doing the
merge later won't be a breaking change.

Doing this now allows for building out plugin tooling and plugin
implementations on macOS without creating a growing body of code that
will experience a breaking change later.

See:
flutter/flutter#31735
flutter/flutter#32718
stuartmorgan added a commit to stuartmorgan/flutter that referenced this issue May 23, 2019
Adds a new macosPrefix, which serves the same purpose as iosPrefix but
for macOS plugins.

It is not yet used by the tooling, but this allows for plugins to start
to be written using it in preparation for tooling support for plugins.

Part of flutter#32718
stuartmorgan added a commit that referenced this issue May 24, 2019
Adds a new macosPrefix, which serves the same purpose as iosPrefix but
for macOS plugins.

It is not yet used by the tooling, but this allows for plugins to start
to be written using it in preparation for tooling support for plugins.

Part of #32718
stuartmorgan added a commit to flutter/engine that referenced this issue May 26, 2019
As another step toward aligning the macOS plugin API with the iOS plugin
API, and with its final form, rename the plugin-related classes from
FLEPlugin* to FlutterPlugin*. This makes the names of the clasess the
same between iOS and macOS. Eventually they should actually merge, with
annotations/ifdefs for platform differences, but for now since the macOS
version uses the same method names and is simply a subset of the iOS
APIs (with one to-be-stabilized method that is macOS-specific) doing the
merge later won't be a breaking change.

Doing this now allows for building out plugin tooling and plugin
implementations on macOS without creating a growing body of code that
will experience a breaking change later.

See:
flutter/flutter#31735
flutter/flutter#32718
huqiuser pushed a commit to huqiuser/engine that referenced this issue Jun 12, 2019
Based on the iOS Flutter.podspec. This will be used for plugin
management via CocoaPods, as on iOS.

Part of flutter/flutter#32718
huqiuser pushed a commit to huqiuser/engine that referenced this issue Jun 12, 2019
As another step toward aligning the macOS plugin API with the iOS plugin
API, and with its final form, rename the plugin-related classes from
FLEPlugin* to FlutterPlugin*. This makes the names of the clasess the
same between iOS and macOS. Eventually they should actually merge, with
annotations/ifdefs for platform differences, but for now since the macOS
version uses the same method names and is simply a subset of the iOS
APIs (with one to-be-stabilized method that is macOS-specific) doing the
merge later won't be a breaking change.

Doing this now allows for building out plugin tooling and plugin
implementations on macOS without creating a growing body of code that
will experience a breaking change later.

See:
flutter/flutter#31735
flutter/flutter#32718
kiku-jw pushed a commit to kiku-jw/flutter that referenced this issue Jun 14, 2019
Adds a new macosPrefix, which serves the same purpose as iosPrefix but
for macOS plugins.

It is not yet used by the tooling, but this allows for plugins to start
to be written using it in preparation for tooling support for plugins.

Part of flutter#32718
@github-actions
Copy link

This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of flutter doctor -v and a minimal reproduction of the issue.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Aug 29, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
a: desktop Running on desktop platform-mac Building on or for macOS specifically tool Affects the "flutter" command-line tool. See also t: labels.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant