Sitelet https://github.com/flutter/flutter/pull/191389
Skip to content

Add FlViewRendererSubsurface - #191389

Merged
mattkae merged 8 commits into
flutter:masterfrom
robert-ancell:linux-subsurface-renderer
Aug 24, 2026
Merged

mattkae merged 8 commits into
flutter:masterfrom
robert-ancell:linux-subsurface-renderer

Conversation

@robert-ancell

Copy link
Copy Markdown
Contributor

Add a Wayland subsurface based view renderer that blits engine frames directly to a subsurface using an EGL context that shares resources with the engine. The EGL context and window surface are managed by a new FlSubsurfaceEGL class, and window resizing is synchronized with the subsurface so the two stay in step.

Add FlSubsurface, expose the engine's EGL display and context through FlOpenGLManager, wire up the wayland-client and wayland-egl build configs, and use this renderer automatically whenever running on Wayland (falling back to the standard OpenGL renderer otherwise).

@robert-ancell
robert-ancell requested a review from a team as a code owner August 19, 2026 23:50
@flutter-dashboard flutter-dashboard Bot added the CICD Run CI/CD label Aug 19, 2026
@robert-ancell
robert-ancell requested a review from mattkae August 19, 2026 23:50
@flutter-dashboard

Copy link
Copy Markdown

It looks like this pull request may not have tests. Please make sure to add tests or get an explicit test exemption before merging.

If you are not sure if you need tests, consider this rule of thumb: the purpose of a test is to make sure someone doesn't accidentally revert the fix. Ask yourself, is there anything in your PR that you feel it is important we not accidentally revert back to how it was before your fix?

Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing. If you believe this PR qualifies for a test exemption, contact "@test-exemption-reviewer" in the #hackers channel in Discord (don't just cc them here, they won't see it!). The test exemption team is a small volunteer group, so all reviewers should feel empowered to ask for tests, without delegating that responsibility entirely to the test exemption group.

@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 introduces support for rendering Flutter content directly to a Wayland subsurface using OpenGL by adding FlSubsurface, FlSubsurfaceEGL, and FlViewRendererSubsurface, and integrating them into FlView when running on a Wayland display. Feedback on these changes highlights critical issues, including a compilation error from calling the non-existent wl_compositor_destroy, a missing <gdk/gdkwayland.h> include, and potential race conditions in FlViewRendererSubsurface that require proper mutex locking. Additionally, requesting a GLES 3.0 context is recommended to ensure glBlitFramebuffer compatibility, along with optimizing performance by reusing a persistent framebuffer object across frames.

Comment thread engine/src/flutter/shell/platform/linux/fl_subsurface.cc
Comment thread engine/src/flutter/shell/platform/linux/fl_view_renderer_subsurface.cc Outdated
Comment thread engine/src/flutter/shell/platform/linux/fl_subsurface_egl.cc
Comment thread engine/src/flutter/shell/platform/linux/fl_view.cc
Comment thread engine/src/flutter/shell/platform/linux/fl_subsurface_egl.cc
Comment thread engine/src/flutter/shell/platform/linux/fl_subsurface_egl.cc
Comment thread engine/src/flutter/shell/platform/linux/fl_subsurface_egl.cc Outdated
Add a Wayland subsurface based view renderer that blits engine frames
directly to a subsurface using an EGL context that shares resources with
the engine. The EGL context and window surface are managed by a new
FlSubsurfaceEGL class, and window resizing is synchronized with the
subsurface so the two stay in step.

Add FlSubsurface, expose the engine's EGL display and context through
FlOpenGLManager, wire up the wayland-client and wayland-egl build
configs, and use this renderer automatically whenever running on
Wayland (falling back to the standard OpenGL renderer otherwise).
@robert-ancell
robert-ancell force-pushed the linux-subsurface-renderer branch from 00b0511 to e0ce599 Compare August 19, 2026 23:59
Create the framebuffer used to read the engine's frame texture lazily on
the first present and reuse it for subsequent frames, instead of
generating and deleting it every frame. The framebuffer is deleted in
dispose while its context is current.
@robert-ancell
robert-ancell force-pushed the linux-subsurface-renderer branch from 08ddfdb to f9f95b6 Compare August 20, 2026 00:06
Hold frame_mutex in unrealize while releasing the compositor, EGL and
subsurface objects so the raster thread cannot use them in present_layers
concurrently. Move the null checks in present_layers inside the lock so a
frame in flight cannot use objects that unrealize is releasing.
@github-actions github-actions Bot added engine flutter/engine related. See also e: labels. platform-linux Building on or for Linux specifically a: desktop Running on desktop team-linux Owned by the Linux platform team labels Aug 20, 2026
glBlitFramebuffer is a GLES3 / OpenGL 3.0 function that may be missing or
broken on some drivers. When the subsurface's EGL context cannot use it,
draw the engine frame to the window surface with the compositor shader
instead, matching the fallback the OpenGL renderer already uses.

