Commit Graph

20 Commits

Author SHA1 Message Date
August
dc6f94a878
refactor: Remove throwOnPluginPubspecError flag for plugin validation (#144214)
Part of #137040 and #80374

The flag `throwOnPluginPubspecError` never actually was enabled during production in #79669, but only in some dart plugin tests. And in the tests the case of the error when enabling the flag was not explicitly tested. The only thing tested was, that it is not thrown when disabled.

As explained [here](https://github.com/flutter/flutter/pull/142035#discussion_r1484237904) the only case, where this error could be thrown is, when a dart implementation and a native inline implementation are provided simultaneously. But throwing an exception there is a wrong behavior, as both can coexist in a plugin package, thus in the pubspec file.

Disabling the flag means, that the error is not thrown and not shown to the user. This is the case in production (contrary to the dart plugin tests), which acts like these plugin cases of implementations are just skipped. And this is what actually should be done.

In conclusion, I think the case of coexisting dart and native implementation in pubspec was just overlooked and therefore this error validation was introduced, which is not necessary or even valid.

For more discussion, see: https://discord.com/channels/608014603317936148/608022056616853515/1200194937791205436

  - This is tricky: I already added a test in #142035, which finally complies with the other tests, by removing the flag. So I think it falls in the category of "remove dead code".
  - Theoretically this is a breaking change, as removing / altering some tests. But the flag actually was never valid or used, so IDK. But this may not does fall in the category of "contributed tests".
2024-03-07 23:04:08 +00:00
Gustl22
b4f925e85a
refactor: Differentiate pubspec and resolution errors for plugins (#142035)
Part of #137040 and #80374

- Differentiate pubspec and resolution errors
- Rename platform to platformKey
- Add TODO for rework logic of flag [throwOnPluginPubspecError]
- Swap for loop: handle by platform and then by plugin
2024-02-26 19:45:18 +00:00
Anis Alibegić
e063f56832
Fixed few typos (#141543)
I continued [my mission](https://github.com/flutter/flutter/pull/141431) to find as many typos as I could. This time it's a smaller set than before.

There is no need for issues since it's a typo fix.
2024-01-16 21:40:08 +00:00
stuartmorgan
80cee59878
Don't rethrow Dart plugin registration exceptions (#122111)
Don't rethrow Dart plugin registration exceptions
2023-03-28 15:08:57 +00:00
stuartmorgan
62116f998b
Improve Dart plugin registration handling (#122046)
Improve Dart plugin registration handling
2023-03-09 21:33:38 +00:00
Jonah Williams
db829c1e20
[flutter_tools] migrate more unit tests to null safety (#106153) 2022-06-17 21:34:27 -07:00
Alexandre Ardhuin
07f1c20474
add missing trailing commas in list/set/map literals (#102585) 2022-04-27 09:15:35 +02:00
Jonah Williams
944fcda67f
[flutter_tools] remove UWP tooling (#102174) 2022-04-26 11:19:07 -07:00
gaaclarke
912873baa7
Relands "Starts using the --source flag to compile the dart registrant. (#98046)" (#100572) 2022-03-28 18:15:10 -07:00
gaaclarke
97258979df
Revert "Starts using the --source flag to compile the dart registrant. (#98046) (#100493) 2022-03-21 13:40:23 -07:00
gaaclarke
fdcd14464c
Starts using the --source flag to compile the dart registrant. (#98046)
* Starts using the `--source` flag to compile the dart registrant.

* updated general.shard tests

* Fixed the resident compiler flow

* added integration test

* made the integration test self contained

* renamed generated_main to dart_plugin_registrant

* cleaned up for review

* added task runner for ci

* added bringup and TESTOWNERS

* updated failure message
2022-03-01 16:24:47 -08:00
stuartmorgan
25b2edbda0
Enable inline Dart plugin implementation on Desktop (#96610) 2022-01-19 09:35:23 -08:00
Jenn Magder
9e88fe328e
Remove globals_null_migrated.dart, move into globals.dart (#92861) 2021-11-01 17:18:03 -07:00
Emmanuel Garcia
2bdbe7238c
Rewire all Dart entrypoints when the Dart plugin registrant is used. (#91856) 2021-10-19 20:23:04 -07:00
stuartmorgan
23cea26715
Add dartPluginClass support for Android and iOS (#87991) 2021-10-01 16:03:04 -07:00
stuartmorgan
97fb8c0560
Fix Dart plugin registrant interaction with 'flutter test' (#90288)
Building an application for a desktop platform that transitively included any Dart-based plugins (such as path_provider) broke `flutter test`, because its compilation was overriding the provided main (in this case, the test main) with `generated_main.dart` if it was present. This PR:
- Changes the `flutter test` compilation path to update `generated_main.dart`, so that the tests will work, and will include any registered Dart plugins.
- Makes using `generated_main.dart` during recompile opt-in, to try to reduce the chance of a similar bug happening with other codepaths in the future.

Fixes https://github.com/flutter/flutter/issues/88794
2021-09-30 20:25:13 -07:00
Hattomo (TomohiroHattori)
08a70e7ac8
Enable avoid_escaping_inner_quotes lint (#81153) 2021-05-19 09:54:02 -07:00
Jonah Williams
63fc778f41
[flutter_tools] remove mocks from dart plugins test (#82413) 2021-05-13 13:14:04 -07:00
Alexandre Ardhuin
c03e7488b4
remove noop primitive operations (#82297) 2021-05-12 00:04:02 -07:00
Emmanuel Garcia
b0a63c4ffe
Reland the Dart plugin registry (#79669) 2021-04-23 15:34:04 -07:00