Skip to content

[pigeon] Produce a helpful error for bad method return type#11204

Merged
srawlins merged 6 commits intoflutter:mainfrom
srawlins:bad-return-type
Mar 11, 2026
Merged

[pigeon] Produce a helpful error for bad method return type#11204
srawlins merged 6 commits intoflutter:mainfrom
srawlins:bad-return-type

Conversation

@srawlins
Copy link
Contributor

@srawlins srawlins commented Mar 9, 2026

When we encounter an unexpected (or missing) method return type, we now produce a meaningful error instead of a null-pointer exception.

Fixes flutter/flutter#92639

Pre-Review Checklist

  • I read the [Contributor Guide] and followed the process outlined there for submitting PRs.
  • I read the [Tree Hygiene] page, which explains my responsibilities.
  • I read and followed the [relevant style guides] and ran [the auto-formatter].
  • 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 [linked to at least one issue that this PR fixes] in the description above.
  • I followed [the version and CHANGELOG instructions], using [semantic versioning] and the [repository CHANGELOG style], or I have commented below to indicate which documented exception this PR falls under[^1].
  • I updated/added any relevant documentation (doc comments with ///).
  • I added new tests to check the change I am making, or I have commented below to indicate which [test exemption] this PR falls under[^1].
  • All existing and new tests are passing.

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request improves error handling in Pigeon by providing a more informative error message for methods with unexpected or missing return types, preventing null-pointer exceptions. The changes are accompanied by relevant tests. My review includes a suggestion to fix a typo in a variable name for better code clarity and maintainability.

Copy link
Contributor

@tarrinneal tarrinneal left a comment

Choose a reason for hiding this comment

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

Good catch! Did you try to do this at some point and run across this failure?

@srawlins
Copy link
Contributor Author

No, I was just going through old bugs that seemed like they were related to types in Dart code. :D

@srawlins srawlins merged commit ecace66 into flutter:main Mar 11, 2026
81 checks passed
@srawlins srawlins deleted the bad-return-type branch March 11, 2026 15:22
github-merge-queue bot pushed a commit to flutter/flutter that referenced this pull request Mar 11, 2026
flutter/packages@ee460d6...ecace66

2026-03-11 [email protected] [pigeon] Produce a helpful error for bad
method return type (flutter/packages#11204)
2026-03-11 [email protected] [pigeon] Use hasLength and isEmpty in
tests for better failure messages (flutter/packages#11205)
2026-03-11 [email protected] [rfw] Opt out of icon tree shaking
(flutter/packages#11216)
2026-03-11 [email protected] [pigeon] Tidy imports and "ignore"
comments (flutter/packages#11149)
2026-03-11 49699333+dependabot[bot]@users.noreply.github.com
[dependabot]: Bump org.jetbrains.kotlin:kotlin-bom from 2.2.21 to 2.3.10
in /packages/pigeon/platform_tests/test_plugin/android
(flutter/packages#10984)
2026-03-11 [email protected] [pigeon] Improve casting and
nullability-handling in generated code (flutter/packages#11163)
2026-03-10 [email protected] Roll Flutter from
2ec61af to 195ae7b (36 revisions) (flutter/packages#11222)
2026-03-10 [email protected] [vector_graphics] Respect BoxFit parameter with
viewbox (flutter/packages#11012)
2026-03-10 [email protected] Add AI contribution guidelines to PR
checklist (flutter/packages#11195)
2026-03-10 [email protected] [video_player] Optimize caption
retrieval with binary search in VideoPlayerController
(flutter/packages#8347)

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] 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
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] missing error message when missing return type

2 participants