The glBlitFramebuffer availability check (driver vendor blocklist plus GL
version / GL_EXT_framebuffer_blit) is moved from FlCompositorOpenGL into
fl_opengl_manager_can_blit so both renderers share the same detection.
mattkae
mattkae previously approved these changes Aug 21, 2026

@mattkae mattkae 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.

This looks largely good! Some nits, but I'll leave them to you. Hooray for bypassing Gtk!

Question: Should we add tests, or is that better for a follow up? I have a feeling this is a (semi) risky change, as it affects all rendering on Wayland.

Comment thread engine/src/flutter/shell/platform/linux/fl_opengl_manager.cc
Comment thread engine/src/flutter/shell/platform/linux/fl_subsurface.cc Outdated
Comment thread engine/src/flutter/shell/platform/linux/fl_view_renderer_subsurface.cc Outdated
Comment thread engine/src/flutter/shell/platform/linux/fl_subsurface_egl.h Outdated
Move the Wayland registry handling out of FlSubsurface and into a new
FlWaylandDisplay, so the globals are bound once per display rather than
once per subsurface. Subsurfaces are created from it.

FlSubsurface and FlSubsurfaceEGL are now constructed from the objects
they need, so neither of them can fail to be created and the callers
don't have to check for NULL. If the EGL setup fails a warning is
printed and the object generates the usual EGL/OpenGL errors instead.
Add a mock libwayland (in the same style as the existing mock libepoxy)
so Wayland objects can be created without a compositor, and use it to
test FlWaylandDisplay, FlSubsurface and FlSubsurfaceEGL. Tests are now
run on X11 so GDK can't talk to a real compositor through the mock.
Checking for the absence of a log level by masking the received levels
bitfield and comparing it to zero is hard to read. Add a helper that
does this, so the tests read as EXPECT_FALSE(HasReceivedLogLevel(...)).
@robert-ancell
robert-ancell force-pushed the linux-subsurface-renderer branch from 6962c71 to e1a4aad Compare August 24, 2026 02:18

@mattkae mattkae 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.

That is some test infrastructure! Took me a bit of time, but this looks great to me.

auto-submit Bot pushed a commit to flutter/packages that referenced this pull request Aug 26, 2026
Roll Flutter from 9a8278982588 to 15d8908addf6 (37 revisions)

flutter/flutter@9a82789...15d8908

