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

[pointer_interceptor] Remove implements from app-facing package #6699

Merged
merged 2 commits into from
May 9, 2024

Conversation

bparrishMines
Copy link
Contributor

@bparrishMines bparrishMines commented May 9, 2024

Dart unit tests started failing for pointer_interceptor due to the implements tag in the app facing package. This plugin is federated for ios and web, so it looks like the error message is valid.

Plugin pointer_interceptor:ios provides an implementation for pointer_interceptor_platform_interface and also references a default implementation for pointer_interceptor_ios, which is currently not supported. Ask the maintainers of pointer_interceptor to either remove the implementation via `implements: pointer_interceptor_platform_interface` or avoid referencing a default implementation via `platforms: ios: default_package: pointer_interceptor_ios`.


00:00 +0 -1: loading /b/s/w/ir/x/w/packages/packages/pointer_interceptor/pointer_interceptor/test/tests_exist_elsewhere_test.dart [E]                                                                  
  Error: Please resolve the plugin pubspec errors
  package:flutter_tools/src/base/common.dart 10:3          throwToolExit
  package:flutter_tools/src/flutter_plugins.dart 1214:5    resolvePlatformImplementation
  package:flutter_tools/src/flutter_plugins.dart 1418:55   generateMainDartWithPluginRegistrant
  ===== asynchronous gap ===========================
  package:flutter_tools/src/test/test_compiler.dart 163:9  TestCompiler._onCompilationRequest
  
  TimeoutException after 0:12:00.000000: Test timed out after 12 minutes.
  package:test_api/src/backend/invoker.dart 338:28  Invoker._handleError.<fn>
  dart:async/zone.dart 1391:47                      _rootRun
  dart:async/zone.dart 1301:19                      _CustomZone.run
  package:test_api/src/backend/invoker.dart 336:10  Invoker._handleError
  package:test_api/src/backend/invoker.dart 291:9   Invoker.heartbeat.<fn>.<fn>
  dart:async/zone.dart 1399:13                      _rootRun
  dart:async/zone.dart 1301:19                      _CustomZone.run
  package:test_api/src/backend/invoker.dart 290:38  Invoker.heartbeat.<fn>
  dart:async-patch/timer_patch.dart 18:15           Timer._createTimer.<fn>
  dart:isolate-patch/timer_impl.dart 398:19         _Timer._runTimers
  dart:isolate-patch/timer_impl.dart 429:5          _Timer._handleMessage
  dart:isolate-patch/isolate_patch.dart 184:12      _RawReceivePort._handleMessage
  

To run this test again: /b/s/w/ir/x/w/flutter/bin/cache/dart-sdk/bin/dart test 

This removes the tag and does a manual roll.

Pre-launch Checklist

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

@bparrishMines bparrishMines changed the title remove implements from pointer_interceptor [pointer_interceptor] Remove implements from app-facing package May 9, 2024
@bparrishMines bparrishMines changed the title [pointer_interceptor] Remove implements from app-facing package [pointer_interceptor] Remove implements from app-facing package May 9, 2024
Copy link
Member

@ditman ditman left a comment

Choose a reason for hiding this comment

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

LGTM, good fix! This must be a new check, because federation happened a while ago (?)


* Updates support matrix in README to indicate that iOS 11 is no longer supported.
* Clients on versions of Flutter that still support iOS 11 can continue to use this
package with iOS 11, but will not receive any further updates to the iOS implementation.
* Removes invalid `implements` tag in pubspec.
Copy link
Member

Choose a reason for hiding this comment

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

Publishing for this change could be omitted, I think?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yea, I wasn't sure whether this affected clients or not. I did it just in case.

@ditman ditman added the autosubmit Merge PR when tree becomes green via auto submit App label May 9, 2024
@auto-submit auto-submit bot merged commit 4e79678 into flutter:main May 9, 2024
78 checks passed
@bparrishMines bparrishMines deleted the fix_pi branch May 9, 2024 02:28
@Gustl22
Copy link

Gustl22 commented May 9, 2024

This must be a new check, because federation happened a while ago (?)

Yes, this error message was introduced in flutter/flutter#145258, because the exisiting plugin resolution did allow this despite having an inconsistent dependency tree.

Thanks for applying this!

@ditman
Copy link
Member

ditman commented May 9, 2024

@Gustl22 thanks for adding this, I totally didn't catch the inconsistency during manual review!

auto-submit bot pushed a commit to flutter/flutter that referenced this pull request May 10, 2024
flutter/packages@8de142d...6c4482a

