Skip to content

Conversation

@tarrinneal
Copy link
Contributor

@tarrinneal tarrinneal commented Jul 28, 2023

Adds support for enums as parameters and return types.

Dart, C++, Java, Kotlin, Objective-C, and swift:
Primitive synchronous non-null
Primitive synchronous nullable
Primitive asynchronous non-null
Primitive asynchronous nullable
Primitive Flutter api non-null
Primitive flutter api nullable

Objective-C:
Class property nullable

Also fixes an issue with nullable enums in classes on objc. This fix required a breaking change that nested all nullable enums in a wrapper class to allow nullability.

Also adds the ability to format files before tests run (to make my life better)

Also replaces #4756

Also adds objc prefixes to enums

fixes: flutter/flutter#87307
fixes: flutter/flutter#118733

@tarrinneal tarrinneal force-pushed the enums branch 5 times, most recently from 0f05d58 to 6958a07 Compare August 8, 2023 19:32
@tarrinneal
Copy link
Contributor Author

(The more I see FooEnumBox the less I like that suggestion, but I still don't have a better idea. I'll just take comfort in the fact that nullable enums will probably be rare, and ObjC generation is likely decreasing, so the intersection should be rare and shrinking.)

better or worse than wrapper?

@tarrinneal tarrinneal added autosubmit Merge PR when tree becomes green via auto submit App and removed autosubmit Merge PR when tree becomes green via auto submit App labels Aug 25, 2023
Copy link
Collaborator

@stuartmorgan-g stuartmorgan-g left a comment

Choose a reason for hiding this comment

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

New changes also LGTM. Thanks for fixing that existing missing prefix issue; I'm surprised/embarassed I didn't notice it when doing conversions.

@stuartmorgan-g stuartmorgan-g added the autosubmit Merge PR when tree becomes green via auto submit App label Aug 28, 2023
@auto-submit auto-submit bot merged commit 94ba82c into flutter:main Aug 28, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Aug 28, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Aug 28, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Aug 28, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Aug 28, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Aug 28, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Aug 29, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Aug 29, 2023
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request Aug 29, 2023
flutter/packages@383bffa...d7d3150

2023-08-29 [email protected] [rfw] Implement /* block comments */ in the text format (flutter/packages#4769)
2023-08-29 49699333+dependabot[bot]@users.noreply.github.com Bump github/codeql-action from 2.21.4 to 2.21.5 (flutter/packages#4810)
2023-08-28 [email protected] Roll Flutter from cd3aeef to ec387a4 (15 revisions) (flutter/packages#4807)
2023-08-28 49699333+dependabot[bot]@users.noreply.github.com [pigeon]: Bump org.jetbrains.kotlin:kotlin-gradle-plugin from 1.9.0 to 1.9.10 in /packages/pigeon/platform_tests/test_plugin/android (flutter/packages#4798)
2023-08-28 [email protected] Fix  popping repeated pages unexpectedly (flutter/packages#4763)
2023-08-28 [email protected] [pigeon] primitive enums (flutter/packages#4580)
2023-08-27 [email protected] Roll Flutter from 229b74d to cd3aeef (4 revisions) (flutter/packages#4777)
2023-08-26 [email protected] Roll Flutter from 61d9f55 to 229b74d (13 revisions) (flutter/packages#4776)
2023-08-25 [email protected] Roll Flutter from deeb811 to 61d9f55 (25 revisions) (flutter/packages#4774)
2023-08-25 49699333+dependabot[bot]@users.noreply.github.com Bump actions/checkout from 3.5.3 to 3.6.0 (flutter/packages#4770)
2023-08-24 [email protected] [css_colors] docs: Update deprecated link address (flutter/packages#4537)
2023-08-24 [email protected] Roll Flutter (stable) from efbf63d to e1e4722 (3 revisions) (flutter/packages#4767)
2023-08-24 [email protected] Roll Flutter from bd836cc to deeb811 (17 revisions) (flutter/packages#4766)

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 [email protected],[email protected] 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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
@reidbaker reidbaker mentioned this pull request Sep 15, 2023
11 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[pigeon] ObjC generator doesn't handle nullable enum fields correctly pigeon: implement primitive enum return values and arguments

2 participants