2026-08-25 engine-flutter-autoroll@skia.org Roll Packages from df2ba94 to 740f093 (17 revisions) (flutter/flutter#191734)
2026-08-25 dacoharkes@google.com [record_use] Remove const_finder (flutter/flutter#191702)
2026-08-25 48625061+muradhossin@users.noreply.github.com Warn when SwiftPM is disabled (flutter/flutter#188695)
2026-08-25 engine-flutter-autoroll@skia.org Roll Skia from b1a31575c373 to 480540178356 (1 revision) (flutter/flutter#191723)
2026-08-25 137456488+flutter-pub-roller-bot@users.noreply.github.com Roll pub packages (flutter/flutter#191726)
2026-08-25 engine-flutter-autoroll@skia.org Roll Skia from bfa276ed9ac5 to b1a31575c373 (1 revision) (flutter/flutter#191717)
2026-08-25 engine-flutter-autoroll@skia.org Roll Dart SDK from 0818e6dc28cc to 8996935d3d0a (2 revisions) (flutter/flutter#191706)
2026-08-25 engine-flutter-autoroll@skia.org Roll Skia from 31799e707cd4 to bfa276ed9ac5 (1 revision) (flutter/flutter#191701)
2026-08-25 chris@bracken.jp iOS: Add null check for touch rate correction task runner (flutter/flutter#191641)
2026-08-25 chris@bracken.jp iOS: Add test for engineAllowHeadlessExecution (flutter/flutter#191635)
2026-08-25 engine-flutter-autoroll@skia.org Roll Skia from cfae2af1bfeb to 31799e707cd4 (4 revisions) (flutter/flutter#191649)
2026-08-25 engine-flutter-autoroll@skia.org Roll Dart SDK from 2b75c83ddd77 to 0818e6dc28cc (1 revision) (flutter/flutter#191643)
2026-08-25 engine-flutter-autoroll@skia.org Roll Skia from 4a2fddefd3d8 to cfae2af1bfeb (1 revision) (flutter/flutter#191642)
2026-08-25 engine-flutter-autoroll@skia.org Roll Skia from 256c15026b91 to 4a2fddefd3d8 (6 revisions) (flutter/flutter#191633)
2026-08-25 97480502+b-luk@users.noreply.github.com Remove octant_offset_c uniform from ubersdf, reorder/document ubersdf uniforms (flutter/flutter#191597)
2026-08-25 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from 8Xu4ujBJniC0nQGx3... to MstTWE1RDOT-RnrtH... (flutter/flutter#191621)
2026-08-25 engine-flutter-autoroll@skia.org Roll Dart SDK from 78bbc37b6ff6 to 2b75c83ddd77 (3 revisions) (flutter/flutter#191614)
2026-08-24 bkonyi@google.com [flutter_tools] Fix $git typo in shared.bat to restore cache invalidation on Windows (flutter/flutter#191217)
2026-08-24 87962825+kyungilcho@users.noreply.github.com Skip removed observers during app exit requests (flutter/flutter#190343)
2026-08-24 bkonyi@google.com [engine] Support UTF-8 paths in Windows filesystem and path APIs (flutter/flutter#191360)
2026-08-24 okorohelijah@google.com Migrate ios driver tests batch 3 to simulators (flutter/flutter#191333)
2026-08-24 jmccandless@google.com Migrate texture example to material_ui (flutter/flutter#190673)
2026-08-24 116356835+AbdeMohlbi@users.noreply.github.com Remove outdated test todo about `dither` property of `Paint` (flutter/flutter#190936)
2026-08-24 47866232+chunhtai@users.noreply.github.com Add agent rule to prevent using material and cupertino in widget tests (flutter/flutter#191588)
2026-08-24 bkonyi@google.com [flutter_tools] Prevent crash when stdout is broken and print fails (flutter/flutter#191356)
2026-08-24 robert.ancell@canonical.com Add FlViewRendererSubsurface (flutter/flutter#191389)
2026-08-24 43054281+camsim99@users.noreply.github.com [Android] Inject `route` into manifest when specified on the command line in release mode (flutter/flutter#191328)
2026-08-24 269567208+reidbaker-agent@users.noreply.github.com [AGP 9.1.0 Migration #3] Add buildModeFor overloads and wire Flutter dependencies through the new DSL (flutter/flutter#191218)
2026-08-24 engine-flutter-autoroll@skia.org Roll Skia from 698c60bf58f1 to 256c15026b91 (1 revision) (flutter/flutter#191586)
2026-08-24 15619084+vashworth@users.noreply.github.com On iOS 27+ devices, manually process lldb stops (flutter/flutter#191434)
2026-08-24 bkonyi@google.com [flutter_tools] Handle missing Xcode gracefully in getInfo and buildMacOS (flutter/flutter#191180)
2026-08-24 bkonyi@google.com [flutter_tools] Handle null version gracefully in CachedArtifact and MaterialFonts (flutter/flutter#191494)
2026-08-24 bkonyi@google.com [flutter_tools] Do not treat 'daemon' argument as daemon command in logger initialization (flutter/flutter#191442)
2026-08-24 bkonyi@google.com [flutter_tools] Resolve workspace root when running widget preview from member package (flutter/flutter#190952)
2026-08-24 dacoharkes@google.com [native_assets] Roll native packages (flutter/flutter#191253)
2026-08-24 bkonyi@google.com [flutter_tools] Add --force flag to flutter channel (flutter/flutter#191579)
2026-08-24 engine-flutter-autoroll@skia.org Roll Skia from 57968d087d18 to 698c60bf58f1 (1 revision) (flutter/flutter#191577)

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
Please CC bmparr@google.com,stuartmorgan@google.com 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

...
robert-ancell added a commit to robert-ancell/flutter-subsurface-benchmark that referenced this pull request Aug 26, 2026
Compares the Wayland subsurface view renderer (flutter/flutter#191389)
against the previous GTK OpenGL renderer, using a single engine build with
the renderer selected at runtime so the comparison is apples-to-apples.

Frame throughput is unchanged, but frame delivery becomes markedly more
consistent under load (frame-time standard deviation down 44% at medium load
and 52% at heavy load, raster standard deviation down 93% at heavy load), and
roughly 19% of CPU work moves off the GTK main thread onto the raster thread.

Includes the benchmark app, the runner and analysis scripts, and the complete
raw per-frame data, so every number in the report can be regenerated without
rebuilding anything.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
danielleon-cmd pushed a commit to victogomez-cs/packages-fork that referenced this pull request Aug 27, 2026
…r#12619)

Roll Flutter from 9a8278982588 to 15d8908addf6 (37 revisions)

flutter/flutter@9a82789...15d8908

2026-08-25 engine-flutter-autoroll@skia.org Roll Packages from df2ba94 to 740f093 (17 revisions) (flutter/flutter#191734)
2026-08-25 dacoharkes@google.com [record_use] Remove const_finder (flutter/flutter#191702)
2026-08-25 48625061+muradhossin@users.noreply.github.com Warn when SwiftPM is disabled (flutter/flutter#188695)
2026-08-25 engine-flutter-autoroll@skia.org Roll Skia from b1a31575c373 to 480540178356 (1 revision) (flutter/flutter#191723)
2026-08-25 137456488+flutter-pub-roller-bot@users.noreply.github.com Roll pub packages (flutter/flutter#191726)
2026-08-25 engine-flutter-autoroll@skia.org Roll Skia from bfa276ed9ac5 to b1a31575c373 (1 revision) (flutter/flutter#191717)
2026-08-25 engine-flutter-autoroll@skia.org Roll Dart SDK from 0818e6dc28cc to 8996935d3d0a (2 revisions) (flutter/flutter#191706)
2026-08-25 engine-flutter-autoroll@skia.org Roll Skia from 31799e707cd4 to bfa276ed9ac5 (1 revision) (flutter/flutter#191701)
2026-08-25 chris@bracken.jp iOS: Add null check for touch rate correction task runner (flutter/flutter#191641)
2026-08-25 chris@bracken.jp iOS: Add test for engineAllowHeadlessExecution (flutter/flutter#191635)
2026-08-25 engine-flutter-autoroll@skia.org Roll Skia from cfae2af1bfeb to 31799e707cd4 (4 revisions) (flutter/flutter#191649)
2026-08-25 engine-flutter-autoroll@skia.org Roll Dart SDK from 2b75c83ddd77 to 0818e6dc28cc (1 revision) (flutter/flutter#191643)
2026-08-25 engine-flutter-autoroll@skia.org Roll Skia from 4a2fddefd3d8 to cfae2af1bfeb (1 revision) (flutter/flutter#191642)
2026-08-25 engine-flutter-autoroll@skia.org Roll Skia from 256c15026b91 to 4a2fddefd3d8 (6 revisions) (flutter/flutter#191633)
2026-08-25 97480502+b-luk@users.noreply.github.com Remove octant_offset_c uniform from ubersdf, reorder/document ubersdf uniforms (flutter/flutter#191597)
2026-08-25 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from 8Xu4ujBJniC0nQGx3... to MstTWE1RDOT-RnrtH... (flutter/flutter#191621)
2026-08-25 engine-flutter-autoroll@skia.org Roll Dart SDK from 78bbc37b6ff6 to 2b75c83ddd77 (3 revisions) (flutter/flutter#191614)
2026-08-24 bkonyi@google.com [flutter_tools] Fix $git typo in shared.bat to restore cache invalidation on Windows (flutter/flutter#191217)
2026-08-24 87962825+kyungilcho@users.noreply.github.com Skip removed observers during app exit requests (flutter/flutter#190343)
2026-08-24 bkonyi@google.com [engine] Support UTF-8 paths in Windows filesystem and path APIs (flutter/flutter#191360)
2026-08-24 okorohelijah@google.com Migrate ios driver tests batch 3 to simulators (flutter/flutter#191333)
2026-08-24 jmccandless@google.com Migrate texture example to material_ui (flutter/flutter#190673)
2026-08-24 116356835+AbdeMohlbi@users.noreply.github.com Remove outdated test todo about `dither` property of `Paint` (flutter/flutter#190936)
2026-08-24 47866232+chunhtai@users.noreply.github.com Add agent rule to prevent using material and cupertino in widget tests (flutter/flutter#191588)
2026-08-24 bkonyi@google.com [flutter_tools] Prevent crash when stdout is broken and print fails (flutter/flutter#191356)
2026-08-24 robert.ancell@canonical.com Add FlViewRendererSubsurface (flutter/flutter#191389)
2026-08-24 43054281+camsim99@users.noreply.github.com [Android] Inject `route` into manifest when specified on the command line in release mode (flutter/flutter#191328)
2026-08-24 269567208+reidbaker-agent@users.noreply.github.com [AGP 9.1.0 Migration #3] Add buildModeFor overloads and wire Flutter dependencies through the new DSL (flutter/flutter#191218)
2026-08-24 engine-flutter-autoroll@skia.org Roll Skia from 698c60bf58f1 to 256c15026b91 (1 revision) (flutter/flutter#191586)
2026-08-24 15619084+vashworth@users.noreply.github.com On iOS 27+ devices, manually process lldb stops (flutter/flutter#191434)
2026-08-24 bkonyi@google.com [flutter_tools] Handle missing Xcode gracefully in getInfo and buildMacOS (flutter/flutter#191180)
2026-08-24 bkonyi@google.com [flutter_tools] Handle null version gracefully in CachedArtifact and MaterialFonts (flutter/flutter#191494)
2026-08-24 bkonyi@google.com [flutter_tools] Do not treat 'daemon' argument as daemon command in logger initialization (flutter/flutter#191442)
2026-08-24 bkonyi@google.com [flutter_tools] Resolve workspace root when running widget preview from member package (flutter/flutter#190952)
2026-08-24 dacoharkes@google.com [native_assets] Roll native packages (flutter/flutter#191253)
2026-08-24 bkonyi@google.com [flutter_tools] Add --force flag to flutter channel (flutter/flutter#191579)
2026-08-24 engine-flutter-autoroll@skia.org Roll Skia from 57968d087d18 to 698c60bf58f1 (1 revision) (flutter/flutter#191577)

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
Please CC bmparr@google.com,stuartmorgan@google.com 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

...
pull Bot pushed a commit to AbhiShake1/flutter that referenced this pull request Aug 28, 2026
FlViewRendererSubsurface is the default renderer on Wayland, so Flutter
apps running with Impeller on Mesa drivers currently show nothing but a
black window.

It picked its framebuffer format from
epoxy_has_gl_extension("GL_EXT_texture_format_BGRA8888"), which asks
what the driver is capable of rather than what the engine actually
rendered. The frame was composited into a BGRA framebuffer while the
engine had rendered RGBA, so nothing reached the screen. The failure is
silent: the framebuffer is complete, no GL errors are raised, and the
Wayland surface is committed as normal.

That check used to be correct, and was invalidated by 5f97c7f
("Fixes MSAA on the linux embedder", flutter#191379) in two ways:

- It replaced the identical check in fl_opengl_frame.cc with one that
reads the format the engine reported in the layer's backing store,
making the extension check the stale copy of a rule that had moved on.
- It made the engine render RGBA even where the extension is advertised.
With Impeller the backing store is now allocated by
fl_framebuffer_new_multisample(), whose offscreen MSAA path attaches a
multisample renderbuffer of GL_RGBA8 and no texture, and fl_engine.cc
reports GL_RGBA8 for those. Driver capability and rendered format are
therefore no longer the same question.

FlViewRendererSubsurface was written before that landed and merged
cleanly after it, in 706edcd ("Add FlViewRendererSubsurface",
flutter#191389), because the two changes touch different files and so never
conflicted textually.

Move the rule into fl_compositor_opengl_get_frame_format() and use it
from both paths so they cannot disagree again. fl_engine.cc remains the
only place that chooses a format; both consumers now follow what it
reports. Every backing store in a frame is created from context-wide
capabilities, so they all share a format, and the first one describes
the frame. Take it from the first backing store rather than the first
layer, as platform views carry no format and would otherwise decide it
by being drawn first.

The bug is not reachable from a unit test, as presenting a frame
requires a realized Wayland subsurface and the tests run on X11, so test
the shared function directly, including that an advertised extension
does not change its result.
victorsanni pushed a commit to victorsanni/packages that referenced this pull request Sep 9, 2026
…r#12619)

Roll Flutter from 9a8278982588 to 15d8908addf6 (37 revisions)

flutter/flutter@9a82789...15d8908

2026-08-25 engine-flutter-autoroll@skia.org Roll Packages from df2ba94 to 740f093 (17 revisions) (flutter/flutter#191734)
2026-08-25 dacoharkes@google.com [record_use] Remove const_finder (flutter/flutter#191702)
2026-08-25 48625061+muradhossin@users.noreply.github.com Warn when SwiftPM is disabled (flutter/flutter#188695)
2026-08-25 engine-flutter-autoroll@skia.org Roll Skia from b1a31575c373 to 480540178356 (1 revision) (flutter/flutter#191723)
2026-08-25 137456488+flutter-pub-roller-bot@users.noreply.github.com Roll pub packages (flutter/flutter#191726)
2026-08-25 engine-flutter-autoroll@skia.org Roll Skia from bfa276ed9ac5 to b1a31575c373 (1 revision) (flutter/flutter#191717)
2026-08-25 engine-flutter-autoroll@skia.org Roll Dart SDK from 0818e6dc28cc to 8996935d3d0a (2 revisions) (flutter/flutter#191706)
2026-08-25 engine-flutter-autoroll@skia.org Roll Skia from 31799e707cd4 to bfa276ed9ac5 (1 revision) (flutter/flutter#191701)
2026-08-25 chris@bracken.jp iOS: Add null check for touch rate correction task runner (flutter/flutter#191641)
2026-08-25 chris@bracken.jp iOS: Add test for engineAllowHeadlessExecution (flutter/flutter#191635)
2026-08-25 engine-flutter-autoroll@skia.org Roll Skia from cfae2af1bfeb to 31799e707cd4 (4 revisions) (flutter/flutter#191649)
2026-08-25 engine-flutter-autoroll@skia.org Roll Dart SDK from 2b75c83ddd77 to 0818e6dc28cc (1 revision) (flutter/flutter#191643)
2026-08-25 engine-flutter-autoroll@skia.org Roll Skia from 4a2fddefd3d8 to cfae2af1bfeb (1 revision) (flutter/flutter#191642)
2026-08-25 engine-flutter-autoroll@skia.org Roll Skia from 256c15026b91 to 4a2fddefd3d8 (6 revisions) (flutter/flutter#191633)
2026-08-25 97480502+b-luk@users.noreply.github.com Remove octant_offset_c uniform from ubersdf, reorder/document ubersdf uniforms (flutter/flutter#191597)
2026-08-25 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from 8Xu4ujBJniC0nQGx3... to MstTWE1RDOT-RnrtH... (flutter/flutter#191621)
2026-08-25 engine-flutter-autoroll@skia.org Roll Dart SDK from 78bbc37b6ff6 to 2b75c83ddd77 (3 revisions) (flutter/flutter#191614)
2026-08-24 bkonyi@google.com [flutter_tools] Fix $git typo in shared.bat to restore cache invalidation on Windows (flutter/flutter#191217)
2026-08-24 87962825+kyungilcho@users.noreply.github.com Skip removed observers during app exit requests (flutter/flutter#190343)
2026-08-24 bkonyi@google.com [engine] Support UTF-8 paths in Windows filesystem and path APIs (flutter/flutter#191360)
2026-08-24 okorohelijah@google.com Migrate ios driver tests batch 3 to simulators (flutter/flutter#191333)
2026-08-24 jmccandless@google.com Migrate texture example to material_ui (flutter/flutter#190673)
2026-08-24 116356835+AbdeMohlbi@users.noreply.github.com Remove outdated test todo about `dither` property of `Paint` (flutter/flutter#190936)
2026-08-24 47866232+chunhtai@users.noreply.github.com Add agent rule to prevent using material and cupertino in widget tests (flutter/flutter#191588)
2026-08-24 bkonyi@google.com [flutter_tools] Prevent crash when stdout is broken and print fails (flutter/flutter#191356)
2026-08-24 robert.ancell@canonical.com Add FlViewRendererSubsurface (flutter/flutter#191389)
2026-08-24 43054281+camsim99@users.noreply.github.com [Android] Inject `route` into manifest when specified on the command line in release mode (flutter/flutter#191328)
2026-08-24 269567208+reidbaker-agent@users.noreply.github.com [AGP 9.1.0 Migration flutter#3] Add buildModeFor overloads and wire Flutter dependencies through the new DSL (flutter/flutter#191218)
2026-08-24 engine-flutter-autoroll@skia.org Roll Skia from 698c60bf58f1 to 256c15026b91 (1 revision) (flutter/flutter#191586)
2026-08-24 15619084+vashworth@users.noreply.github.com On iOS 27+ devices, manually process lldb stops (flutter/flutter#191434)
2026-08-24 bkonyi@google.com [flutter_tools] Handle missing Xcode gracefully in getInfo and buildMacOS (flutter/flutter#191180)
2026-08-24 bkonyi@google.com [flutter_tools] Handle null version gracefully in CachedArtifact and MaterialFonts (flutter/flutter#191494)
2026-08-24 bkonyi@google.com [flutter_tools] Do not treat 'daemon' argument as daemon command in logger initialization (flutter/flutter#191442)
2026-08-24 bkonyi@google.com [flutter_tools] Resolve workspace root when running widget preview from member package (flutter/flutter#190952)
2026-08-24 dacoharkes@google.com [native_assets] Roll native packages (flutter/flutter#191253)
2026-08-24 bkonyi@google.com [flutter_tools] Add --force flag to flutter channel (flutter/flutter#191579)
2026-08-24 engine-flutter-autoroll@skia.org Roll Skia from 57968d087d18 to 698c60bf58f1 (1 revision) (flutter/flutter#191577)

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
Please CC bmparr@google.com,stuartmorgan@google.com 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

...
victorsanni pushed a commit to victorsanni/packages that referenced this pull request Sep 9, 2026
…r#12619)

Roll Flutter from 9a8278982588 to 15d8908addf6 (37 revisions)

flutter/flutter@9a82789...15d8908

2026-08-25 engine-flutter-autoroll@skia.org Roll Packages from df2ba94 to 740f093 (17 revisions) (flutter/flutter#191734)
2026-08-25 dacoharkes@google.com [record_use] Remove const_finder (flutter/flutter#191702)
2026-08-25 48625061+muradhossin@users.noreply.github.com Warn when SwiftPM is disabled (flutter/flutter#188695)
2026-08-25 engine-flutter-autoroll@skia.org Roll Skia from b1a31575c373 to 480540178356 (1 revision) (flutter/flutter#191723)
2026-08-25 137456488+flutter-pub-roller-bot@users.noreply.github.com Roll pub packages (flutter/flutter#191726)
2026-08-25 engine-flutter-autoroll@skia.org Roll Skia from bfa276ed9ac5 to b1a31575c373 (1 revision) (flutter/flutter#191717)
2026-08-25 engine-flutter-autoroll@skia.org Roll Dart SDK from 0818e6dc28cc to 8996935d3d0a (2 revisions) (flutter/flutter#191706)
2026-08-25 engine-flutter-autoroll@skia.org Roll Skia from 31799e707cd4 to bfa276ed9ac5 (1 revision) (flutter/flutter#191701)
2026-08-25 chris@bracken.jp iOS: Add null check for touch rate correction task runner (flutter/flutter#191641)
2026-08-25 chris@bracken.jp iOS: Add test for engineAllowHeadlessExecution (flutter/flutter#191635)
2026-08-25 engine-flutter-autoroll@skia.org Roll Skia from cfae2af1bfeb to 31799e707cd4 (4 revisions) (flutter/flutter#191649)
2026-08-25 engine-flutter-autoroll@skia.org Roll Dart SDK from 2b75c83ddd77 to 0818e6dc28cc (1 revision) (flutter/flutter#191643)
2026-08-25 engine-flutter-autoroll@skia.org Roll Skia from 4a2fddefd3d8 to cfae2af1bfeb (1 revision) (flutter/flutter#191642)
2026-08-25 engine-flutter-autoroll@skia.org Roll Skia from 256c15026b91 to 4a2fddefd3d8 (6 revisions) (flutter/flutter#191633)
2026-08-25 97480502+b-luk@users.noreply.github.com Remove octant_offset_c uniform from ubersdf, reorder/document ubersdf uniforms (flutter/flutter#191597)
2026-08-25 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from 8Xu4ujBJniC0nQGx3... to MstTWE1RDOT-RnrtH... (flutter/flutter#191621)
2026-08-25 engine-flutter-autoroll@skia.org Roll Dart SDK from 78bbc37b6ff6 to 2b75c83ddd77 (3 revisions) (flutter/flutter#191614)
2026-08-24 bkonyi@google.com [flutter_tools] Fix $git typo in shared.bat to restore cache invalidation on Windows (flutter/flutter#191217)
2026-08-24 87962825+kyungilcho@users.noreply.github.com Skip removed observers during app exit requests (flutter/flutter#190343)
2026-08-24 bkonyi@google.com [engine] Support UTF-8 paths in Windows filesystem and path APIs (flutter/flutter#191360)
2026-08-24 okorohelijah@google.com Migrate ios driver tests batch 3 to simulators (flutter/flutter#191333)
2026-08-24 jmccandless@google.com Migrate texture example to material_ui (flutter/flutter#190673)
2026-08-24 116356835+AbdeMohlbi@users.noreply.github.com Remove outdated test todo about `dither` property of `Paint` (flutter/flutter#190936)
2026-08-24 47866232+chunhtai@users.noreply.github.com Add agent rule to prevent using material and cupertino in widget tests (flutter/flutter#191588)
2026-08-24 bkonyi@google.com [flutter_tools] Prevent crash when stdout is broken and print fails (flutter/flutter#191356)
2026-08-24 robert.ancell@canonical.com Add FlViewRendererSubsurface (flutter/flutter#191389)
2026-08-24 43054281+camsim99@users.noreply.github.com [Android] Inject `route` into manifest when specified on the command line in release mode (flutter/flutter#191328)
2026-08-24 269567208+reidbaker-agent@users.noreply.github.com [AGP 9.1.0 Migration flutter#3] Add buildModeFor overloads and wire Flutter dependencies through the new DSL (flutter/flutter#191218)
2026-08-24 engine-flutter-autoroll@skia.org Roll Skia from 698c60bf58f1 to 256c15026b91 (1 revision) (flutter/flutter#191586)
2026-08-24 15619084+vashworth@users.noreply.github.com On iOS 27+ devices, manually process lldb stops (flutter/flutter#191434)
2026-08-24 bkonyi@google.com [flutter_tools] Handle missing Xcode gracefully in getInfo and buildMacOS (flutter/flutter#191180)
2026-08-24 bkonyi@google.com [flutter_tools] Handle null version gracefully in CachedArtifact and MaterialFonts (flutter/flutter#191494)
2026-08-24 bkonyi@google.com [flutter_tools] Do not treat 'daemon' argument as daemon command in logger initialization (flutter/flutter#191442)
2026-08-24 bkonyi@google.com [flutter_tools] Resolve workspace root when running widget preview from member package (flutter/flutter#190952)
2026-08-24 dacoharkes@google.com [native_assets] Roll native packages (flutter/flutter#191253)
2026-08-24 bkonyi@google.com [flutter_tools] Add --force flag to flutter channel (flutter/flutter#191579)
2026-08-24 engine-flutter-autoroll@skia.org Roll Skia from 57968d087d18 to 698c60bf58f1 (1 revision) (flutter/flutter#191577)

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
Please CC bmparr@google.com,stuartmorgan@google.com 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

...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

a: desktop Running on desktop CICD Run CI/CD engine flutter/engine related. See also e: labels. platform-linux Building on or for Linux specifically team-linux Owned by the Linux platform team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants