Skip to content

[fuchsia] Fix portable_ui_test.h includes for newer Fuchsia SDKs - #195420

Merged
auto-submit[bot] merged 1 commit into
flutter:masterfrom
jrwang:fuchsia-portable-ui-test-includes
Oct 28, 2026
Merged

auto-submit[bot] merged 1 commit into
flutter:masterfrom
jrwang:fuchsia-portable-ui-test-includes

Conversation

@jrwang

@jrwang jrwang commented Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

The Fuchsia Linux SDK roll into Flutter has not landed since 2026-09-28. Every
roll attempt (for example #195418) fails Linux linux_fuchsia_tests because
text-input-test, touch-input-test, and mouse-input-test no longer compile:

portable_ui_test.h:8:10: fatal error: 'fuchsia/sysmem2/cpp/fidl.h' file not found
portable_ui_test.h:10:10: fatal error: 'fuchsia/ui/composition/cpp/fidl.h' file not found

portable_ui_test.h includes the fuchsia.sysmem2 and fuchsia.ui.composition
bindings, but only portable_ui_test.cc uses them, and both are private deps
of :portable_ui_test. The tests were only finding these headers transitively
through fuchsia.accessibility.semantics -> fuchsia.ui.gfx, and
https://fuchsia-review.googlesource.com/c/fuchsia/+/1617688 removed those
fuchsia.ui.gfx dependencies.

This PR:

  • Drops the fuchsia.sysmem2 and fuchsia.ui.composition includes from
    portable_ui_test.h.
  • Includes fuchsia.ui.composition in portable_ui_test.cc, which uses it
    (fuchsia.sysmem2 is already included there).
  • Includes fuchsia.ui.observation.geometry directly in portable_ui_test.h,
    which uses its types but was previously getting the header through
    fuchsia.ui.test.scene.

This builds against both the currently pinned SDK and newer SDKs. It is a
follow-up to #193244, which removed the unused fuchsia/sysmem/cpp/fidl.h
includes for the same Fuchsia change.

Pre-launch Checklist

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

portable_ui_test.h includes the fuchsia.sysmem2 and fuchsia.ui.composition
bindings, but only portable_ui_test.cc uses them, and they are private deps of
:portable_ui_test. The text-input, touch-input, and mouse-input tests only
found these headers through fuchsia.accessibility.semantics ->
fuchsia.ui.gfx, whose dependencies on them were removed in
https://fuchsia-review.googlesource.com/c/fuchsia/+/1617688. Since then, the
Fuchsia SDK roll has been failing to compile these tests.

Move the fuchsia.ui.composition include to portable_ui_test.cc
(fuchsia.sysmem2 is already included there) and include
fuchsia.ui.observation.geometry directly, since the header uses its types.
@github-actions github-actions Bot added engine flutter/engine related. See also e: labels. platform-fuchsia Fuchsia code specifically labels Oct 27, 2026
@jrwang
jrwang marked this pull request as ready for review October 27, 2026 14:50
@jrwang jrwang added the CICD Run CI/CD label Oct 27, 2026

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

Copy link
Copy Markdown
Contributor

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 updates the include directives in the Fuchsia portable UI integration test utility files. It moves the inclusion of <fuchsia/ui/composition/cpp/fidl.h> from the header file (portable_ui_test.h) to the source file (portable_ui_test.cc), removes the unused <fuchsia/sysmem2/cpp/fidl.h> header, and adds <fuchsia/ui/observation/geometry/cpp/fidl.h> to the header file. There are no review comments, and I have no additional feedback to provide.

@jrwang jrwang added the autosubmit Merge PR when tree becomes green via auto submit App label Oct 28, 2026
@auto-submit
auto-submit Bot added this pull request to the merge queue Oct 28, 2026
Merged via the queue into flutter:master with commit 7102630 Oct 28, 2026
40 checks passed
@flutter-dashboard flutter-dashboard Bot removed the autosubmit Merge PR when tree becomes green via auto submit App label Oct 28, 2026
auto-submit Bot pushed a commit to flutter/packages that referenced this pull request Oct 28, 2026
flutter/flutter@d4c8577...0c2473c

2026-10-28 [email protected] Roll Packages from a8549ae to 13d38e0 (9 revisions) (flutter/flutter#195488)
2026-10-28 [email protected] Use int.oneBitCount in PersistentHashMap and scope 53-bit caps to JS (flutter/flutter#195005)
2026-10-28 [email protected] Roll pub packages (flutter/flutter#195483)
2026-10-28 [email protected] [iPhone Duo] Use the correct UIScreen to report the display size and update when fold/unfold (flutter/flutter#195199)
2026-10-28 [email protected] [fuchsia] Fix portable_ui_test.h includes for newer Fuchsia SDKs (flutter/flutter#195420)
2026-10-28 [email protected] Change default pipeline options to match production draw calls (flutter/flutter#194597)
2026-10-28 [email protected] Roll Fuchsia Test Scripts from 2T18KC7-LDQtmQiLP... to xl1LWBuppzu-BnOzV... (flutter/flutter#195450)
2026-10-27 [email protected] [flutter_tools] Inject dependencies into Darwin build targets, native assets, and Xcode build settings (flutter/flutter#194052)
2026-10-27 [email protected] Revert: Reland square corners fix (flutter/flutter#195436)
2026-10-27 [email protected] [flutter_tools] Add DeviceService app launch and flutter run support for tool extensions (flutter/flutter#194589)
2026-10-27 [email protected] [engine] Honor targetWidth/targetHeight for animated images (flutter/flutter#194615)
2026-10-27 [email protected] [Android][a11y] Set visibleToUser=false for hidden semantics nodes (flutter/flutter#194411)
2026-10-27 [email protected] Fix repo deletion test flake (flutter/flutter#195349)
2026-10-27 [email protected] Roll Packages from 23a05b6 to a8549ae (10 revisions) (flutter/flutter#195434)
2026-10-27 [email protected] [web] Capture pointers to the Flutter view so drags survive platform view iframes (flutter/flutter#195187)
2026-10-27 [email protected] [web] Add opt-in raw samples, measured sample count and warm-up phase hook to the web benchmark recorder (flutter/flutter#195118)
2026-10-27 [email protected] Link migration guide in deprecation messages (flutter/flutter#195361)
2026-10-27 [email protected] Pin basic_material_app_macos__compile to macOS 26 (flutter/flutter#195429)
2026-10-27 [email protected] Add benchmark for warmed pipeline usage (flutter/flutter#195001)
2026-10-27 [email protected] [flutter_tools] Add device log streaming support to DeviceService and ExtensionBackedDevice (flutter/flutter#194964)
2026-10-27 [email protected] Roll Dart SDK from 1d16c04dc346 to 65fc979759ca (4 revisions) (flutter/flutter#195383)

If this roll has caused a breakage, revert this CL and set the roller
to dry run mode using the controls here:
https://autoroll.skia.org/r/flutter-packages
Please CC [email protected],[email protected] on the revert to ensure that a human
is aware of the problem.

To file a bug in Packages: 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
suryaKommana2662 pushed a commit to suryaKommana2662/flutter that referenced this pull request Oct 29, 2026
…tter#195420)

The Fuchsia Linux SDK roll into Flutter has not landed since 2026-09-28.
Every
roll attempt (for example flutter#195418) fails `Linux linux_fuchsia_tests`
because
`text-input-test`, `touch-input-test`, and `mouse-input-test` no longer
compile:

```
portable_ui_test.h:8:10: fatal error: 'fuchsia/sysmem2/cpp/fidl.h' file not found
portable_ui_test.h:10:10: fatal error: 'fuchsia/ui/composition/cpp/fidl.h' file not found
```

`portable_ui_test.h` includes the `fuchsia.sysmem2` and
`fuchsia.ui.composition`
bindings, but only `portable_ui_test.cc` uses them, and both are private
`deps`
of `:portable_ui_test`. The tests were only finding these headers
transitively
through `fuchsia.accessibility.semantics` -> `fuchsia.ui.gfx`, and
https://fuchsia-review.googlesource.com/c/fuchsia/+/1617688 removed
those
`fuchsia.ui.gfx` dependencies.

This PR:

- Drops the `fuchsia.sysmem2` and `fuchsia.ui.composition` includes from
  `portable_ui_test.h`.
- Includes `fuchsia.ui.composition` in `portable_ui_test.cc`, which uses
it
  (`fuchsia.sysmem2` is already included there).
- Includes `fuchsia.ui.observation.geometry` directly in
`portable_ui_test.h`,
  which uses its types but was previously getting the header through
  `fuchsia.ui.test.scene`.

This builds against both the currently pinned SDK and newer SDKs. It is
a
follow-up to flutter#193244, which removed the unused
`fuchsia/sysmem/cpp/fidl.h`
includes for the same Fuchsia change.

## Pre-launch Checklist

- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [AI contribution guidelines] and understand my
responsibilities, or I am not using AI tools.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant in-code documentation (doc comments with
`///`).
- [x] If this PR introduces a new feature or capability, I created and
linked a website documentation issue or PR in [flutter/website] (or
verified none is needed).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [ ] All existing and new tests are passing.

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

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[AI contribution guidelines]:
https://github.com/flutter/flutter/blob/main/CONTRIBUTING.ai.md
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[flutter/website]: https://github.com/flutter/website
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CICD Run CI/CD engine flutter/engine related. See also e: labels. platform-fuchsia Fuchsia code specifically

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants