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

[plugin_platform_interface] Switch mixin to mixin class #5420

Merged
merged 1 commit into from
Nov 17, 2023

Conversation

stuartmorgan
Copy link
Contributor

The test mixin is currently declared as a class, which causes problems for projects with a minimum Dart version of 3.0. This switches it to mixin class; ideally it would just be a mixin, but in theory that could break something, so since this is such a core package in the ecosystem we want to be as conservative as possible. (While the breaking change would only in theory happen to test code, it's possible that someone ignored the visibleForTesting, and we have an easy way to avoid the possibility entirely.)

Fixes flutter/flutter#123241

Pre-launch Checklist

  • I read the Contributor Guide and followed the process outlined there for submitting PRs.
  • I read the Tree Hygiene wiki page, which explains my responsibilities.
  • I read and followed the relevant style guides and ran the auto-formatter. (Unlike the flutter/flutter repo, the flutter/packages repo does use dart format.)
  • I signed the CLA.
  • The title of the PR starts with the name of the package surrounded by square brackets, e.g. [shared_preferences]
  • I listed at least one issue that this PR fixes in the description above.
  • I updated pubspec.yaml with an appropriate new version according to the pub versioning philosophy, or this PR is exempt from version changes.
  • I updated CHANGELOG.md to add a description of the change, following repository CHANGELOG style.
  • I updated/added relevant documentation (doc comments with ///).
  • I added new tests to check the change I am making, or this PR is test-exempt.
  • All existing and new tests are passing.

The test mixin is currently declared as a `class`, which causes problems
for projects with a minimum Dart version of 3.0. This switches it to
`mixin class`; ideally it would just be a `mixin`, but in theory that
could break something, so since this is such a core package in the
ecosystem we want to be as conservative as possible. (While the breaking
change would only in theory happen to test code, it's possible that
someone ignored the `visibleForTesting`, and we have an easy way to
avoid the possibility entirely.)

Fixes flutter/flutter#123241
@flutter-dashboard
Copy link

It looks like this pull request may not have tests. Please make sure to add tests before merging. If you need an exemption to this rule, contact Hixie or stuartmorgan on the #hackers channel in Chat (don't just cc them here, they won't see it! Use Discord!).

If you are not sure if you need tests, consider this rule of thumb: the purpose of a test is to make sure someone doesn't accidentally revert the fix. Ask yourself, is there anything in your PR that you feel it is important we not accidentally revert back to how it was before your fix?

Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing.

@stuartmorgan
Copy link
Contributor Author

This is necessary in order to roll the repo minimums forward as usual for the stable release.

@stuartmorgan
Copy link
Contributor Author

test-exempt: the SDK minimum change is a test, since it would otherwise break compilation

@stuartmorgan stuartmorgan added the autosubmit Merge PR when tree becomes green via auto submit App label Nov 17, 2023
@auto-submit auto-submit bot merged commit a8bb833 into flutter:main Nov 17, 2023
80 checks passed
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Nov 20, 2023
fluttermirroringbot pushed a commit to flutter/flutter that referenced this pull request Nov 20, 2023
flutter/packages@07b4b29...c5443ad

2023-11-20 JeroenWeener@users.noreply.github.com [webview_flutter] Support for handling basic authentication requests (Platform Interface) (flutter/packages#5362)
2023-11-18 engine-flutter-autoroll@skia.org Roll Flutter from 53a57ad to 6cf9ab0 (31 revisions) (flutter/packages#5426)
2023-11-18 kevmoo@users.noreply.github.com [shared_preferences_web] migrate to pkg:web (flutter/packages#5414)
2023-11-18 stuartmorgan@google.com [ci] Roll minimum allowable Flutter to 3.10 (flutter/packages#5425)
2023-11-18 43054281+camsim99@users.noreply.github.com [path_provider_android]  Run tests on AVDs running Android 34 (flutter/packages#5222)
2023-11-17 tarrinneal@gmail.com [pigeon] isEnum, isClass, fix swift casting, default values, optional method arguments, named method arguments (flutter/packages#5355)
2023-11-17 stuartmorgan@google.com [plugin_platform_interface] Switch mixin to `mixin class` (flutter/packages#5420)
2023-11-17 stuartmorgan@google.com [go_router] Fixes use of `Iterable` (flutter/packages#5421)
2023-11-17 stuartmorgan@google.com [pigeon] Adds `analyzer` 6.x compatibility (flutter/packages#5418)
2023-11-17 stuartmorgan@google.com Update release step to 3.16 (flutter/packages#5416)
2023-11-17 kevmoo@users.noreply.github.com [file_selector_web] migrate to pkg:web (flutter/packages#5413)
2023-11-16 stuartmorgan@google.com [video_player] Improve macOS frame management (flutter/packages#5078)
2023-11-16 engine-flutter-autoroll@skia.org Roll Flutter from e8c2bb1 to 53a57ad (39 revisions) (flutter/packages#5412)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages-flutter-autoroll
Please CC flutter-ecosystem@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
HugoOlthof pushed a commit to moneybird/packages that referenced this pull request Dec 13, 2023
The test mixin is currently declared as a `class`, which causes problems for projects with a minimum Dart version of 3.0. This switches it to `mixin class`; ideally it would just be a `mixin`, but in theory that could break something, so since this is such a core package in the ecosystem we want to be as conservative as possible. (While the breaking change would only in theory happen to test code, it's possible that someone ignored the `visibleForTesting`, and we have an easy way to avoid the possibility entirely.)

Fixes flutter/flutter#123241
@reidbaker reidbaker mentioned this pull request Jan 12, 2024
arc-yong pushed a commit to Arctuition/packages-arc that referenced this pull request Jun 14, 2024
The test mixin is currently declared as a `class`, which causes problems for projects with a minimum Dart version of 3.0. This switches it to `mixin class`; ideally it would just be a `mixin`, but in theory that could break something, so since this is such a core package in the ecosystem we want to be as conservative as possible. (While the breaking change would only in theory happen to test code, it's possible that someone ignored the `visibleForTesting`, and we have an easy way to avoid the possibility entirely.)

Fixes flutter/flutter#123241
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
autosubmit Merge PR when tree becomes green via auto submit App p: plugin_platform_interface
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Change MockPlatformInterfaceMixin to be a mixin
2 participants