2024-05-09 15619084+vashworth@users.noreply.github.com [image_picker_ios] Adds Swift Package Manager compatibility  (flutter/packages#6696)
2024-05-09 goderbauer@google.com [flutter_lints] Rev to 4.0.0; prepare for publishing (flutter/packages#6695)
2024-05-09 10687576+bparrishMines@users.noreply.github.com [pointer_interceptor] Remove `implements` from app-facing package (flutter/packages#6699)
2024-05-08 15619084+vashworth@users.noreply.github.com Temporarily add empty header files to video_player_avfoundation so include directory is downloaded (flutter/packages#6694)
2024-05-08 98614782+auto-submit[bot]@users.noreply.github.com Reverts "[image_picker_ios] Adds Swift Package Manager compatibility to image_picker_ios (#6617)" (flutter/packages#6693)
2024-05-08 15619084+vashworth@users.noreply.github.com [image_picker_ios] Adds Swift Package Manager compatibility to image_picker_ios (flutter/packages#6617)
2024-05-08 15619084+vashworth@users.noreply.github.com [video_player_avfoundation] Adds Swift Package Manager compatibility (flutter/packages#6675)
2024-05-08 737941+loic-sharma@users.noreply.github.com [ios_platform_images] Add Swift Package Manager support (flutter/packages#6684)

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
TecHaxter pushed a commit to TecHaxter/flutter_packages that referenced this pull request May 22, 2024
…utter#6699)

Dart unit tests started failing for `pointer_interceptor` due to the `implements` tag in the app facing package. This plugin is federated for ios and web, so it looks like the error message is valid.

```
Plugin pointer_interceptor:ios provides an implementation for pointer_interceptor_platform_interface and also references a default implementation for pointer_interceptor_ios, which is currently not supported. Ask the maintainers of pointer_interceptor to either remove the implementation via `implements: pointer_interceptor_platform_interface` or avoid referencing a default implementation via `platforms: ios: default_package: pointer_interceptor_ios`.

00:00 +0 -1: loading /b/s/w/ir/x/w/packages/packages/pointer_interceptor/pointer_interceptor/test/tests_exist_elsewhere_test.dart [E]                                                                  
  Error: Please resolve the plugin pubspec errors
  package:flutter_tools/src/base/common.dart 10:3          throwToolExit
  package:flutter_tools/src/flutter_plugins.dart 1214:5    resolvePlatformImplementation
  package:flutter_tools/src/flutter_plugins.dart 1418:55   generateMainDartWithPluginRegistrant
  ===== asynchronous gap ===========================
  package:flutter_tools/src/test/test_compiler.dart 163:9  TestCompiler._onCompilationRequest
  
  TimeoutException after 0:12:00.000000: Test timed out after 12 minutes.
  package:test_api/src/backend/invoker.dart 338:28  Invoker._handleError.<fn>
  dart:async/zone.dart 1391:47                      _rootRun
  dart:async/zone.dart 1301:19                      _CustomZone.run
  package:test_api/src/backend/invoker.dart 336:10  Invoker._handleError
  package:test_api/src/backend/invoker.dart 291:9   Invoker.heartbeat.<fn>.<fn>
  dart:async/zone.dart 1399:13                      _rootRun
  dart:async/zone.dart 1301:19                      _CustomZone.run
  package:test_api/src/backend/invoker.dart 290:38  Invoker.heartbeat.<fn>
  dart:async-patch/timer_patch.dart 18:15           Timer._createTimer.<fn>
  dart:isolate-patch/timer_impl.dart 398:19         _Timer._runTimers
  dart:isolate-patch/timer_impl.dart 429:5          _Timer._handleMessage
  dart:isolate-patch/isolate_patch.dart 184:12      _RawReceivePort._handleMessage
  
To run this test again: /b/s/w/ir/x/w/flutter/bin/cache/dart-sdk/bin/dart test 
```

This removes the tag and does a manual roll.
arc-yong pushed a commit to Arctuition/packages-arc that referenced this pull request Jun 14, 2024
…utter#6699)

Dart unit tests started failing for `pointer_interceptor` due to the `implements` tag in the app facing package. This plugin is federated for ios and web, so it looks like the error message is valid.

```
Plugin pointer_interceptor:ios provides an implementation for pointer_interceptor_platform_interface and also references a default implementation for pointer_interceptor_ios, which is currently not supported. Ask the maintainers of pointer_interceptor to either remove the implementation via `implements: pointer_interceptor_platform_interface` or avoid referencing a default implementation via `platforms: ios: default_package: pointer_interceptor_ios`.

00:00 +0 -1: loading /b/s/w/ir/x/w/packages/packages/pointer_interceptor/pointer_interceptor/test/tests_exist_elsewhere_test.dart [E]                                                                  
  Error: Please resolve the plugin pubspec errors
  package:flutter_tools/src/base/common.dart 10:3          throwToolExit
  package:flutter_tools/src/flutter_plugins.dart 1214:5    resolvePlatformImplementation
  package:flutter_tools/src/flutter_plugins.dart 1418:55   generateMainDartWithPluginRegistrant
  ===== asynchronous gap ===========================
  package:flutter_tools/src/test/test_compiler.dart 163:9  TestCompiler._onCompilationRequest
  
  TimeoutException after 0:12:00.000000: Test timed out after 12 minutes.
  package:test_api/src/backend/invoker.dart 338:28  Invoker._handleError.<fn>
  dart:async/zone.dart 1391:47                      _rootRun
  dart:async/zone.dart 1301:19                      _CustomZone.run
  package:test_api/src/backend/invoker.dart 336:10  Invoker._handleError
  package:test_api/src/backend/invoker.dart 291:9   Invoker.heartbeat.<fn>.<fn>
  dart:async/zone.dart 1399:13                      _rootRun
  dart:async/zone.dart 1301:19                      _CustomZone.run
  package:test_api/src/backend/invoker.dart 290:38  Invoker.heartbeat.<fn>
  dart:async-patch/timer_patch.dart 18:15           Timer._createTimer.<fn>
  dart:isolate-patch/timer_impl.dart 398:19         _Timer._runTimers
  dart:isolate-patch/timer_impl.dart 429:5          _Timer._handleMessage
  dart:isolate-patch/isolate_patch.dart 184:12      _RawReceivePort._handleMessage
  
To run this test again: /b/s/w/ir/x/w/flutter/bin/cache/dart-sdk/bin/dart test 
```

This removes the tag and does a manual roll.
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: pointer_interceptor
Projects
None yet
3 participants