-
Notifications
You must be signed in to change notification settings - Fork 29.7k
Enable inline Dart plugin implementation on Desktop #96610
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
fluttergithubbot
merged 1 commit into
flutter:master
from
stuartmorgan-g:desktop-inline-dart-plugins
Jan 19, 2022
Merged
Enable inline Dart plugin implementation on Desktop #96610
fluttergithubbot
merged 1 commit into
flutter:master
from
stuartmorgan-g:desktop-inline-dart-plugins
Jan 19, 2022
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Currently a plugin with a Linux, macOS, and/or Windows Dart implementation that is inline, rather than federated, will not get Dart autoregistration, which isn't the intended behavior. Fixing that directly would be a breaking change for already-published plugins with inline Dart implementations, because it would require a `registerWith()` method at build time that wasn't previously required. In order to allow the intended behavior going forward without breaking existing plugins, this enables auto-registation for inline Dart-only desktop implementations only if the plugin's min Flutter SDK requirement is 2.11 or higher. Fixes flutter#87862
blasten
reviewed
Jan 19, 2022
| final semver.Version? minFlutterVersion = flutterConstraint != null && | ||
| flutterConstraint is semver.VersionRange ? flutterConstraint.min : null; | ||
| final bool hasMinVersionForImplementsRequirement = minFlutterVersion != null && | ||
| minFlutterVersion.compareTo(semver.Version(2, 11, 0)) >= 0; |
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.
nice
blasten
approved these changes
Jan 19, 2022
blasten
left a comment
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!
jambestwick
reviewed
Jan 20, 2022
jambestwick
left a comment
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.
vi
engine-flutter-autoroll
added a commit
to engine-flutter-autoroll/plugins
that referenced
this pull request
Feb 4, 2022
clocksmith
pushed a commit
to clocksmith/flutter
that referenced
this pull request
Mar 8, 2022
7 tasks
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Currently a plugin with a Linux, macOS, and/or Windows Dart
implementation that is inline, rather than federated, will not get Dart
autoregistration, which isn't the intended behavior.
Fixing that directly would be a breaking change for already-published
plugins with inline Dart implementations, because it would require a
registerWith()method at build time that wasn't previously required.In order to allow the intended behavior going forward without breaking
existing plugins, this enables auto-registation for inline Dart-only
desktop implementations only if the plugin's min Flutter SDK requirement
is 2.11 or higher.
Fixes #87862
Pre-launch Checklist
///).