)]}'
{
  "log": [
    {
      "commit": "ad9840e31554ffb6bc356919d30e8be37f03bdaf",
      "tree": "445ab4eb520a12da316db28744fd9203a74f29e5",
      "parents": [
        "4bace0e64759753892ed2a832488f6ba5adf860a"
      ],
      "author": {
        "name": "jesswrd",
        "email": "jessiewong401@gmail.com",
        "time": "Tue Jul 14 17:53:09 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jul 14 17:53:09 2026"
      },
      "message": "Update All Flutter Android Example Apps to 3.47 Template Versions (#12195)\n\nUpdated all Flutter Android plugin example apps to align with newer template versions for the Flutter 3.47 release.\r\n\r\nPartially Addresses: https://github.com/flutter/flutter/issues/189381\r\nRelated to: https://github.com/flutter/flutter/issues/189380\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "4bace0e64759753892ed2a832488f6ba5adf860a",
      "tree": "6f475be0b2b388144ee71539c3999fab72351065",
      "parents": [
        "16e64110b41e271a55ce6b6eb5e2456381840ace"
      ],
      "author": {
        "name": "engine-flutter-autoroll",
        "email": "engine-flutter-autoroll@skia.org",
        "time": "Tue Jul 14 17:02:25 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jul 14 17:02:25 2026"
      },
      "message": "Roll Flutter from cf9e8afe9a5e to 846664bf191a (24 revisions) (#12200)\n\nhttps://github.com/flutter/flutter/compare/cf9e8afe9a5e...846664bf191a\n\n2026-07-14 engine-flutter-autoroll@skia.org Roll Skia from dfcff99566c3 to 88954ef8f36d (1 revision) (flutter/flutter#189440)\n2026-07-14 34465683+rkishan516@users.noreply.github.com refactor: remove material import from scrollable_semantics_test and selectable_region_context_menu_test (flutter/flutter#186611)\n2026-07-14 engine-flutter-autoroll@skia.org Roll Skia from 3d1fc554f1a2 to dfcff99566c3 (17 revisions) (flutter/flutter#189428)\n2026-07-14 engine-flutter-autoroll@skia.org Roll Dart SDK from 2c587df8f05a to 05bf153370c4 (5 revisions) (flutter/flutter#189426)\n2026-07-14 nshahan@google.com [flutter_tools] Remove web hot reload flag (flutter/flutter#185994)\n2026-07-14 chris@bracken.jp [iOS] Fix flaky keyboard animation test (flutter/flutter#189353)\n2026-07-14 flar@google.com [Impeller] Playground expanded role (flutter/flutter#188889)\n2026-07-14 137456488+flutter-pub-roller-bot@users.noreply.github.com Roll pub packages (flutter/flutter#189409)\n2026-07-13 6655696+guidezpl@users.noreply.github.com Update lock-threads dependency to 6.0.2 (flutter/flutter#189053)\n2026-07-13 49699333+dependabot[bot]@users.noreply.github.com Bump actions/labeler from 6.1.0 to 6.2.0 in the all-github-actions group (flutter/flutter#189396)\n2026-07-13 116356835+AbdeMohlbi@users.noreply.github.com Remove  outdated todo about `analysis bug on Windows` and update condition to also perform `analysis on windows` (flutter/flutter#189283)\n2026-07-13 ahmedsameha1@gmail.com Add more 0x0 size tests part 4 (flutter/flutter#185187)\n2026-07-13 engine-flutter-autoroll@skia.org Roll Packages from 20928d58f507 to ad2eab1b9fa3 (18 revisions) (flutter/flutter#189387)\n2026-07-13 bkonyi@google.com [flutter_tools] Fix ADB device listing output parsing regression (flutter/flutter#189369)\n2026-07-13 magder@google.com Stop running most Mac x64 builders that have Mac ARM equivalents on master (flutter/flutter#189301)\n2026-07-13 magder@google.com Move a few benchmarks from x64 Intel Macs to ARM (flutter/flutter#189377)\n2026-07-13 34871572+gmackall@users.noreply.github.com Add note that `hcpp` needs impeller (flutter/flutter#189382)\n2026-07-13 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from vhIlDkWIy21IrlB9E... to oOETA0ISPouDt2xBo... (flutter/flutter#189349)\n2026-07-13 68429735+Vonarian@users.noreply.github.com [flutter_tools] Respect mustMatchAppBuild on Windows native assets (flutter/flutter#186788)\n2026-07-13 engine-flutter-autoroll@skia.org Roll Skia from 8bf65996caba to 3d1fc554f1a2 (2 revisions) (flutter/flutter#189350)\n2026-07-13 engine-flutter-autoroll@skia.org Roll Dart SDK from 0fc1668c4af4 to 2c587df8f05a (9 revisions) (flutter/flutter#189351)\n2026-07-13 1961493+harryterkelsen@users.noreply.github.com [web] Fall back to full CJK fonts for characters not covered by split slices (flutter/flutter#188890)\n2026-07-13 magder@google.com Take Mac tool_integration_tests_* out of bringup (flutter/flutter#189368)\n2026-07-13 dacoharkes@google.com [hooks] Roll record_use to 1.0 and unpin (flutter/flutter#189366)\n\nIf this roll has caused a breakage, revert this CL and stop the roller\nusing the controls here:\nhttps://autoroll.skia.org/r/flutter-packages\nPlease CC louisehsu@google.com,stuartmorgan@google.com on the revert to ensure that a human\nis aware of the problem.\n\nTo file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose\n\nTo report a problem with the AutoRoller itself, please file a bug:\nhttps://issues.skia.org/issues/new?component\u003d1389291\u0026template\u003d1850622\n\nDocumentation for the AutoRoller is here:\nhttps://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md"
    },
    {
      "commit": "16e64110b41e271a55ce6b6eb5e2456381840ace",
      "tree": "d3e529863fff54924afc906fd89ac293b4bcb55d",
      "parents": [
        "502ebc72a9fe374a84a08756900962308ce086fe"
      ],
      "author": {
        "name": "Simon Binder",
        "email": "oss@simonbinder.eu",
        "time": "Tue Jul 14 12:44:25 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jul 14 12:44:25 2026"
      },
      "message": "[go_router_builder] Support analyzer 13 (#12189)\n\nThis declares support for analyzer versions 13.x in the `go_router_builder` package.\r\n\r\nI ran `tool/run_tests.dart` after upgrading, no code changes are necessary and existing tests pass. Note that another package in this repository, `pigeon`, also depends on an older `analyzer` version but would require code changes to support analyzer version 13.x.\r\n\r\nCloses https://github.com/flutter/flutter/issues/189357.\r\n\r\n## Pre-Review Checklist\r\n\r\nComments below:\r\n\r\n- There is no relevant documentation to update.\r\n- This change is covered by existing tests, so I have not added new ones."
    },
    {
      "commit": "502ebc72a9fe374a84a08756900962308ce086fe",
      "tree": "16788cbbf7395171e34819d312a12ace87065623",
      "parents": [
        "745da2e91d112c280123bacf5435ab18a6240005"
      ],
      "author": {
        "name": "stuartmorgan-g",
        "email": "stuartmorgan@google.com",
        "time": "Tue Jul 14 12:38:03 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jul 14 12:38:03 2026"
      },
      "message": "[shared_preferences] Convert legacy tests to Kotlin (#12193)\n\nConverts the legacy tests for `shared_preferences_android` to Kotlin, so that the plugin is now consistently using Kotlin, instead of a mix of Java and Kotlin.\r\n\r\nAs with the non-test PR, this was a first-pass conversion via the Android Studio auto-converted, followed by manual fixup, followed by running it through a local Gemini review focusing on making the Kotlin more idiomatic.\r\n\r\nFollow-up to https://github.com/flutter/packages/pull/12139\r\nPart of https://github.com/flutter/flutter/issues/188630\r\n\r\n## Pre-Review Checklist\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "745da2e91d112c280123bacf5435ab18a6240005",
      "tree": "9802bcb0e444239cca3b34869d2d27182f9eda91",
      "parents": [
        "2899d50914b31d4ab0dbe7b8ae3701c0a5d41de5"
      ],
      "author": {
        "name": "Tong Mu",
        "email": "dkwingsmt@users.noreply.github.com",
        "time": "Mon Jul 13 23:52:27 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 13 23:52:27 2026"
      },
      "message": "[material_ui, cupertino_ui] Migrate `@macro`s that are defined in Material and used in Cupertino (#12197)\n\nThe `dartdoc` requires that `@macro` will only search `@template` from `dependencies` packages, not `dev_dependencies`. Before this PR, both Cupertino and Material have used macros defined in the other package, and this does not completely work because `cupertino_ui` only lists `material_ui` as a dev dependency. On the other hand, `material_ui` lists `cupertino_ui` as a dependency and we plan to keep this way for a long time due to support for adaptive widgets.\r\n\r\nThis PR hence solves this macro problem by migrating all malfunctioning macros to be defined in `cupertino_ui` instead.\r\n\r\nThe changes were made in a script written by Gemini.\r\n\r\n### Known issue\r\n\r\nReferencing breadcrumbs (\"square brackets\") from `material_ui` in `cupertino_ui` does not work for now. The result is non-blocking for now, where all widget names (such as `[Button]`) do not have hyperlinks but are simply backticks. This is likely because of https://github.com/dart-lang/sdk/issues/62812. Simply put, `dartdoc` only checks in symbols from `material_ui` if `material_ui` is `import`ed somewhere at least once, which means `material_ui` must be a dependency (not a dev dependency) of `cupertino_ui`. If https://github.com/dart-lang/sdk/issues/62812 can be fixed, a `docImport` would make `dartdoc` checks in symbols.\r\n\r\nAlso, this problem can be worsened as we develop next generation Cupertino widgets, since `cupertino_ui` is planning to remove the prefixes and therefore have widget name conflicts with `material_ui`, and  [`docImport` currently does not support `as`](https://github.com/dart-lang/sdk/issues/56527). For example, if a widget in `cupertino_ui` refers to a `[Dialog]`, which dialog does it refer to? \r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "2899d50914b31d4ab0dbe7b8ae3701c0a5d41de5",
      "tree": "45711c7e66eb0268e0a1916d52f506e1a5434a01",
      "parents": [
        "e8903cba3c15c539516671c44d4c759cd9affd26"
      ],
      "author": {
        "name": "Tong Mu",
        "email": "dkwingsmt@users.noreply.github.com",
        "time": "Mon Jul 13 22:59:54 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 13 22:59:54 2026"
      },
      "message": "[material_ui, cupertino_ui] Add `#region` to example files to remove license headers (#12170)\n\nThis PR adds `#region` to example files to remove the license headers. \r\n\r\nBefore:\r\n\r\n\u003cimg width\u003d\"738\" height\u003d\"710\" alt\u003d\"image\" src\u003d\"https://github.com/user-attachments/assets/04069857-c590-470e-9682-bc601071bbc7\" /\u003e\r\n\r\nAfter:\r\n\r\n\u003cimg width\u003d\"739\" height\u003d\"716\" alt\u003d\"image\" src\u003d\"https://github.com/user-attachments/assets/7face8b4-8f01-4c94-81a7-0bbdf26afd14\" /\u003e\r\n\r\n### Verification\r\n\r\nI have audited all example files to ensure every file belongs to one of the following types:\r\n\r\n* **Referenced in `material_ui` or `cupertino_ui`:** These have been updated in this PR to include the `#region` tags.\r\n* **Not referenced and not for a Material/Cupertino widget:** These files have been removed in PR #12179.\r\n* **Not referenced but for a Material/Cupertino widget:** The following two files remain, and we should consider adding them to the respective API documentation in the future:\r\n```\r\nmaterial_ui/example/lib/selection_area/selection_area.1.dart\r\nmaterial_ui/example/lib/selection_area/selection_area.2.dart\r\n```\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "e8903cba3c15c539516671c44d4c759cd9affd26",
      "tree": "9d0095f0435cd622b6fa2022347e442401adcdb2",
      "parents": [
        "ad2eab1b9fa3901d43b2383272ffd43ddb0b55cb"
      ],
      "author": {
        "name": "shrabanti722",
        "email": "73310711+shrabanti722@users.noreply.github.com",
        "time": "Mon Jul 13 19:29:18 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 13 19:29:18 2026"
      },
      "message": "[video_player] Implement screen auto-lock control for video playback (#11225)\n\n## Description\r\n\r\nAdds support for screen auto-lock during video playback on iOS.\r\n\r\nBy default, the video player keeps the screen awake during playback. Some apps (e.g. login screens with background videos, ambient content) want the screen to be able to auto-lock while video plays. This PR adds an option to allow that behavior.\r\n\r\n### Changes\r\n\r\n* Add `preventsDisplaySleepDuringVideoPlayback` to `VideoPlayerOptions` (default: `true` to preserve existing behavior)\r\n* When `false`, the screen can auto-lock during playback\r\n* Implemented on iOS/macOS via `AVPlayer.preventsDisplaySleepDuringVideoPlayback`\r\n* Platform interface: `setPreventsDisplaySleepDuringVideoPlayback(int playerId, bool preventsDisplaySleepDuringVideoPlayback)`\r\n\r\n### Usage\r\n\r\n```dart\r\nVideoPlayerController.networkUrl(\r\n  url,\r\n  videoPlayerOptions: VideoPlayerOptions(preventsDisplaySleepDuringVideoPlayback: false),\r\n);\r\n```\r\n\r\n## Breakout PRs\r\n\r\n1. Platform interface: #11546\r\n2. AVFoundation (iOS/macOS): #11547\r\n\r\n## Issues fixed\r\n\r\n* Fixes: [flutter/flutter#183520](https://github.com/flutter/flutter/issues/183520) (How to disable wakelock on iOS side?)\r\n* Addresses the need to allow screen auto-lock during video playback on iOS (e.g. for ambient/background videos)\r\n\r\n## Pre-Review Checklist"
    },
    {
      "commit": "ad2eab1b9fa3901d43b2383272ffd43ddb0b55cb",
      "tree": "994e9da3a711a502add6750fa5addc052d3dadc7",
      "parents": [
        "83b39db4d7539e244550dbdc4bb5b2e82ce796e7"
      ],
      "author": {
        "name": "osaki",
        "email": "35750184+motucraft@users.noreply.github.com",
        "time": "Mon Jul 13 17:13:51 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 13 17:13:51 2026"
      },
      "message": "[camera] Guard CameraController value updates after dispose (#11861)\n\nGuards the `value` assignments in `_initializeWithDescription` so they no longer run after `dispose()`, fixing the \"A CameraController was used after being disposed.\" crash.\r\n\r\nThese user-level steps, using the reproduction app in flutter/flutter#184959, trigger the crash:\r\n1. Open camera A.\r\n2. Close it before initialization finished (disposing the controller).\r\n3. Open camera B.\r\n4. Adjust an exposure/zoom slider.\r\n\r\nWhen the controller is disposed while initialization is still in flight, the deferred `value` updates could call `notifyListeners()` on a disposed `ChangeNotifier`, throwing the exception above.\r\nThis adds `if (!_isDisposed)` guards (and awaits the initialization event only once) so those updates are skipped after dispose.\r\nThe guard lives in shared Dart code, so it also covers iOS and web.\r\n\r\nPart of flutter/flutter#184959.\r\n\r\nThis PR addresses only the Dart-layer crash. As @mbcorona noted in https://github.com/flutter/flutter/issues/184959#issuecomment-4238459981, the ANR observed on Android has a separate native root cause (`ImageReader` not severing the stream on dispose, \"BufferQueue has been abandoned\"), which was routed to team-android. That native issue is not addressed here and should be handled separately in `camera_android_camerax`.\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "83b39db4d7539e244550dbdc4bb5b2e82ce796e7",
      "tree": "2a57ba9fc8e4be5f5259e495babe28b3e513d3bb",
      "parents": [
        "c8937ef6674b8de8d5ef8c89f46a7820fe8dcf1b"
      ],
      "author": {
        "name": "Tong Mu",
        "email": "dkwingsmt@users.noreply.github.com",
        "time": "Mon Jul 13 17:05:04 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 13 17:05:04 2026"
      },
      "message": "[material_ui] Remove unused example files  (#12179)\n\nThese example files are not used in `material_ui` anywhere. They\u0027re testing widgets defined in `flutter/widgets`, and these examples are only referenced in docs in `flutter/widgets`. \r\n\r\nThis PR removes these files from `material_ui`. A subsequent PR will fix `flutter/widgets` to move these example files to `flutter/widgets/examples`, preserving them after the deprecation of `flutter/material`.\r\n\r\nThere are no cases of the same kind in `cupertino_ui`.\r\n\r\n**Note to reviewers:** This is not a blocker to the 1.0 release, since it\u0027s a no-op. I\u0027m happy to postpone this PR if deemed necessary.\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "c8937ef6674b8de8d5ef8c89f46a7820fe8dcf1b",
      "tree": "f0ee66bdfd57a2fdf7f192175683188e9bbb8f2f",
      "parents": [
        "41667e877068933cb9ff6c76df1cfb3f980db2aa"
      ],
      "author": {
        "name": "Puneet kukreja",
        "email": "puneetkukreja98@gmail.com",
        "time": "Mon Jul 13 17:05:02 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 13 17:05:02 2026"
      },
      "message": "[google_maps_flutter_platform_interface] Adds support for mapTypeControlEnabled, fullscreenControlEnabled, and streetViewControlEnabled for web (#12191)\n\n*Part of https://github.com/flutter/packages/pull/11955*\r\n\r\n*Part of: https://github.com/flutter/flutter/issues/104111*\r\n\r\n**Context**:\r\nAs suggested in the review - https://github.com/flutter/packages/pull/11955#pullrequestreview-4674150031, this is a standalone sub-PR separating out just the platform interface changes. \r\nIt introduces the necessary configuration flags (`mapTypeControlEnabled`, `fullscreenControlEnabled`, and `streetViewControlEnabled`) to `MapConfiguration` to pave the way for the web implementation.\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "41667e877068933cb9ff6c76df1cfb3f980db2aa",
      "tree": "8f62db7e7f8d864c4f41f0b00e6f27d94875a322",
      "parents": [
        "aa3c5cf06ad00e1ebbb0963ce862ef8b085431c4"
      ],
      "author": {
        "name": "PRANTA Dutta",
        "email": "44747303+theprantadutta@users.noreply.github.com",
        "time": "Mon Jul 13 16:54:00 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 13 16:54:00 2026"
      },
      "message": "[pigeon] Report a clear error for enhanced enums (#11880)\n\nPigeon\u0027s input parser silently ignored the extra syntax in enhanced enums (constructors, fields, methods, or arguments on values), reading only the value names. This produced confusing generated output — as described in the linked issue, the enum\u0027s fields were effectively coalesced into the next class — with no indication that the input was unsupported.\n\nThis change detects enhanced enums in `visitEnumDeclaration` and reports a clear, source-located error:\n\n```\nPigeon doesn\u0027t support enhanced enums (\"Enum1\"). Use a plain enum without a constructor, fields, methods, or arguments on its values.\n```\n\nImplementation notes:\n\n- The enum is still registered by its value names so that classes referencing it don\u0027t produce additional cascading \"Unknown type\" errors — the user sees exactly one actionable message, and recording the error already prevents code generation.\n- The visitor no longer walks the enhanced enum\u0027s body. Its class-like members aren\u0027t expected outside of a class by the rest of the visitor; in particular, a getter inside an enum previously crashed the parser on a null parameter list (`visitMethodDeclaration`\u0027s `node.parameters!`). One of the new tests covers this case.\n- Plain enums (including the legal trailing-semicolon form `enum E { a, b; }`) are unaffected; a test guards against false positives.\n\nThe scope follows the approach discussed and agreed in the issue thread (silent failure → clear error; no attempt to actually support enhanced enums).\n\nFixes https://github.com/flutter/flutter/issues/160827\n\n## Pre-Review Checklist\n\nFour new tests in `pigeon_lib_test.dart`: enhanced enum with constructor+fields, enhanced enum with only arguments on values, enhanced enum with a getter (the previous parser-crash case), and a plain enum with a trailing semicolon (false-positive guard). The full `pigeon_lib_test.dart` suite (113 tests) and `version_test.dart` pass locally."
    },
    {
      "commit": "aa3c5cf06ad00e1ebbb0963ce862ef8b085431c4",
      "tree": "e66c565e65a82f55dc506a386a16ba07f9cc5be8",
      "parents": [
        "653adf79bfb6c9e2a3c89c9a9fbf8fcace05afcd"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Mon Jul 13 16:53:57 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 13 16:53:57 2026"
      },
      "message": "Bump actions/labeler from 6.1.0 to 6.2.0 in the all-github-actions group (#12190)\n\nBumps the all-github-actions group with 1 update: [actions/labeler](https://github.com/actions/labeler).\n\nUpdates `actions/labeler` from 6.1.0 to 6.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href\u003d\"https://github.com/actions/labeler/releases\"\u003eactions/labeler\u0027s releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.2.0\u003c/h2\u003e\n\u003ch2\u003eWhat\u0027s Changed\u003c/h2\u003e\n\u003ch3\u003eBug Fix\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove PR number validation and warning messages in input handling by \u003ca href\u003d\"https://github.com/chiranjib-swain\"\u003e\u003ccode\u003e@​chiranjib-swain\u003c/code\u003e\u003c/a\u003e in \u003ca href\u003d\"https://redirect.github.com/actions/labeler/pull/939\"\u003eactions/labeler#939\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDependency Updates\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump js-yaml to 4.2.0, apply npm audit fix, and add undici override  by \u003ca href\u003d\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href\u003d\"https://redirect.github.com/actions/labeler/pull/943\"\u003eactions/labeler#943\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump \u003ccode\u003e@​typescript-eslint/eslint-plugin\u003c/code\u003e from 8.59.1 to 8.61.1 by \u003ca href\u003d\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href\u003d\"https://redirect.github.com/actions/labeler/pull/942\"\u003eactions/labeler#942\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href\u003d\"https://github.com/actions/labeler/compare/v6.1.0...v6.2.0\"\u003ehttps://github.com/actions/labeler/compare/v6.1.0...v6.2.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href\u003d\"https://github.com/actions/labeler/commit/b8dd2d9be0f68b860e7dae5dae7d772984eacd6d\"\u003e\u003ccode\u003eb8dd2d9\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003e@​typescript-eslint/eslint-plugin\u003c/code\u003e from 8.59.1 to 8.61.1 (\u003ca href\u003d\"https://redirect.github.com/actions/labeler/issues/942\"\u003e#942\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href\u003d\"https://github.com/actions/labeler/commit/53affe8ca4150876fc7eb7d268d3a1f74511a244\"\u003e\u003ccode\u003e53affe8\u003c/code\u003e\u003c/a\u003e Bump js-yaml to 4.2.0, apply npm audit fix, and add undici override for 0 vul...\u003c/li\u003e\n\u003cli\u003e\u003ca href\u003d\"https://github.com/actions/labeler/commit/f612d9ad188e81643862c2de70f57fbb1d17abd1\"\u003e\u003ccode\u003ef612d9a\u003c/code\u003e\u003c/a\u003e Fix: Improve PR number validation and warning messages in input handling (\u003ca href\u003d\"https://redirect.github.com/actions/labeler/issues/939\"\u003e#939\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href\u003d\"https://github.com/actions/labeler/compare/f27b608878404679385c85cfa523b85ccb86e213...b8dd2d9be0f68b860e7dae5dae7d772984eacd6d\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name\u003dactions/labeler\u0026package-manager\u003dgithub_actions\u0026previous-version\u003d6.1.0\u0026new-version\u003d6.2.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don\u0027t alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency\u0027s major version (unless you unignore this specific dependency\u0027s major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency\u0027s minor version (unless you unignore this specific dependency\u0027s minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\u003c/details\u003e"
    },
    {
      "commit": "653adf79bfb6c9e2a3c89c9a9fbf8fcace05afcd",
      "tree": "b2addd7b413e4e4140e8286da29bbcfb2db20fa7",
      "parents": [
        "2fe25176715ef35e8d1a7932e9fca5c914e45718"
      ],
      "author": {
        "name": "stuartmorgan-g",
        "email": "stuartmorgan@google.com",
        "time": "Mon Jul 13 16:53:54 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 13 16:53:54 2026"
      },
      "message": "[shared_preferences] Convert legacy codepath to Kotlin (#12139)\n\nSince this plugin already uses Kotlin code for the new codepaths, it doesn\u0027t fall under our usual policy of currently not converting code to Kotlin, we just never bothered to do the conversion for the old code. This converts the legacy implementation to Kotlin so that the plugin is consistent. The process for this conversion was:\r\n- use the Android Studio auto-conversion to Kotlin\r\n- fix up type nullability (the auto-convert assumes non-annotated types, including any generics, are nullable)\r\n- remove Throws annotations that aren\u0027t needed in Kotlin\r\n- autoformat\r\n- do a couple of conversions from direct Java translation to more idiomatic Dart, especially around collection filtering and mutation\r\n\r\nI did also remove some duplicate string constants and switched to the copies that the non-legacy Kotlin code already had, since sharing those constants was now trivial, and less duplication is better.\r\n\r\nPer our usual best practice, this doesn\u0027t convert the tests in the same PR, so that we guarantee that we aren\u0027t masking a regression with an accidental test change. I\u0027ll convert the unit tests in a separate PR with no changes to functional code.\r\n\r\nPart of https://github.com/flutter/flutter/issues/188630\r\n\r\n## Pre-Review Checklist\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "2fe25176715ef35e8d1a7932e9fca5c914e45718",
      "tree": "e6c4fd00f6bd4b90bf5fbfef1ef82c1dfe6a7a0e",
      "parents": [
        "523ad9ef13e8a896895bfedd89c1286c0a4407ed"
      ],
      "author": {
        "name": "engine-flutter-autoroll",
        "email": "engine-flutter-autoroll@skia.org",
        "time": "Sun Jul 12 22:09:27 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jul 12 22:09:27 2026"
      },
      "message": "Roll Flutter from f7b66f3e7b4d to cf9e8afe9a5e (11 revisions) (#12188)\n\nhttps://github.com/flutter/flutter/compare/f7b66f3e7b4d...cf9e8afe9a5e\n\n2026-07-12 srawlins@google.com Flip from deprecated strict analysis modes to lint rules (flutter/flutter#187692)\n2026-07-12 engine-flutter-autoroll@skia.org Roll Skia from 6ecffccd32d5 to 8bf65996caba (5 revisions) (flutter/flutter#189333)\n2026-07-11 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from czpzDg9ABY2oKLAOY... to vhIlDkWIy21IrlB9E... (flutter/flutter#189309)\n2026-07-11 chris@bracken.jp iOS: clean up swiftc.py after migration to target triples (flutter/flutter#189240)\n2026-07-10 magder@google.com Increase number of \u0027Mac tool_integration_tests\u0027 subshards from 5 to 10 (flutter/flutter#189040)\n2026-07-10 matt.kosarek@canonical.com Fix PopupWindowControllerLinux missing WindowControllerLinux implementation (flutter/flutter#189189)\n2026-07-10 awolff@google.com [android_hardware_smoke_test] Synchronize platform view compositing (flutter/flutter#189151)\n2026-07-10 97480502+b-luk@users.noreply.github.com UberSDF thin roundrect handling (flutter/flutter#189224)\n2026-07-10 engine-flutter-autoroll@skia.org Roll Skia from ab3a7b98c94d to 6ecffccd32d5 (15 revisions) (flutter/flutter#189270)\n2026-07-10 malo.allee@gmail.com [skwasm][canvaskit] Honor Paint.filterQuality in Canvas.drawAtlas (flutter/flutter#186108)\n2026-07-10 awolff@google.com Android_hardware_smoke_test: Cache flutter engine when running vulkan backend instrumented tests (flutter/flutter#189026)\n\nIf this roll has caused a breakage, revert this CL and stop the roller\nusing the controls here:\nhttps://autoroll.skia.org/r/flutter-packages\nPlease CC boetger@google.com,stuartmorgan@google.com on the revert to ensure that a human\nis aware of the problem.\n\nTo file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose\n\nTo report a problem with the AutoRoller itself, please file a bug:\nhttps://issues.skia.org/issues/new?component\u003d1389291\u0026template\u003d1850622\n\nDocumentation for the AutoRoller is here:\nhttps://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md"
    },
    {
      "commit": "523ad9ef13e8a896895bfedd89c1286c0a4407ed",
      "tree": "2852b7abe23bd487fd0fe7545e4f1baec8c67ef5",
      "parents": [
        "06df30cc8c6a02eb07cd4bf84a025c52d317d7fe"
      ],
      "author": {
        "name": "sailendrabathi",
        "email": "44525804+sailendrabathi@users.noreply.github.com",
        "time": "Sat Jul 11 00:54:29 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Jul 11 00:54:29 2026"
      },
      "message": "[video_player] Improve seek performance on Android (#11810)\n\nAdds `backBufferDurationMs` to `VideoPlayerOptions` and configures ExoPlayer\u0027s `DefaultLoadControl` to retain the back buffer from keyframes. This significantly improves seek performance and responsiveness during video playback on Android.\r\n\r\niOS already has some kind of back buffering implemented in AVPlayer because the replays and seeks are instantaneous for small videos.\r\n\r\nBefore:\r\nReplays and seeks on Android for network based video assets involve a network call to fetch the video content. This significantly hampers the user experience.\r\n\r\nAfter:\r\nReplays and seeks on Android (within the back buffer duration) are instant just like in iOS. Improving user experience\r\n\r\nThis PR partly addresses https://github.com/flutter/flutter/issues/97428. Not enabling back buffering by default and instead allowing the app to configure as per need. The default behavior will be same as the existing implementation to avoid any regressions. \r\n\r\n## Pre-Review Checklist"
    },
    {
      "commit": "06df30cc8c6a02eb07cd4bf84a025c52d317d7fe",
      "tree": "61e664de41f0b0e83eb46110906de17adfc2f9fc",
      "parents": [
        "3678ba5e9381d9bb244e29e45ab6de82004e1768"
      ],
      "author": {
        "name": "stuartmorgan-g",
        "email": "stuartmorgan@google.com",
        "time": "Sat Jul 11 00:33:27 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Jul 11 00:33:27 2026"
      },
      "message": "[pigeon] Disable iOS test parallelization (#12177)\n\nParallelizing tests isn\u0027t worth the overhead (and potential flake) of starting up multiple simulators.\r\n\r\nMay address https://github.com/flutter/flutter/issues/189005"
    },
    {
      "commit": "3678ba5e9381d9bb244e29e45ab6de82004e1768",
      "tree": "8d5dd351f31276983a5a78b65fbedb0f0c9dd676",
      "parents": [
        "b416a3b186af7dc35b6ff214dcb8f2f5bdd094fe"
      ],
      "author": {
        "name": "Tong Mu",
        "email": "dkwingsmt@users.noreply.github.com",
        "time": "Sat Jul 11 00:19:09 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Jul 11 00:19:09 2026"
      },
      "message": "[material_ui, cupertino_ui] Migrate snippet TODOs to `\u003ccallout-box\u003e` (#12146)\n\n## Background\r\n\r\n[Dartdoc 9.0.7](https://github.com/dart-lang/dartdoc/pull/4264) added support for `\u003ccallout-box\u003e` (what we used to call the _blue container_).\r\n\r\n## What\u0027s changed\r\n\r\nThis PR migrates all former snippet instances in API docs to `\u003ccallout-box\u003e`. This is what it looks like:\r\n\r\n\u003cimg width\u003d\"734\" height\u003d\"302\" alt\u003d\"image\" src\u003d\"https://github.com/user-attachments/assets/cd0bd77c-4ab2-4875-8fbe-e838e0902c16\" /\u003e\r\n\r\nThis PR also disables `unintended_html_in_doc_comment` because `\u003ccallout-box\u003e` is not recognized by the linter for now. An issue has been filed: https://github.com/dart-lang/sdk/issues/63782\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "b416a3b186af7dc35b6ff214dcb8f2f5bdd094fe",
      "tree": "5c331d8878fbd01c6647df3cf76bf0df93ee740a",
      "parents": [
        "527ad979b03ecf53ccaeee3371f5a98b58962cc3"
      ],
      "author": {
        "name": "Tong Mu",
        "email": "dkwingsmt@users.noreply.github.com",
        "time": "Sat Jul 11 00:19:06 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Jul 11 00:19:06 2026"
      },
      "message": "[cupertino_ui] Fix example path (#12151)\n\nA few example paths are not recognized by `dartdoc` for missing the initial slash.\r\n\r\nThis is the error log thrown by `dartdoc` before the PR:\r\n```\r\n  warning: example file not found: example/lib/magnifier/cupertino_text_magnifier.0.dart\r\n    from magnifier.CupertinoTextMagnifier: (file:///Users/tongmu/dev/packages/packages/cupertino_ui/lib/src/magnifier.dart:39:7)\r\n  warning: example file not found: example/lib/magnifier/cupertino_magnifier.0.dart\r\n    from magnifier.CupertinoMagnifier: (file:///Users/tongmu/dev/packages/packages/cupertino_ui/lib/src/magnifier.dart:251:7)\r\n  warning: example file not found: example/lib/magnifier/text_magnifier.0.dart\r\n    from text_field.CupertinoTextField.magnifierConfiguration: (file:///Users/tongmu/dev/packages/packages/cupertino_ui/lib/src/text_field.dart:850:37)\r\n```\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "527ad979b03ecf53ccaeee3371f5a98b58962cc3",
      "tree": "03fdf0af418d564672d5a2bfa6cd239ec0deb645",
      "parents": [
        "4b3915473f6afee405a69f93bc8e4e4b609ebf2c"
      ],
      "author": {
        "name": "engine-flutter-autoroll",
        "email": "engine-flutter-autoroll@skia.org",
        "time": "Fri Jul 10 17:49:54 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jul 10 17:49:54 2026"
      },
      "message": "Roll Flutter from dc2a8703e12b to f7b66f3e7b4d (12 revisions) (#12175)\n\nhttps://github.com/flutter/flutter/compare/dc2a8703e12b...f7b66f3e7b4d\n\n2026-07-10 P.akhrameev@gmail.com [iOS][test] Fix VSyncClient display link deallocation test on iOS 27 (flutter/flutter#188627)\n2026-07-10 matt.kosarek@canonical.com Fix broken listener code in WindowScope (flutter/flutter#189208)\n2026-07-10 zhongliu88889@gmail.com [web] Preserve text field focus across tab switches (flutter/flutter#188738)\n2026-07-10 bdero@google.com [Impeller] Recycle HostBuffer arena entries only after GPU completion (flutter/flutter#188965)\n2026-07-10 256906086+mvincentong@users.noreply.github.com Assert TextStyle height is not NaN (flutter/flutter#186617)\n2026-07-10 engine-flutter-autoroll@skia.org Roll Fuchsia Test Scripts from dFkTCiDxEtPxYK5Nn... to wLST_A-xfOeGT_5mj... (flutter/flutter#189259)\n2026-07-10 engine-flutter-autoroll@skia.org Roll Dart SDK from a11fb7ed40a5 to 0fc1668c4af4 (5 revisions) (flutter/flutter#189257)\n2026-07-10 52160996+FMorschel@users.noreply.github.com Adds a missing `await` to a `FutureOr` (flutter/flutter#189198)\n2026-07-10 burak.karahan@mail.ru [web] Repair RenderCanvas CSS size drift (flutter/flutter#188797)\n2026-07-10 engine-flutter-autoroll@skia.org Roll Fuchsia Test Scripts from s5_gZFJ8De9AJalTw... to dFkTCiDxEtPxYK5Nn... (flutter/flutter#189215)\n2026-07-10 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from QcRFUtvCw2EobfJ8s... to czpzDg9ABY2oKLAOY... (flutter/flutter#189222)\n2026-07-10 jesswon@google.com Update Depdencies Used By `flutter_engine_group_performance` (flutter/flutter#189229)\n\nIf this roll has caused a breakage, revert this CL and stop the roller\nusing the controls here:\nhttps://autoroll.skia.org/r/flutter-packages\nPlease CC boetger@google.com,stuartmorgan@google.com on the revert to ensure that a human\nis aware of the problem.\n\nTo file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose\n\nTo report a problem with the AutoRoller itself, please file a bug:\nhttps://issues.skia.org/issues/new?component\u003d1389291\u0026template\u003d1850622\n\nDocumentation for the AutoRoller is here:\nhttps://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md"
    },
    {
      "commit": "4b3915473f6afee405a69f93bc8e4e4b609ebf2c",
      "tree": "0afc78b25b2952393059adfd827b5ad058a55737",
      "parents": [
        "7a9fb615925df304795a800f56d9810330c14723"
      ],
      "author": {
        "name": "engine-flutter-autoroll",
        "email": "engine-flutter-autoroll@skia.org",
        "time": "Fri Jul 10 16:00:11 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jul 10 16:00:11 2026"
      },
      "message": "Roll Flutter (stable) from f94f4fc76b4d to ee80f08bbf97 (3 revisions) (#12171)\n\nhttps://github.com/flutter/flutter/compare/f94f4fc76b4d...ee80f08bbf97\n\nIf this roll has caused a breakage, revert this CL and stop the roller\nusing the controls here:\nhttps://autoroll.skia.org/r/flutter-stable-packages\nPlease CC boetger@google.com,stuartmorgan@google.com on the revert to ensure that a human\nis aware of the problem.\n\nTo file a bug in Flutter (stable): https://github.com/flutter/flutter/issues/new/choose\nTo file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose\n\nTo report a problem with the AutoRoller itself, please file a bug:\nhttps://issues.skia.org/issues/new?component\u003d1389291\u0026template\u003d1850622\n\nDocumentation for the AutoRoller is here:\nhttps://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md"
    },
    {
      "commit": "7a9fb615925df304795a800f56d9810330c14723",
      "tree": "9bc49232990172a74017bfd6423bdee92e9d797d",
      "parents": [
        "cf2f15c8fae7c7b4f03df9b23ba9862a72eb38f8"
      ],
      "author": {
        "name": "engine-flutter-autoroll",
        "email": "engine-flutter-autoroll@skia.org",
        "time": "Fri Jul 10 04:20:23 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jul 10 04:20:23 2026"
      },
      "message": "Manual roll Flutter from 91939cc4db78 to dc2a8703e12b (50 revisions) (#12169)\n\nManual roll Flutter from 91939cc4db78 to dc2a8703e12b (50 revisions)\n\nManual roll requested by bensonluk@google.com\n\nhttps://github.com/flutter/flutter/compare/91939cc4db78...dc2a8703e12b\n\n2026-07-09 chris@bracken.jp [ios,macos] Update swiftc.py flags to match swiftc (flutter/flutter#189174)\n2026-07-09 jesswon@google.com [AGP 9] Update Warn Version to AGP 9+ (flutter/flutter#189109)\n2026-07-09 154381524+flutteractionsbot@users.noreply.github.com Sync CHANGELOG.md from stable (flutter/flutter#189203)\n2026-07-09 mdebbar@google.com [web] Roll Chrome to 145 (framework) (flutter/flutter#182861)\n2026-07-09 engine-flutter-autoroll@skia.org Roll Packages from 52d84d6a2acd to 20928d58f507 (6 revisions) (flutter/flutter#189194)\n2026-07-09 zhongliu88889@gmail.com [web] Avoid absolute positioning for base CanvasKit canvas (flutter/flutter#188337)\n2026-07-09 engine-flutter-autoroll@skia.org Roll Dart SDK from cdb7217e65aa to a11fb7ed40a5 (6 revisions) (flutter/flutter#189195)\n2026-07-09 matt.kosarek@canonical.com Fix dereference of nullptr in the moved-to-rect signal in the Linux embedder (flutter/flutter#189152)\n2026-07-09 katelovett@google.com Fix data for design packages (flutter/flutter#189140)\n2026-07-09 engine-flutter-autoroll@skia.org Roll Skia from 7b42d1251d54 to ab3a7b98c94d (2 revisions) (flutter/flutter#189181)\n2026-07-09 engine-flutter-autoroll@skia.org Roll Skia from 05d9d214e0b7 to 7b42d1251d54 (2 revisions) (flutter/flutter#189175)\n2026-07-09 engine-flutter-autoroll@skia.org Roll Skia from 542c8bdd7f4f to 05d9d214e0b7 (4 revisions) (flutter/flutter#189169)\n2026-07-09 97480502+b-luk@users.noreply.github.com UberSDF rect handling for thin (line-like) rectangles (flutter/flutter#188821)\n2026-07-09 engine-flutter-autoroll@skia.org Roll Skia from dd572c07f63c to 542c8bdd7f4f (4 revisions) (flutter/flutter#189160)\n2026-07-09 markzipan@google.com [flutter_tools] Fix hot restart for WASM web builds (flutter/flutter#187898)\n2026-07-08 robert.ancell@canonical.com Split FlViewRenderer into OpenGL and software backends (flutter/flutter#188824)\n2026-07-08 awolff@google.com Promote android_hardware_smoke_tests out of bringup in CI (flutter/flutter#189081)\n2026-07-08 engine-flutter-autoroll@skia.org Roll Skia from 8df24be66531 to dd572c07f63c (4 revisions) (flutter/flutter#189150)\n2026-07-08 matt.kosarek@canonical.com Expose LinuxWindowRegistrar on _window_linux.dart in order to better support out of tree LinuxWindowingOwners (flutter/flutter#188917)\n2026-07-08 137456488+flutter-pub-roller-bot@users.noreply.github.com Roll pub packages (flutter/flutter#189149)\n2026-07-08 codefu@google.com fix(ci): harden some workflows (flutter/flutter#189087)\n2026-07-08 engine-flutter-autoroll@skia.org Roll Skia from 51a62da33da0 to 8df24be66531 (1 revision) (flutter/flutter#189139)\n2026-07-08 iinozemtsev@google.com Roll Dart SDK to Dart 3.13 beta3 (flutter/flutter#189122)\n2026-07-08 digvijaysinghiam@gmail.com [flutter_tools] Don\u0027t crash on non-UTF-8 plugin pubspec.yaml (flutter/flutter#188976)\n2026-07-08 bkonyi@google.com [flutter_tools] Watch transitive #include headers for FragmentProgram hot reload (flutter/flutter#187945)\n2026-07-08 engine-flutter-autoroll@skia.org Roll Skia from 040d9f55de00 to 51a62da33da0 (1 revision) (flutter/flutter#189135)\n2026-07-08 engine-flutter-autoroll@skia.org Roll Packages from 92525f51fe4b to 52d84d6a2acd (7 revisions) (flutter/flutter#189134)\n2026-07-08 bkonyi@google.com [flutter_tools] Forcefully kill hung subprocesses 5 seconds after timeout (flutter/flutter#187178)\n2026-07-08 malo.allee@gmail.com Expose the app\u0027s build name and number as compile-time constants (flutter/flutter#187935)\n2026-07-08 engine-flutter-autoroll@skia.org Roll Skia from 1ff92f879815 to 040d9f55de00 (1 revision) (flutter/flutter#189131)\n2026-07-08 engine-flutter-autoroll@skia.org Roll Skia from 6137414bef5c to 1ff92f879815 (6 revisions) (flutter/flutter#189126)\n2026-07-08 brackenavaron@gmail.com [test cross imports] More test/rendering + flutter_test/test fixes (flutter/flutter#188954)\n2026-07-08 112751483+shivanshu877@users.noreply.github.com engine: explain why each candidate build was skipped in Flutter web loader (flutter/flutter#186254)\n2026-07-08 chris@bracken.jp vscode: add missing unicode.h (flutter/flutter#189102)\n2026-07-08 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from 7RjQJBW3m-3Jl-7jr... to QcRFUtvCw2EobfJ8s... (flutter/flutter#189104)\n2026-07-08 engine-flutter-autoroll@skia.org Roll Skia from 075fbe4778d9 to 6137414bef5c (10 revisions) (flutter/flutter#189106)\n2026-07-08 112751483+shivanshu877@users.noreply.github.com engine: warn on WASM load failure when not crossOriginIsolated (flutter/flutter#186252)\n2026-07-08 engine-flutter-autoroll@skia.org Roll Dart SDK from c9bccc09e733 to db2155f56bf3 (2 revisions) (flutter/flutter#189105)\n2026-07-08 bkonyi@google.com [flutter_tools] Prevent interactive device selection in machine mode (flutter/flutter#188267)\n2026-07-08 bkonyi@google.com [flutter_tools] Fix wireless ADB device discovery when serial contains spaces (flutter/flutter#187943)\n2026-07-07 zhongliu88889@gmail.com [web] Fix grouped autofill on iOS Chrome (flutter/flutter#187459)\n2026-07-07 rmolivares@renzo-olivares.dev Fix TextSelectionOverlay crash when layout is degenerate (flutter/flutter#188672)\n2026-07-07 87962825+kyungilcho@users.noreply.github.com [flutter_tools] Provision Android NDK in the main Gradle invocation (flutter/flutter#186337)\n2026-07-07 awolff@google.com Android_hardware_smoke_test: Migrate to AGP 9 (flutter/flutter#189082)\n..."
    },
    {
      "commit": "cf2f15c8fae7c7b4f03df9b23ba9862a72eb38f8",
      "tree": "a1db59fadee86c99aed9d63843626e1ddd417df3",
      "parents": [
        "16204fd5ed0333e45dbb0f3a4b6b2492f84bacf5"
      ],
      "author": {
        "name": "jesswrd",
        "email": "jessiewong401@gmail.com",
        "time": "Thu Jul 09 23:05:20 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 09 23:05:20 2026"
      },
      "message": "Update `legacy` test to be in Warn Range (#12168)\n\nI updated the error and warn versions in this PR: https://github.com/flutter/flutter/pull/189109, which broke the flutter roll into packages. The legacy version was below the error version, so I upgraded the version to the error version (which is in the warn range).\r\n\r\nSome helpful definitions:\r\n[very low version, error version) --\u003e in error range; app fails (legacy test fell in this range)\r\n[error version, warn version) --\u003e in warn range (warning logs)\r\n[warn version, some very modern version) --\u003e safe range (no logs)\r\n\r\nFixes: https://github.com/flutter/flutter/issues/189218\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "16204fd5ed0333e45dbb0f3a4b6b2492f84bacf5",
      "tree": "1ae64465c14259418db9aaeb9f95a48e500b9a49",
      "parents": [
        "16a275b7c0e2d5d96554ec06338f12fa4a770c68"
      ],
      "author": {
        "name": "Tong Mu",
        "email": "dkwingsmt@users.noreply.github.com",
        "time": "Thu Jul 09 22:10:50 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 09 22:10:50 2026"
      },
      "message": "[material_ui, cupertino_ui] Migrate dartpad TODOs to `\u003ccallout-box\u003e` (#12120)\n\n## Background\r\n\r\n[Dartdoc 9.0.7](https://github.com/dart-lang/dartdoc/pull/4264) added support for `\u003ccallout-box\u003e` (what we used to call the _blue container_).\r\n\r\n## What\u0027s changed\r\n\r\nThis PR migrates all should-be Dartpad instances in API docs to `\u003ccallout-box\u003e`. This is what it looks like:\r\n\r\n\u003cimg width\u003d\"722\" height\u003d\"640\" alt\u003d\"image\" src\u003d\"https://github.com/user-attachments/assets/c508c8b1-9b97-4500-9aea-cf2bce81df0a\" /\u003e\r\n\r\nThis PR also disables `unintended_html_in_doc_comment` because `\u003ccallout-box\u003e` is not recognized by the linter for now. An issue has been filed: https://github.com/dart-lang/sdk/issues/63782\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "16a275b7c0e2d5d96554ec06338f12fa4a770c68",
      "tree": "476f2f0c1400ba921d251fed18310ffb7142720a",
      "parents": [
        "3de63c8fbec271c751b82035bf10b18478e63ec4"
      ],
      "author": {
        "name": "shrabanti722",
        "email": "73310711+shrabanti722@users.noreply.github.com",
        "time": "Thu Jul 09 21:51:51 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 09 21:51:51 2026"
      },
      "message": "[video_player_avfoundation] Implement preventsDisplaySleepDuringVideoPlayback (#11547)\n\n## Description\r\n\r\nImplements the `setPreventsDisplaySleepDuringVideoPlayback` platform interface method using `AVPlayer.preventsDisplaySleepDuringVideoPlayback` on iOS and macOS.\r\n\r\nAVFoundation implementation breakout PR for flutter/packages#11225.\r\n\r\n## Dependencies\r\n\r\n- **Depends on the `video_player_platform_interface` 6.7.0 breakout PR.** CI will fail until that PR lands and the new interface version is published. Keeping this PR in draft until then.\r\n\r\n## Changes\r\n\r\n- Implements `setPreventsDisplaySleepDuringVideoPlayback` in `FVPVideoPlayer.m` and wires it through the Dart platform implementation.\r\n- Adds the Pigeon method definition and regenerates messages (includes a pigeon v26.1.7 → v26.2.3 bump carried over from the parent PR).\r\n- Bumps `video_player_avfoundation` to 2.10.0 and updates the `video_player_platform_interface` constraint to ^6.7.0.\r\n- Updates CHANGELOG.\r\n\r\n## Related\r\n\r\n- Parent PR: flutter/packages#11225\r\n- Fixes: flutter/flutter#183520"
    },
    {
      "commit": "3de63c8fbec271c751b82035bf10b18478e63ec4",
      "tree": "02acb6add50420442d58f9edcdb1c7a92753f09c",
      "parents": [
        "20928d58f50700f7bb08e1146e204cded334aabf"
      ],
      "author": {
        "name": "PRANTA Dutta",
        "email": "44747303+theprantadutta@users.noreply.github.com",
        "time": "Thu Jul 09 15:10:13 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 09 15:10:13 2026"
      },
      "message": "[pigeon] Add usage docs to generated Dart event channel methods (#11894)\n\nThe generated event-channel method creates a new `EventChannel` each time it is called, but nothing in the generated code documented that — making it easy to call repeatedly for the same instance, or to assume the returned stream is single-subscription. This implements the \"definitely\" part of the linked issue:\n\n\u003e Definitely add docs to the generated code, indicated both that it shouldn\u0027t be called multiple times for the same instance, and that the returned stream is a broadcast stream.\n\nEach generated event-channel method now gets a usage doc comment:\n\n```dart\n/// Returns a broadcast [Stream] of events from the `streamEvents` event channel.\n///\n/// Each call to this method creates a new [EventChannel], so it should\n/// not be called multiple times for the same `instanceName`. To deliver\n/// events to multiple listeners, call this method once and listen to the\n/// returned broadcast stream multiple times instead.\n```\n\nWhile there, this also emits the user\u0027s own documentation comments on event channel methods — previously only the API-level comments were emitted and per-method comments were silently dropped. The two are combined via the existing `generatorComments` mechanism in `addDocumentationComments`, which already handles user-comment/generator-comment separation.\n\nThe wrapper-object and renaming ideas from the issue are intentionally not addressed here, per the discussion — those are design decisions; this PR is scoped to the documentation gap.\n\nChecked-in generated files containing event channels (`example/app` and `shared_test_plugin_code`) are regenerated. The new generator test verifies both the user comments and the usage docs are emitted directly above the generated method, and fails without the generator change.\n\nFixes https://github.com/flutter/flutter/issues/177776\n\n## Pre-Review Checklist\n\nNote: the multi-language auto-formatter step of `tool/generate.dart` could not run fully on this machine (missing clang-format and related binaries); only Dart outputs changed, and those were formatted with `dart format`. If CI\u0027s format check flags anything, I\u0027ll address it."
    },
    {
      "commit": "20928d58f50700f7bb08e1146e204cded334aabf",
      "tree": "a7af8f2934819cbad91d4c7ff858e72d5a2f98e5",
      "parents": [
        "6fa759e438451d29e1870d742dde6b6635b309f3"
      ],
      "author": {
        "name": "sailendrabathi",
        "email": "44525804+sailendrabathi@users.noreply.github.com",
        "time": "Thu Jul 09 14:52:25 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 09 14:52:25 2026"
      },
      "message": "[video_player_android] Implement backBufferDurationMs in ExoPlayer (#12124)\n\nAdds `backBufferDurationMs` to `video_player_android`\r\n\r\nThis PR has only the android package changes from the main PR: https://github.com/flutter/packages/pull/11810.\r\n\r\nFollowing PR split as per [Changing federated plugins](https://github.com/flutter/flutter/blob/master/docs/ecosystem/contributing/README.md#changing-federated-plugins)\r\n\r\n## Pre-Review Checklist"
    },
    {
      "commit": "6fa759e438451d29e1870d742dde6b6635b309f3",
      "tree": "7c3b0a8e9cf596c0644476ffc7bc0b36575851ed",
      "parents": [
        "84e73e8828b5620250bbe6523232334e7fa40667"
      ],
      "author": {
        "name": "Ludwig Bolling",
        "email": "bolling.ludwig@gmail.com",
        "time": "Thu Jul 09 14:44:26 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 09 14:44:26 2026"
      },
      "message": "[camera_platform_interface] Make setJpegImageQuality default a no-op (#12123)\n\nThe default implementation of `setJpegImageQuality` threw `UnimplementedError`, but there is no support-query API for it, so a client has no way to know whether it is safe to call (raised in review of flutter/packages#11155). JPEG quality is a best-effort setting, so this changes the default to a no-op: platforms that support it override the method, and platforms that don\u0027t (e.g. web) simply ignore it."
    },
    {
      "commit": "84e73e8828b5620250bbe6523232334e7fa40667",
      "tree": "d41c99f9089d4fd51e60e2fa57cc0d08ef8cbe01",
      "parents": [
        "e9ff9cb9e95faca5107b329bdb20876759e1c701"
      ],
      "author": {
        "name": "anirudhsharma392",
        "email": "36081049+anirudhsharma392@users.noreply.github.com",
        "time": "Thu Jul 09 12:27:26 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 09 12:27:26 2026"
      },
      "message": "[local_auth] Clarify getAvailableBiometrics documentation regarding iOS permissions (#11901)\n\nClarifies the `getAvailableBiometrics` docstring to explain that it returns biometrics available for the app to use, which may not include all enrolled biometrics (e.g., if iOS permission has not been granted).\r\n\r\nFixes: https://github.com/flutter/flutter/issues/187512\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.\r\n\r\n### Exceptions\r\n- **Test Exemption**: This PR is exempt from testing because it is a documentation-only change."
    },
    {
      "commit": "e9ff9cb9e95faca5107b329bdb20876759e1c701",
      "tree": "a532b0767cafe97ea4c7b44c91f82437a63de8f2",
      "parents": [
        "b6263869b070b94d8079fea2b6682e4e78bc6179"
      ],
      "author": {
        "name": "stuartmorgan-g",
        "email": "stuartmorgan@google.com",
        "time": "Thu Jul 09 11:27:06 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 09 11:27:06 2026"
      },
      "message": "[ci] Add a third web Dart unit test shard (2/2) (#12150)\n\nTakes the new shard out of bring-up, and adjusts the existing shards to expect three shards rather than two."
    },
    {
      "commit": "b6263869b070b94d8079fea2b6682e4e78bc6179",
      "tree": "463d8842f661c2d0e7d5e223aefa1d00ef7cd14a",
      "parents": [
        "71ddd076810dfbf7a22c67d98c250bd26a431dfb"
      ],
      "author": {
        "name": "stuartmorgan-g",
        "email": "stuartmorgan@google.com",
        "time": "Wed Jul 08 19:36:14 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 08 19:36:14 2026"
      },
      "message": "[ci] Add a third web Dart unit test shard (1/2) (#12138)\n\nThe web Dart unit tests are currently some of our slowest tests, and shard 2 is on the brink of hitting the 60 minute timeout. This is the first half of the process of switching from 2 shards to three shards, adding the new tasks in bringup mode but not yet changing the existing shards. Once this lands and propagates, a second PR will switch to actually using three shards.\r\n\r\nThis brings us closer to our limit of 100 post-submit tasks for our wait-for-release action, but doesn\u0027t yet cross it (and we expect that limit to stop being an issue soon)."
    },
    {
      "commit": "71ddd076810dfbf7a22c67d98c250bd26a431dfb",
      "tree": "75e4a125d005d1a321289fd6b5c297da845ad879",
      "parents": [
        "52d84d6a2acdea629360e30e8d43943041a4ca36"
      ],
      "author": {
        "name": "Camille Simon",
        "email": "43054281+camsim99@users.noreply.github.com",
        "time": "Wed Jul 08 16:34:21 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 08 16:34:21 2026"
      },
      "message": "Add pre-commit hook to verify static analysis passes \u0026 format is correct (#11941)\n\nAdds a pre-commit hook that you can install to verify that `dart analyze --fatal-infos` and the package format are correct when you make a call to `git commit`. Intended to ensure agents commit code that meets are quality standards.\r\n\r\nAlso makes the following updates the plugins tool:\r\n\r\n- Adds `--run-on-staged-packages` flag that allows the command to only run on files with staged changes. This flag cannot be run with any other flags that filter packages where the command runs (like `--run-on-dirty-packages`)\r\n- Adds optimization to the format tool to avoid invoking native tool chains to format when non-native files are modified\r\n\r\nMiscellaneous notes:\r\n\r\n- `script/githooks/bin/install_hooks.dart` is the script to install the hook that devs would need to run to use it.\r\n- I modeled the new `githooks` directory like https://github.com/flutter/flutter/tree/master/engine/src/flutter/tools/githooks to make it easier for folks to add new hooks\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "52d84d6a2acdea629360e30e8d43943041a4ca36",
      "tree": "c2f8cb1213c5eafa6c24601eb67497596258eca8",
      "parents": [
        "effd3a0e7c338e1c9449f6dad501b327daee8f86"
      ],
      "author": {
        "name": "engine-flutter-autoroll",
        "email": "engine-flutter-autoroll@skia.org",
        "time": "Wed Jul 08 11:36:25 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 08 11:36:25 2026"
      },
      "message": "Manual roll Flutter from 6995038d96ef to 91939cc4db78 (48 revisions) (#12137)\n\nManual roll Flutter from 6995038d96ef to 91939cc4db78 (48 revisions)\n\nManual roll requested by stuartmorgan@google.com\n\nhttps://github.com/flutter/flutter/compare/6995038d96ef...91939cc4db78\n\n2026-07-07 engine-flutter-autoroll@skia.org Roll Skia from 80ae1deed9ed to 075fbe4778d9 (6 revisions) (flutter/flutter#189067)\n2026-07-07 katelovett@google.com Bump customer testing version for new registrants (flutter/flutter#189070)\n2026-07-07 engine-flutter-autoroll@skia.org Roll Packages from fc00cebca28e to 92525f51fe4b (2 revisions) (flutter/flutter#189069)\n2026-07-07 47866232+chunhtai@users.noreply.github.com fix android semantics integration test hangs due to postframe callback (flutter/flutter#189043)\n2026-07-07 katelovett@google.com Bump goldctl (flutter/flutter#189030)\n2026-07-07 engine-flutter-autoroll@skia.org Roll Skia from 71db7c06c5fe to 80ae1deed9ed (2 revisions) (flutter/flutter#189060)\n2026-07-07 magder@google.com Collect analytics on AI agent usage (flutter/flutter#187630)\n2026-07-07 engine-flutter-autoroll@skia.org Roll Skia from 125a76cc4cf3 to 71db7c06c5fe (4 revisions) (flutter/flutter#189054)\n2026-07-07 engine-flutter-autoroll@skia.org Roll Dart SDK from 70577d6f2bba to c648e3429d76 (1 revision) (flutter/flutter#189052)\n2026-07-07 vuhoangminh97@gmail.com Fix RenderSliverPadding setter assertion (flutter/flutter#187353)\n2026-07-07 engine-flutter-autoroll@skia.org Roll Skia from 2dde156aec3e to 125a76cc4cf3 (3 revisions) (flutter/flutter#189037)\n2026-07-07 49402500+fahaddoc@users.noreply.github.com Explain asynchronous causes in the setState() called after dispose() error (flutter/flutter#187294)\n2026-07-07 engine-flutter-autoroll@skia.org Roll Skia from 7dccd1e79a5b to 2dde156aec3e (2 revisions) (flutter/flutter#189035)\n2026-07-07 116356835+AbdeMohlbi@users.noreply.github.com Add `STRING_CATALOG_GENERATE_SYMBOLS \u003d YES;` (flutter/flutter#188163)\n2026-07-07 31859944+LongCatIsLooong@users.noreply.github.com Print warnings on Intel Macs / targeting Intel Macs (flutter/flutter#188835)\n2026-07-07 engine-flutter-autoroll@skia.org Roll Dart SDK from 4c03f64b19f6 to 70577d6f2bba (1 revision) (flutter/flutter#189031)\n2026-07-07 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from n1Lm2Z4DZkfC3bwj5... to 7RjQJBW3m-3Jl-7jr... (flutter/flutter#189032)\n2026-07-06 31859944+LongCatIsLooong@users.noreply.github.com Recommend `OverlayPortal.overlayChildLayoutBuilder` over Target-Follower (flutter/flutter#188894)\n2026-07-06 154381524+flutteractionsbot@users.noreply.github.com Sync CHANGELOG.md from stable (flutter/flutter#189025)\n2026-07-06 matt.kosarek@canonical.com Rename preferredSize to size and preferredConstraints to constraints in the windowing API (flutter/flutter#189017)\n2026-07-06 6655696+guidezpl@users.noreply.github.com Skip locked issues in no-response check (flutter/flutter#188950)\n2026-07-06 47866232+chunhtai@users.noreply.github.com Fix potential race condtion in android_semantics_integration_test (flutter/flutter#188830)\n2026-07-06 codefu@google.com ci: udpate wait-for-engine-build composite action to cocoon (flutter/flutter#189020)\n2026-07-06 engine-flutter-autoroll@skia.org Roll Skia from 2b55eed5500d to 7dccd1e79a5b (3 revisions) (flutter/flutter#189021)\n2026-07-06 jesswon@google.com [AGP 9] Update Flutter Template Versions (flutter/flutter#188762)\n2026-07-06 126701490+richyo-codes@users.noreply.github.com fix(engine/windows): keep tooltip position rect alive - fix use after free (flutter/flutter#188476)\n2026-07-06 bkonyi@google.com [Tool] Fix null check operator crash in currentPackageConfig (flutter/flutter#188454)\n2026-07-06 bkonyi@google.com [Tool] Gracefully handle WDAC/AppLocker blocks for impellerc (flutter/flutter#188452)\n2026-07-06 bkonyi@google.com [flutter_tools] Throw DaemonException if app fails to start early (flutter/flutter#188921)\n2026-07-06 engine-flutter-autoroll@skia.org Roll Dart SDK from ce7a2567eb59 to 4c03f64b19f6 (2 revisions) (flutter/flutter#189015)\n2026-07-06 bkonyi@google.com [flutter_tools, engine] Add --disable-service-origin-check option to disable VM service origin checks (flutter/flutter#188745)\n2026-07-06 bkonyi@google.com [flutter_tools] Fix test flakiness in widget_preview_detection_test.dart (flutter/flutter#188922)\n2026-07-06 137456488+flutter-pub-roller-bot@users.noreply.github.com Roll pub packages (flutter/flutter#189009)\n2026-07-06 engine-flutter-autoroll@skia.org Roll Skia from c0e2b9667d91 to 2b55eed5500d (1 revision) (flutter/flutter#189006)\n2026-07-06 engine-flutter-autoroll@skia.org Roll Packages from 2fbe8734f450 to fc00cebca28e (1 revision) (flutter/flutter#189007)\n2026-07-06 engine-flutter-autoroll@skia.org Roll Skia from b68567542f81 to c0e2b9667d91 (1 revision) (flutter/flutter#189004)\n2026-07-06 Rusino@users.noreply.github.com Fixing multiline GetBoxesForRange (flutter/flutter#188803)\n2026-07-06 engine-flutter-autoroll@skia.org Roll Skia from e15ea7a4b927 to b68567542f81 (4 revisions) (flutter/flutter#189000)\n2026-07-06 engine-flutter-autoroll@skia.org Roll Skia from 79806692425f to e15ea7a4b927 (2 revisions) (flutter/flutter#188992)\n2026-07-06 engine-flutter-autoroll@skia.org Roll Skia from 2826ae6dc649 to 79806692425f (1 revision) (flutter/flutter#188991)\n2026-07-06 engine-flutter-autoroll@skia.org Roll Skia from 7f99eee20fd6 to 2826ae6dc649 (1 revision) (flutter/flutter#188990)\n2026-07-06 737941+loic-sharma@users.noreply.github.com Add debugPaintFocusBoxes (flutter/flutter#188288)\n2026-07-05 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from bkK6BLiZDRnE7AQQj... to n1Lm2Z4DZkfC3bwj5... (flutter/flutter#188989)\n2026-07-05 engine-flutter-autoroll@skia.org Roll Skia from 75a4bf6706bd to 7f99eee20fd6 (2 revisions) (flutter/flutter#188988)\n..."
    },
    {
      "commit": "effd3a0e7c338e1c9449f6dad501b327daee8f86",
      "tree": "7dc58a5d550f4abcd4735fddf84bf8fef0045b5b",
      "parents": [
        "32382f1113b3df4bcf58ca7194cca3720c34ce29"
      ],
      "author": {
        "name": "engine-flutter-autoroll",
        "email": "engine-flutter-autoroll@skia.org",
        "time": "Wed Jul 08 00:12:59 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 08 00:12:59 2026"
      },
      "message": "Manual roll Flutter from ca9f874f5284 to 6995038d96ef (44 revisions) (#12135)\n\nManual roll Flutter from ca9f874f5284 to 6995038d96ef (44 revisions)\n\nManual roll requested by stuartmorgan@google.com\n\nhttps://github.com/flutter/flutter/compare/ca9f874f5284...6995038d96ef\n\n2026-07-03 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from sx_eN0J_f2BV6jqjW... to Jr08vyeibMSv3Oxst... (flutter/flutter#188946)\n2026-07-03 engine-flutter-autoroll@skia.org Roll Packages from 420e13502995 to 2fbe8734f450 (1 revision) (flutter/flutter#188945)\n2026-07-03 engine-flutter-autoroll@skia.org Roll Dart SDK from 786212a2ce0d to 1f9a08ce0638 (4 revisions) (flutter/flutter#188944)\n2026-07-03 engine-flutter-autoroll@skia.org Roll Skia from 5358ab75b840 to 919956953af6 (7 revisions) (flutter/flutter#188943)\n2026-07-02 j.ihlas@betclicgroup.com [Windows] Keep regular windows in place when another is activated (flutter/flutter#188016)\n2026-07-02 okorohelijah@google.com [flutter_tools] Provide guided message when iOS/macOS build fails due to low minimum version (flutter/flutter#188812)\n2026-07-02 bdero@google.com [Flutter GPU] Load a ShaderLibrary from shader bundle bytes (flutter/flutter#188596)\n2026-07-02 dacoharkes@google.com [tool] Enable record_use experiment by default on all channels (flutter/flutter#188887)\n2026-07-02 engine-flutter-autoroll@skia.org Roll Packages from e74210630ab8 to 420e13502995 (13 revisions) (flutter/flutter#188916)\n2026-07-02 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from I2h2eXk06RrA3pIG2... to sx_eN0J_f2BV6jqjW... (flutter/flutter#188915)\n2026-07-02 256906086+mvincentong@users.noreply.github.com Clarify layout callback debug flag docs (flutter/flutter#186879)\n2026-07-02 engine-flutter-autoroll@skia.org Roll Skia from 0c4faca350cc to 5358ab75b840 (2 revisions) (flutter/flutter#188899)\n2026-07-02 engine-flutter-autoroll@skia.org Roll Dart SDK from e47361c7fe9a to 786212a2ce0d (2 revisions) (flutter/flutter#188898)\n2026-07-01 engine-flutter-autoroll@skia.org Roll Skia from 0fc8ba72e802 to 0c4faca350cc (2 revisions) (flutter/flutter#188886)\n2026-07-01 robert.ancell@canonical.com Hide draft PRs from the triage list (flutter/flutter#188885)\n2026-07-01 47866232+chunhtai@users.noreply.github.com Stricten isSemantics and matchesSemantics children mismatch check (flutter/flutter#188827)\n2026-07-01 jesswon@google.com [AGP 9] Support Enabling Built-in Kotlin (flutter/flutter#188543)\n2026-07-01 engine-flutter-autoroll@skia.org Roll Skia from d19e557ac317 to 0fc8ba72e802 (4 revisions) (flutter/flutter#188879)\n2026-07-01 bkonyi@google.com [ci] Increase test timeout for Mac_x64 build_tests shards (flutter/flutter#188804)\n2026-07-01 engine-flutter-autoroll@skia.org Roll Skia from bd4ae38ca3bb to d19e557ac317 (1 revision) (flutter/flutter#188865)\n2026-07-01 engine-flutter-autoroll@skia.org Roll Dart SDK from 26d723eb89af to e47361c7fe9a (5 revisions) (flutter/flutter#188864)\n2026-07-01 katelovett@google.com Update triage links for material_ui and cupertino_ui --\u003e Design triage (flutter/flutter#188567)\n2026-07-01 flar@google.com [Impeller] Share a single ContextGLES among all PlaygroundImplGLES (flutter/flutter#188080)\n2026-07-01 homobonus-luca@hotmail.it Use null-aware elements in dev/devicelab/lib/integration_tests.dart (flutter/flutter#187852)\n2026-07-01 engine-flutter-autoroll@skia.org Roll Packages from 274ed3e0f9f6 to e74210630ab8 (18 revisions) (flutter/flutter#188863)\n2026-07-01 116356835+AbdeMohlbi@users.noreply.github.com Add android 17 to embedding (flutter/flutter#187965)\n2026-07-01 47866232+chunhtai@users.noreply.github.com Adds semantics role check to isSemantics and matchesSemantics (flutter/flutter#188825)\n2026-07-01 rmacnak@google.com Roll Dart SDK from e1bdb9ce3327 to 26d723eb89af (3 revisions) (flutter/flutter#188795)\n2026-07-01 zhongliu88889@gmail.com [web] Apply autocapitalize to text editing elements (flutter/flutter#188351)\n2026-07-01 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from RymJjIj7dd5vQ3Cnh... to I2h2eXk06RrA3pIG2... (flutter/flutter#188852)\n2026-07-01 bdero@google.com [Impeller] Compute dispatch takes 3D workgroup counts and honors the shader local_size (flutter/flutter#188601)\n2026-07-01 codedoctor@linwood.dev Improve stylus support on linux (flutter/flutter#186831)\n2026-07-01 matt.boetger@gmail.com Resolve issue  Catch am start failures with \u0027Error type\u0027 and prevent hang (flutter/flutter#187196)\n2026-07-01 engine-flutter-autoroll@skia.org Roll Skia from ef178c9898af to bd4ae38ca3bb (3 revisions) (flutter/flutter#188834)\n2026-07-01 engine-flutter-autoroll@skia.org Roll Skia from 3ac99be47229 to ef178c9898af (3 revisions) (flutter/flutter#188831)\n2026-07-01 31859944+LongCatIsLooong@users.noreply.github.com Add a macosArm64Only feature flag (flutter/flutter#188598)\n2026-07-01 engine-flutter-autoroll@skia.org Roll Skia from 15302f1625b2 to 3ac99be47229 (1 revision) (flutter/flutter#188819)\n2026-07-01 bkonyi@google.com [flutter_tools] Track asset transformer dependencies for hot reload (Reland #187947) (flutter/flutter#188808)\n2026-06-30 737941+loic-sharma@users.noreply.github.com Add TapRegion samples (flutter/flutter#188685)\n2026-06-30 31859944+LongCatIsLooong@users.noreply.github.com Print a warning in `flutter doctor` when running on Intel Macs (flutter/flutter#188760)\n2026-06-30 zhongliu88889@gmail.com [framework] Keep scrollable semantics role stable (flutter/flutter#187963)\n2026-06-30 1961493+harryterkelsen@users.noreply.github.com feat(skills): Add shepherd-prs skill for managing approved external contributor PRs (flutter/flutter#188534)\n2026-06-30 engine-flutter-autoroll@skia.org Roll Skia from 71947c4110b0 to 15302f1625b2 (17 revisions) (flutter/flutter#188815)\n2026-06-30 bkonyi@google.com [Tool] Run re-entrant upgrade in original CWD (flutter/flutter#188794)\n..."
    },
    {
      "commit": "32382f1113b3df4bcf58ca7194cca3720c34ce29",
      "tree": "47370bdb50ed95019b2382ef0531cb30dcdf411e",
      "parents": [
        "9535b63ba6c3e270fb4623093cf1e1fdd6054140"
      ],
      "author": {
        "name": "engine-flutter-autoroll",
        "email": "engine-flutter-autoroll@skia.org",
        "time": "Tue Jul 07 22:47:59 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jul 07 22:47:59 2026"
      },
      "message": "Manual roll Flutter from 0c80830e465b to ca9f874f5284 (119 revisions) (#12081)\n\nManual roll Flutter from 0c80830e465b to ca9f874f5284 (119 revisions)\n\nManual roll requested by stuartmorgan@google.com\n\nhttps://github.com/flutter/flutter/compare/0c80830e465b...ca9f874f5284\n\n2026-06-30 34871572+gmackall@users.noreply.github.com [tool] Don\u0027t require a Flutter compile task when staging jniLibs (flutter/flutter#188805)\n2026-06-30 jason-simmons@users.noreply.github.com [Impeller] Fix potential overflow when allocating buffers at the next power of two size (flutter/flutter#188742)\n2026-06-30 bkonyi@google.com [Framework/Tool] Decouple preview theme imports (flutter/flutter#188176)\n2026-06-30 kustermann@google.com Add import of `dart:_js_interop_wasm` in sdk rewriter tool (flutter/flutter#188620)\n2026-06-30 15619084+vashworth@users.noreply.github.com Detach LLDB and print stack trace on process stop (flutter/flutter#188576)\n2026-06-30 robert.ancell@canonical.com [Linux] Fix FlCompositorOpenGL.pixels comment (flutter/flutter#188754)\n2026-06-30 bkonyi@google.com [flutter_tools] Fix crash in flutter create when pubspec.yaml is empty (flutter/flutter#188385)\n2026-06-30 engine-flutter-autoroll@skia.org Roll Packages from 656ccaae4f49 to 274ed3e0f9f6 (23 revisions) (flutter/flutter#188792)\n2026-06-30 jason-simmons@users.noreply.github.com In AndroidImageGenerator, check that the destination pixel buffer has sufficient capacity for the decoded data (flutter/flutter#188752)\n2026-06-30 137456488+flutter-pub-roller-bot@users.noreply.github.com Roll pub packages (flutter/flutter#188773)\n2026-06-30 bdero@google.com [Impeller] Add a flat VertexAttributeFormat for vertex inputs (flutter/flutter#188684)\n2026-06-30 137456488+flutter-pub-roller-bot@users.noreply.github.com Roll pub packages (flutter/flutter#188764)\n2026-06-30 engine-flutter-autoroll@skia.org Roll Dart SDK from 0cb483880b6b to e1bdb9ce3327 (2 revisions) (flutter/flutter#188763)\n2026-06-29 matt.boetger@gmail.com Handle \u0027no permissions\u0027 adb device state (flutter/flutter#187248)\n2026-06-29 30870216+gaaclarke@users.noreply.github.com [windows]: adjusts uniform buffers to hit hlsl optimization (flutter/flutter#188538)\n2026-06-29 engine-flutter-autoroll@skia.org Roll Skia from bfb7860cb9c7 to 71947c4110b0 (9 revisions) (flutter/flutter#188747)\n2026-06-29 codefu@google.com ci: extract wait-for-engine-build logic into a reusable composite action (flutter/flutter#188748)\n2026-06-29 okorohelijah@google.com Provide guided migration logs when iOS app crashes on simulator (flutter/flutter#188736)\n2026-06-29 154381524+flutteractionsbot@users.noreply.github.com Revert \"[flutter_tools] Track asset transformer dependencies for hot reload\" (flutter/flutter#188751)\n2026-06-29 34871572+gmackall@users.noreply.github.com Migrate ABI splits to new AGP dsl (flutter/flutter#188369)\n2026-06-29 60122246+xiaowei-guan@users.noreply.github.com Add Impeller+OpenGLES startup benchmark for mokey (flutter/flutter#188495)\n2026-06-29 louisehsu@google.com Increase macOS minimum supported version from 10.15 to 12 to support Xcode 27  (flutter/flutter#188520)\n2026-06-29 30870216+gaaclarke@users.noreply.github.com Moves test ownership validation to flutter/flutter (flutter/flutter#188655)\n2026-06-29 angy.avv.94@hotmail.it Add --flavor support for Windows desktop builds (flutter/flutter#187034)\n2026-06-29 awolff@google.com Android_hardware_smoke_test: Enable pixel exact local file comparator to read goldens from flutter asset URI (flutter/flutter#188587)\n2026-06-29 64674824+yashas-hm@users.noreply.github.com [flutter_tools] Use DeviceHub.app for iOS simulator path on Xcode 27+ (flutter/flutter#187910)\n2026-06-29 engine-flutter-autoroll@skia.org Roll Skia from 111e7582d081 to bfb7860cb9c7 (2 revisions) (flutter/flutter#188731)\n2026-06-29 jacksongardner@google.com Use `revert` label instead of `revert_wf` (flutter/flutter#188639)\n2026-06-29 bkonyi@google.com Properly await Dart Development Service shutdown with timeout (flutter/flutter#188387)\n2026-06-29 bkonyi@google.com [flutter_tools] Track asset transformer dependencies for hot reload (flutter/flutter#187947)\n2026-06-29 bkonyi@google.com [Tool] Tolerate malformed UTF-8 in process streaming decoders (flutter/flutter#188453)\n2026-06-29 nshahan@google.com [flutter_tools] Use new ddc modules in test (flutter/flutter#188240)\n2026-06-29 engine-flutter-autoroll@skia.org Roll Packages from c1f7d920c272 to 656ccaae4f49 (12 revisions) (flutter/flutter#188728)\n2026-06-29 robert.ancell@canonical.com Remove unused fields (flutter/flutter#188705)\n2026-06-29 robert.ancell@canonical.com Clear text input handler widget on view dispose (flutter/flutter#188701)\n2026-06-29 robert.ancell@canonical.com Free compositor in view renderer finalize to avoid use-after-free (flutter/flutter#188702)\n2026-06-29 robert.ancell@canonical.com [linux] Use GWeakRef in mock signal handler test helper (flutter/flutter#188700)\n2026-06-29 Rusino@users.noreply.github.com Fixing few related editing issues with LTR/RTL text (flutter/flutter#188503)\n2026-06-29 bdero@google.com [Flutter GPU] Add Texture.fromImage to wrap a ui.Image texture (flutter/flutter#188605)\n2026-06-29 bdero@google.com [Flutter GPU] Honor the enable argument in RenderPass.setDepthWriteEnable (flutter/flutter#188715)\n2026-06-29 engine-flutter-autoroll@skia.org Roll Skia from ba1942d8c3e1 to 111e7582d081 (1 revision) (flutter/flutter#188721)\n2026-06-29 engine-flutter-autoroll@skia.org Roll Skia from 587d8befe1ee to ba1942d8c3e1 (6 revisions) (flutter/flutter#188717)\n2026-06-29 mosum@google.com Remove some refs to package:intl (flutter/flutter#188504)\n2026-06-29 jhy03261997@gmail.com [VPAT] Update a11y assessment app FAB example to announce value change when it\u0027s updated. (flutter/flutter#188466)\n..."
    },
    {
      "commit": "9535b63ba6c3e270fb4623093cf1e1fdd6054140",
      "tree": "e80d5709f80f562f54a51fb68ecd229e4c7cf477",
      "parents": [
        "740452496318a7dc7f9acdf1ee8a44e6e5d26086"
      ],
      "author": {
        "name": "Camille Simon",
        "email": "43054281+camsim99@users.noreply.github.com",
        "time": "Tue Jul 07 21:37:02 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jul 07 21:37:02 2026"
      },
      "message": "Add code coverage presubmit test (#11942)\n\nAdds a presubmit test that ensures that the Dart code coverage as evaluated by `flutter test --coverage` does not fall below a predetermined minimum.\r\n\r\nCurrently, implements minimums **ONLY** for `camera_android` and `camera_android_camerax` as their current code coverage. The reason I pursued this approach of hardcoding is because a common minimum across packages would be hard to enforce harshly depending on how the package is written. For example, `camera_android_camerax` wraps native class with Dart, which I believe contributes to its much lower code coverage score. If reviewers are ok to this approach, open to including all packages as their current minimum. \r\n\r\nIntended to help agents ensure that while they are making changes, they maintain if not improve the code coverage of the packages they modify.\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "740452496318a7dc7f9acdf1ee8a44e6e5d26086",
      "tree": "5563cfd92b9df47598d60d6489ff79184918bbf4",
      "parents": [
        "b79b35409f67bcbd14e66760fb64380328bd4a0a"
      ],
      "author": {
        "name": "Bruno Viana de Siqueira",
        "email": "brunovsiq@gmail.com",
        "time": "Tue Jul 07 18:34:19 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jul 07 18:34:19 2026"
      },
      "message": "[google_sign_in_android] Fix IllegalStateException on duplicate authorization result (#11984)\n\n`google_sign_in_android`\u0027s `GoogleSignInPlugin.Delegate.onActivityResult` resolved the pending authorization callback on its success path and returned `true` **before** clearing `pendingAuthorizationCallback` — that field was only nulled on the `ApiException` (failure) path. As a result, when the `REQUEST_CODE_AUTHORIZE` activity result is delivered more than once (for example when a saved result is re-delivered after a configuration change or process death), the method re-enters with the field still set and completes the same Pigeon `Reply` a second time, throwing:\r\n\r\n```\r\njava.lang.IllegalStateException: Reply already submitted\r\n```\r\n\r\nThis change captures the callback into a local and nulls `pendingAuthorizationCallback` **before** completing it, so any duplicate or late delivery for the same request code falls through to the existing `\"Unexpected authorization result callback\"` branch instead of double-completing the reply. The existing success/failure return semantics are unchanged.\r\n\r\nA regression test (`authorize_ignoresDuplicateActivityResult`) drives the authorize → success flow, invokes `onActivityResult` twice, and asserts the callback is resolved exactly once and the second delivery is not consumed. It fails before this change and passes after.\r\n\r\n## Issues fixed by this PR\r\n\r\nFixes flutter/flutter#188062\r\n\r\n## Notes\r\n\r\n- Opened as a **draft**: the CLA still needs to be signed before this can be marked ready for review.\r\n- Developed with AI assistance (Claude Code); I have reviewed and understand the change and take responsibility for it per the AI contribution guidelines.\r\n- Ran the repo-pinned auto-formatter (`google-java-format` v1.28.0) on the changed Java — no changes needed.\r\n- All `google_sign_in_android` Android unit tests pass locally via `testDebugUnitTest`, including the new regression test.\r\n\r\n## Pre-Review Checklist\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "b79b35409f67bcbd14e66760fb64380328bd4a0a",
      "tree": "ea0601f1ccc89cce21b624341a177f62ac372487",
      "parents": [
        "d99f5931c2495d35e2246a7813c3c43c9d766838"
      ],
      "author": {
        "name": "saurabh-mirajkar",
        "email": "saurabhmirajkar000@gmail.com",
        "time": "Tue Jul 07 17:09:34 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jul 07 17:09:34 2026"
      },
      "message": "[webview_flutter] Document NavigationDelegate callbacks (#11921)\n\n## Description\r\n\r\nAdds documentation for callback parameters accepted by `NavigationDelegate`.\r\n\r\nPreviously, the constructor documentation only described `onUrlChange`, `onHttpAuthRequest`, and `onSslAuthError`, while other commonly used callbacks such as `onNavigationRequest`, `onPageStarted`, `onPageFinished`, `onProgress`, `onWebResourceError`, and `onHttpError` were undocumented.\r\n\r\nThis change updates the NavigationDelegate constructor documentation to cover all supported callbacks and improves consistency in the existing descriptions.\r\n\r\nFixes flutter/flutter#187780\r\n\r\n## Tests\r\n\r\nTests are not needed because this is a documentation-only change.\r\n\r\n## Version and CHANGELOG\r\n\r\nUpdated the package version to `4.14.1` and added a CHANGELOG entry for the `NavigationDelegate` documentation improvements.\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "d99f5931c2495d35e2246a7813c3c43c9d766838",
      "tree": "75e6477865384b0fc0ba7b46f70588e2e5cc8702",
      "parents": [
        "92525f51fe4b3b27fd53dcfd2b054c04168e4a1f"
      ],
      "author": {
        "name": "engine-flutter-autoroll",
        "email": "engine-flutter-autoroll@skia.org",
        "time": "Tue Jul 07 15:54:26 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jul 07 15:54:26 2026"
      },
      "message": "Roll Flutter (stable) from ad70ec461716 to f94f4fc76b4d (8 revisions) (#12125)\n\nhttps://github.com/flutter/flutter/compare/ad70ec461716...f94f4fc76b4d\n\nIf this roll has caused a breakage, revert this CL and stop the roller\nusing the controls here:\nhttps://autoroll.skia.org/r/flutter-stable-packages\nPlease CC boetger@google.com,stuartmorgan@google.com on the revert to ensure that a human\nis aware of the problem.\n\nTo file a bug in Flutter (stable): https://github.com/flutter/flutter/issues/new/choose\nTo file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose\n\nTo report a problem with the AutoRoller itself, please file a bug:\nhttps://issues.skia.org/issues/new?component\u003d1389291\u0026template\u003d1850622\n\nDocumentation for the AutoRoller is here:\nhttps://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md"
    },
    {
      "commit": "92525f51fe4b3b27fd53dcfd2b054c04168e4a1f",
      "tree": "35024dcdc1a8b19b3867d6faff778c6631cdf0b3",
      "parents": [
        "e0dc2c45f568b66f8165f9c7a1c137efd372cf5b"
      ],
      "author": {
        "name": "osaki",
        "email": "35750184+motucraft@users.noreply.github.com",
        "time": "Tue Jul 07 15:47:53 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jul 07 15:47:53 2026"
      },
      "message": "[camera_android_camerax] Fix setFocusMode(auto) crash when there is no auto-focus point (#11884)\n\nAdds the missing `isEmpty` guard to the `FocusMode.auto` branch of `AndroidCameraCameraX.setFocusMode`, which read `meteringPointsAf.first` unconditionally and threw `StateError: Bad state: No element` when the current focus-and-metering action had no auto-focus point. \r\n\r\nThe `FocusMode.locked` branch already guards this; the `auto` branch did not.\r\n\r\nFixes flutter/flutter#187782\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "e0dc2c45f568b66f8165f9c7a1c137efd372cf5b",
      "tree": "d9143c0ae193afdcab4efd85d2c3800358f1d62b",
      "parents": [
        "fc00cebca28ef66e05e29fe9de96051cb1211488"
      ],
      "author": {
        "name": "Ludwig Bolling",
        "email": "bolling.ludwig@gmail.com",
        "time": "Mon Jul 06 20:18:08 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 06 20:18:08 2026"
      },
      "message": "[camera_android, camera_android_camerax, camera_avfoundation] Add setJpegImageQuality (#11616)\n\nImplements the `setJpegImageQuality` API (landed in the platform interface via #11454) across all camera platform implementation packages, allowing control of JPEG compression quality (1-100) for still image capture.\n\nThis is the follow-up implementation PR as requested in #11155; it does not include `camera_platform_interface` changes. The app-facing `camera` package will be submitted in a separate PR after these implementation packages are published.\n\nPackages changed:\n- `camera_android`\n- `camera_android_camerax`\n- `camera_avfoundation`\n\nPart of https://github.com/flutter/flutter/issues/183229\n\n## Pre-Review Checklist\n\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "fc00cebca28ef66e05e29fe9de96051cb1211488",
      "tree": "e339e771a1b904553164d46663d51d0a69d6c32c",
      "parents": [
        "2fbe8734f450cb193b110851f9fc651290623398"
      ],
      "author": {
        "name": "sailendrabathi",
        "email": "44525804+sailendrabathi@users.noreply.github.com",
        "time": "Mon Jul 06 15:29:11 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 06 15:29:11 2026"
      },
      "message": "[video_player_platform_interface] Improve seek performance on Android (#11932)\n\nAdds `backBufferDurationMs` to `video_player_platform_interface`\r\n\r\nThis PR has only the platform interface package changes from the main PR: https://github.com/flutter/packages/pull/11810.\r\n\r\nFollowing PR split as per [Changing federated plugins](https://github.com/flutter/flutter/blob/master/docs/ecosystem/contributing/README.md#changing-federated-plugins)\r\n\r\n## Pre-Review Checklist"
    },
    {
      "commit": "2fbe8734f450cb193b110851f9fc651290623398",
      "tree": "c4053530f55adfb1d5b047732aaaa1bdcad50f4c",
      "parents": [
        "420e13502995914602ac6241d00f9a23dfa7fa71"
      ],
      "author": {
        "name": "stuartmorgan-g",
        "email": "stuartmorgan@google.com",
        "time": "Thu Jul 02 17:56:09 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 02 17:56:09 2026"
      },
      "message": "[tool] Switch custom analysis allowance to local config (#12088)\n\nSwitches from a global allow-list for custom analysis options to the new package-local config system. This eliminates the need for a global file change to adjust the setting for a single package, which makes CI much faster for such changes, without eliminating the desired feature of requiring devs to explicitly opt in to using a custom analysis options file (vs. adding one accidentally, or adding one without realizing there\u0027s a general policy against doing so).\r\n\r\nThe legacy flag is preserved, but ignored, so as not to break the flutter/flutter and dart-lang/sdk scripts that run analysis on our repo (to pre-detect issue that would block the roller). Once this lands I can update those scripts, then remove the flag."
    },
    {
      "commit": "420e13502995914602ac6241d00f9a23dfa7fa71",
      "tree": "42ec961607c2a36f94b54319e4686251095c4e72",
      "parents": [
        "c7025f0d8d33251dcc71a04c384906bee8cb9380"
      ],
      "author": {
        "name": "Tong Mu",
        "email": "dkwingsmt@users.noreply.github.com",
        "time": "Thu Jul 02 00:53:12 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 02 00:53:12 2026"
      },
      "message": "[material_ui] Migrate api sample code to @example dartdoc directive (#12078)\n\nMigrates @tool directives to @example in material_ui\r\nTowards https://github.com/flutter/flutter/issues/172936 and https://github.com/flutter/flutter/issues/172937\r\n\r\nPrerequisite:\r\n* https://github.com/flutter/packages/pull/12092, which moves missing sample files.\r\n\r\nRelated:\r\n* https://github.com/flutter/packages/pull/12063, which migrates `cupertino_ui`\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "c7025f0d8d33251dcc71a04c384906bee8cb9380",
      "tree": "4e25bf970ad4e52d23963cad880632e48049b306",
      "parents": [
        "ab5051f499e09fa0d49122dbba327300d628eede"
      ],
      "author": {
        "name": "Tong Mu",
        "email": "dkwingsmt@users.noreply.github.com",
        "time": "Thu Jul 02 00:07:22 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 02 00:07:22 2026"
      },
      "message": "[material_ui] Move over more API samples (#12092)\n\nThis adds missing samples referenced in the material_ui API docs.\r\nSome of these were misplaced in the widgets/ API directory in flutter/flutter, I will push up a PR to reflect the move there as well so we do not lose track of it.\r\n\r\nTowards https://github.com/flutter/flutter/issues/172936 and https://github.com/flutter/flutter/issues/172937\r\n\r\nRelated:\r\n* https://github.com/flutter/packages/pull/12078, which migrates samples in `material_ui` and depends on this PR.\r\n* https://github.com/flutter/packages/pull/12086, which moves similar missing sample files for `cupertino_ui`\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "ab5051f499e09fa0d49122dbba327300d628eede",
      "tree": "83bf88b59e6691ee883d8b7c47cbbe3da7baea39",
      "parents": [
        "a1682d4d9e45a7e906a398b47f831bbe4174c7ab"
      ],
      "author": {
        "name": "Kate Lovett",
        "email": "katelovett@google.com",
        "time": "Wed Jul 01 23:36:12 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 01 23:36:12 2026"
      },
      "message": "[cupertino_ui] Migrate api sample code to @example dartdoc directive (#12063)\n\nMigrates `@tool` directives to `@example` in cupertino_ui\r\nTowards https://github.com/flutter/flutter/issues/172936 and https://github.com/flutter/flutter/issues/172937\r\n\r\nReferenced: https://github.com/flutter/packages/pull/11975/files\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "a1682d4d9e45a7e906a398b47f831bbe4174c7ab",
      "tree": "fb0a15f24b559499789a7b01c5b134ee17e2c65e",
      "parents": [
        "3fae85cff67da270bd054435fff1858c15c913e9"
      ],
      "author": {
        "name": "Kate Lovett",
        "email": "katelovett@google.com",
        "time": "Wed Jul 01 21:51:08 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 01 21:51:08 2026"
      },
      "message": "[cupertino_ui] Move over more API samples (#12086)\n\nThis adds missing samples referenced in the cupertino_ui API docs.\r\nSome of these were misplaced in the widgets/ API directory in flutter/flutter, I will push up a PR to reflect the move there as well so we do not lose track of it.\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "3fae85cff67da270bd054435fff1858c15c913e9",
      "tree": "8c15059a26557f80d2d62071e19fd578e624027d",
      "parents": [
        "e95aa211efc13971811388bed2cc587605124bca"
      ],
      "author": {
        "name": "mackings",
        "email": "48776784+mackings@users.noreply.github.com",
        "time": "Wed Jul 01 20:15:29 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 01 20:15:29 2026"
      },
      "message": "[two_dimensional_scrollables] Fix TreeView horizontal hit testing (#11859)\n\nFixes https://github.com/flutter/flutter/issues/187084\r\n\r\n## Summary\r\n\r\n- Uses the union of the visible viewport-wide row area and each `TreeView` row’s painted content bounds for hit testing.\r\n- Keeps wide row content interactive after horizontal scrolling without shrinking the existing viewport-wide `TreeRow` gesture area.\r\n- Adds regression tests for both hit-testing behaviors.\r\n\r\n## Testing\r\n\r\n- `dart format packages/two_dimensional_scrollables/lib/src/tree_view/render_tree.dart packages/two_dimensional_scrollables/test/tree_view/render_tree_test.dart`\r\n- `dart run script/tool/bin/flutter_plugin_tools.dart analyze --packages two_dimensional_scrollables`\r\n- `dart run script/tool/bin/flutter_plugin_tools.dart dart-test --packages two_dimensional_scrollables`\r\n- `dart run script/tool/bin/flutter_plugin_tools.dart validate --packages two_dimensional_scrollables`\r\n- `dart run script/tool/bin/flutter_plugin_tools.dart publish-check --packages two_dimensional_scrollables`\r\n- `dart run script/tool/bin/flutter_plugin_tools.dart license-check`\r\n- `git diff upstream/main...HEAD --check`\r\n\r\n## Pre-Review Checklist\r\n\r\nNo API documentation changes are needed for this internal hit-testing correction.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "e95aa211efc13971811388bed2cc587605124bca",
      "tree": "85a7b770cfb85319eed11bddad908c5850c3ca2e",
      "parents": [
        "b967797f07f1e4fc4fb264f5c8e5181b1385d9d9"
      ],
      "author": {
        "name": "Reid Baker",
        "email": "1063596+reidbaker@users.noreply.github.com",
        "time": "Wed Jul 01 20:15:27 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 01 20:15:27 2026"
      },
      "message": "[camera_android_camerax][tool] Integrate dart_code_linter for cyclomatic complexity checks (#11999)\n\nEnables cyclomatic complexity enforcement in `camera_android_camerax` by integrating `dart_code_linter: 4.1.5` as a CLI linter check within the repository analysis tooling.\r\nNo issue this is part of the work for project oneshot. \r\n\r\nChangelog/Version not needed changes are to shared tooling and specifically linters enabled for camera_android_camerax. \r\n\r\nFWIW \r\nWe (@camsim99 and myself) initially aimed to enforce **cognitive complexity** using the `dart_cognitive_complexity` package. However, we encountered a dependency conflict that blocked its integration:\r\n- `dart_cognitive_complexity: 2.0.0` requires `analyzer: ^13.0.0`.\r\n- The repository dependencies (specifically `pigeon`) restrict the resolved version of `analyzer` to `\u003c13.0.0` (which resolves to `10.0.1`).\r\n- Upgrading `pigeon` to a published version would not work since no version on pub.dev supports `analyzer: ^13.0.0`.\r\n- Upgrading `pigeon` code felt out of scope for this effort. \r\n- Downgrading to `dart_cognitive_complexity: 1.0.1` is also not possible because it requires `analyzer: \u003c7.0.0` (which conflicts with `pigeon`\u0027s requirement of `\u003e\u003d10.0.0`).\r\n\r\n## Pre-Review Checklist"
    },
    {
      "commit": "b967797f07f1e4fc4fb264f5c8e5181b1385d9d9",
      "tree": "af09b6c5f53c691887ae5b05a78d8f4f4995bc8e",
      "parents": [
        "0fc62ee301f3a6cc5719966a64852b06651f1c7c"
      ],
      "author": {
        "name": "Momshad Dinury",
        "email": "dinurymomshad.dev@gmail.com",
        "time": "Wed Jul 01 19:10:12 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 01 19:10:12 2026"
      },
      "message": "[cross_file] Add runnable example with main() (#11527)\n\nAdds a main() entry point and an XFile.fromData demonstration to the cross_file example, so pub.dev\u0027s Pana scoring recognises that the package ships with an example.\r\n\r\nThe existing readme_excerpts.dart defined instantiateXFile() but had no top-level main(), so the file wasn\u0027t discovered as an example. This keeps the existing #docregion Instantiate block used by README.md and adds a second #docregion InstantiateFromData block alongside a main() that runs both excerpts.\r\n\r\nThe new test exercises XFile.fromData on every platform (the existing path-based test is skipped on web, which has no filesystem).\r\n\r\nFixes flutter/flutter#93073\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "0fc62ee301f3a6cc5719966a64852b06651f1c7c",
      "tree": "6c003b9c62412cb8457c0a183fc19acbd5997fee",
      "parents": [
        "48e670c175be0f1d39414e04dc72725be50b294d"
      ],
      "author": {
        "name": "Qun Cheng",
        "email": "36861262+QuncCccccc@users.noreply.github.com",
        "time": "Wed Jul 01 17:35:23 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 01 17:35:23 2026"
      },
      "message": "[cupertino_ui] Enable `switch_test.dart` (#12076)\n\nPart of https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\nThis PR:\r\n* Removes the cross-import of `widgets/semantics_tester.dart` from `switch_test.dart`.\r\n* Replaces `SemanticsTester` usages.\r\n* Removes the `@Skip` annotation and moves the file to the `test/` folder.\r\n\r\n## Pre-Review Checklist"
    },
    {
      "commit": "48e670c175be0f1d39414e04dc72725be50b294d",
      "tree": "6d5d9bf2d4c71b9cc49d20585fb5136b4f48d3cc",
      "parents": [
        "4997fb6e9231ba2164d5833b3acb427065b9d231"
      ],
      "author": {
        "name": "Justin McCandless",
        "email": "jmccandless@google.com",
        "time": "Wed Jul 01 17:22:55 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 01 17:22:55 2026"
      },
      "message": "[cupertino_ui] Re-enable dialog_test.dart (#12057)\n\nThis file used TestSemantics from the Widgets library in flutter/flutter. That approach to semantics testing is not advised, as explained in https://github.com/flutter/flutter/issues/184367. I migrated to the recommended tester.semantics.find.\r\n\r\nI also added `unawaited` around some futures that needed it because that lint doesn\u0027t exist in flutter/flutter."
    },
    {
      "commit": "4997fb6e9231ba2164d5833b3acb427065b9d231",
      "tree": "4062e47251575e56d353bcc5151ae0f4620aa236",
      "parents": [
        "f4b7893cea4f0ffdeee6c05f80f402124ec3af7f"
      ],
      "author": {
        "name": "Justin McCandless",
        "email": "jmccandless@google.com",
        "time": "Wed Jul 01 16:54:07 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 01 16:54:07 2026"
      },
      "message": "[cupertino_ui] Re-enable action_sheet_test.dart (#12055)\n\nThis file used TestSemantics from the Widgets library in flutter/flutter. This approach to semantics testing is not advised, as explained in https://github.com/flutter/flutter/issues/184367. I migrated to the recommended tester.semantics.find."
    },
    {
      "commit": "f4b7893cea4f0ffdeee6c05f80f402124ec3af7f",
      "tree": "52f52a2847f2e4def0568fb57a2a8309451e5f20",
      "parents": [
        "97dec137f3651a075935df23f30ddbb4054ed19e"
      ],
      "author": {
        "name": "Renzo Olivares",
        "email": "rmolivares@renzo-olivares.dev",
        "time": "Wed Jul 01 16:36:58 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 01 16:36:58 2026"
      },
      "message": "[cupertino_ui] Migrate `bottom_tab_bar_test.dart` to `SemanticsHandle` (#12012)\n\nPart of https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\nThis PR:\r\n* Removed the cross-import of `widgets/semantics_tester.dart`. Replaced `SemanticsTester` with `SemanticsHandle`.\r\n* Removed `@Skip` annotation, all tests in this file has passed. `semantics_tester.dart` has existed in `cupertino_ui`, so we can directly import `semantics_tester.dart`;\r\n* Moved the file to `test/` folder.\r\n\r\n## Pre-Review Checklist"
    },
    {
      "commit": "97dec137f3651a075935df23f30ddbb4054ed19e",
      "tree": "dd5a2c27bfe9f2a7b671072fd97b7482e78bf902",
      "parents": [
        "56e3095c942527159d08917d5abe2bdebff0d7c6"
      ],
      "author": {
        "name": "Reid Baker",
        "email": "1063596+reidbaker@users.noreply.github.com",
        "time": "Wed Jul 01 16:31:01 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 01 16:31:01 2026"
      },
      "message": "[repo] Add comment style guideline to AGENTS.md (#12077)\n\nAdds a style guideline to `AGENTS.md` advising agents and developers against adding redundant or trivial comments that simply restate code logic in English.\r\n\r\nThis has been a pattern in my own observations and also was caught by stuart in https://github.com/flutter/packages/pull/11943 after I missed it in my pre review. We currently have no evals so there is not a good way to test this change. \r\n\r\n## Pre-Review Checklist\r\n\r\nThis PR is exempt from version/CHANGELOG updates and tests because it only modifies repository-wide guide documentation.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "56e3095c942527159d08917d5abe2bdebff0d7c6",
      "tree": "8ddb1b9f8400e3bfa919d1c6dc5aae3d5bc49447",
      "parents": [
        "e74210630ab8275d5e6deeffa69bac7a579ac0a1"
      ],
      "author": {
        "name": "Camille Simon",
        "email": "43054281+camsim99@users.noreply.github.com",
        "time": "Wed Jul 01 16:28:56 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 01 16:28:56 2026"
      },
      "message": "Adds pre-push readiness skill (#11935)\n\nAdds a new `pre-push-skill` skill that verifies changes made to a packages are ready to be \"pushed\", i.e. the committed changes could successfully be made into a pull request that follows the requirements of the flutter/packages repository (including some of the items in the checklist below).\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "e74210630ab8275d5e6deeffa69bac7a579ac0a1",
      "tree": "0d2b70b04c13131dab22f4a0a931d04a09fc3450",
      "parents": [
        "5fb15c9777f030561f3723d5bd8a320b39d9bb54"
      ],
      "author": {
        "name": "Renzo Olivares",
        "email": "rmolivares@renzo-olivares.dev",
        "time": "Wed Jul 01 05:07:04 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 01 05:07:04 2026"
      },
      "message": "[cupertino_ui] Re-enable `tab_scaffold_test.dart` (#12064)\n\nThis test re-enables `tab_scaffold_test.dart`, and brings over `widget_inspector_test_utils.dart` into `tests/`.\r\n\r\n## Pre-Review Checklist"
    },
    {
      "commit": "5fb15c9777f030561f3723d5bd8a320b39d9bb54",
      "tree": "0f5177c50e4754267eab6073930057a6d873c5c1",
      "parents": [
        "635f72093191756c164f6f68d0ca78057a7975c2"
      ],
      "author": {
        "name": "Justin McCandless",
        "email": "jmccandless@google.com",
        "time": "Wed Jul 01 03:54:13 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 01 03:54:13 2026"
      },
      "message": "[material_ui] Port flutter/flutter #184808 \"Remove semantics_tester import from card_test.dart\" (#11965)\n\nThis PR ports https://github.com/flutter/flutter/pull/184808 by @Sanaullah49 from flutter/flutter to flutter/packages.\r\n\r\nThis is the first unmerged PR that I\u0027ve attempted to port, so reviewers please let me know if you see problems with this process."
    },
    {
      "commit": "635f72093191756c164f6f68d0ca78057a7975c2",
      "tree": "d9a1cce4f5702c6086fbcfc6fd25ecef5b294cd8",
      "parents": [
        "b791d2a274fa56ba5adb98b011cdecf03cc7eabd"
      ],
      "author": {
        "name": "Renzo Olivares",
        "email": "rmolivares@renzo-olivares.dev",
        "time": "Wed Jul 01 03:31:52 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 01 03:31:52 2026"
      },
      "message": "[cupertino_ui] Migrate `sliding_segmented_control_test.dart` to `SemanticsHandle` (#11979)\n\nPart of https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\nThis PR:\r\n* Removed the cross-import of `widgets/semantics_tester.dart`. Replaced `SemanticsTester` with `SemanticsHandle`.\r\n* Removed `@Skip` annotation, all tests in this file has passed. `semantics_tester.dart` has existed in `cupertino_ui`, so we can directly import `semantics_tester.dart`;\r\n* Moved the file to `test/` folder.\r\n\r\n## Pre-Review Checklist"
    },
    {
      "commit": "b791d2a274fa56ba5adb98b011cdecf03cc7eabd",
      "tree": "7edf0dadfb8eaa1fe7dbe59a64f3ba359c234950",
      "parents": [
        "b7912126184ece8f9f9f608ee9f3751dc5da3fed"
      ],
      "author": {
        "name": "Renzo Olivares",
        "email": "rmolivares@renzo-olivares.dev",
        "time": "Wed Jul 01 03:28:06 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 01 03:28:06 2026"
      },
      "message": "[cupertino_ui] Migrate `route_test.dart` to `SemanticsHandle` (#11993)\n\nPart of https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\nThis PR:\r\n* Removed the cross-import of `widgets/semantics_tester.dart`. Replaced `SemanticsTester` with `SemanticsHandle`.\r\n* Removed `@Skip` annotation, all tests in this file has passed. `semantics_tester.dart` has existed in `cupertino_ui`, so we can directly import `semantics_tester.dart`;\r\n* Moved the file to `test/` folder.\r\n\r\n## Pre-Review Checklist"
    },
    {
      "commit": "b7912126184ece8f9f9f608ee9f3751dc5da3fed",
      "tree": "53c92a26ddbc841ce02ac64e0bd75ddf5187a02e",
      "parents": [
        "99a427a64f21f44e69937e29ba65ca3701bfd73c"
      ],
      "author": {
        "name": "Renzo Olivares",
        "email": "rmolivares@renzo-olivares.dev",
        "time": "Wed Jul 01 03:28:03 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 01 03:28:03 2026"
      },
      "message": "[cupertino_ui] Migrate `nav_bar_test.dart` to `SemanticsHandle` (#11980)\n\nPart of https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\nThis PR:\r\n* Removed the cross-import of `widgets/semantics_tester.dart`. Replaced `SemanticsTester` with `SemanticsHandle`.\r\n* Removed `@Skip` annotation, all tests in this file has passed. `semantics_tester.dart` has existed in `cupertino_ui`, so we can directly import `semantics_tester.dart`;\r\n* Moved the file to `test/` folder.\r\n\r\n## Pre-Review Checklist"
    },
    {
      "commit": "99a427a64f21f44e69937e29ba65ca3701bfd73c",
      "tree": "ef26f212f6f0bde3410f23828a87c4fa892d9043",
      "parents": [
        "7a9c6211beb15a15d74e6d3243ee133351b95002"
      ],
      "author": {
        "name": "Renzo Olivares",
        "email": "rmolivares@renzo-olivares.dev",
        "time": "Wed Jul 01 03:28:00 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 01 03:28:00 2026"
      },
      "message": "[cupertino_ui] Migrate `segmented_control_test.dart` to `SemanticsHandle` (#11982)\n\nPart of https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\nThis PR:\r\n* Removed the cross-import of `widgets/semantics_tester.dart`. Replaced `SemanticsTester` with `SemanticsHandle`.\r\n* Removed `@Skip` annotation, all tests in this file has passed. `semantics_tester.dart` has existed in `cupertino_ui`, so we can directly import `semantics_tester.dart`;\r\n* Moved the file to `test/` folder.\r\n\r\n## Pre-Review Checklist"
    },
    {
      "commit": "7a9c6211beb15a15d74e6d3243ee133351b95002",
      "tree": "4f49fb49249ad5f012757f18a9f65672fe08a031",
      "parents": [
        "1851dcd32900be44b1e4ebf2f43a2ebf36fc49c6"
      ],
      "author": {
        "name": "Renzo Olivares",
        "email": "rmolivares@renzo-olivares.dev",
        "time": "Wed Jul 01 03:24:46 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 01 03:24:46 2026"
      },
      "message": "[cupertino_ui] Re-enable `text_field_test.dart` (#12067)\n\nPart of https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\nThis PR:\r\n* Removed the cross-import of `widgets/semantics_tester.dart`. Replaced `SemanticsTester` with `SemanticsHandle`.\r\n* Copy/paste helper methods from `widgets/text_selection_toolbar_utils.dart` to our local copy.\r\n* Removed `@Skip` annotation, all tests in this file has passed. `semantics_tester.dart` has existed in `cupertino_ui`, so we can directly import `semantics_tester.dart`;\r\n* Moved the file to `test/` folder.\r\n\r\n## Pre-Review Checklist"
    },
    {
      "commit": "1851dcd32900be44b1e4ebf2f43a2ebf36fc49c6",
      "tree": "e99e256ae819c2f5ddfdb7f18dc69562245296ea",
      "parents": [
        "bdb1682b1f084a88f71e136e3e59ef944b860c96"
      ],
      "author": {
        "name": "Anantha Eswar",
        "email": "r.anantheswar@gmail.com",
        "time": "Tue Jun 30 22:27:07 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 30 22:27:07 2026"
      },
      "message": "[camera_android_camerax] Pass targetVideoEncodingBitRate to Recorder (#11960)\n\nThis PR fixes an issue where the `videoBitrate` parameter configured in `MediaSettings` was ignored during video recording on Android using CameraX. \r\n\r\nWe now forward `mediaSettings?.videoBitrate` as the `targetVideoEncodingBitRate` when instantiating the CameraX `Recorder` instance in `AndroidCameraCameraX.createCameraWithSettings`.\r\n\r\nFixes https://github.com/flutter/flutter/issues/179832\r\n\r\n## Pre-Review Checklist"
    },
    {
      "commit": "bdb1682b1f084a88f71e136e3e59ef944b860c96",
      "tree": "4ba91d440acc11c8fb94ac5bcedab5289732bf4a",
      "parents": [
        "862cdc5066a3ab62b220f0b09874ed04fa77fac8"
      ],
      "author": {
        "name": "Reid Baker",
        "email": "1063596+reidbaker@users.noreply.github.com",
        "time": "Tue Jun 30 22:14:28 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 30 22:14:28 2026"
      },
      "message": "[camera_android_camerax] Migrate check-readiness skill from bash to Dart (#11943)\n\n#### 1. Migrated `check-readiness` Skill to Dart\r\n- Replaced `scripts/check.sh` with a Dart implementation.\r\n- Implemented unit tests for the checker logic under `test/check_test.dart` \r\n#### 2. Tooling \u0026 CI Support for Agent Skills\r\n- **Static Analysis (Opt-in)**: Added a new `--analyze-skills-for` flag to the `analyze` command. When set, it explicitly runs `dart analyze` on the `.agents/skills` directories of the configured packages.\r\n- **CI Configuration**: Configured the global `analyze` workflow in `.ci/targets/analyze.yaml` to run analysis on camera\u0027s skills via `script/configs/skills_analysis.yaml`.\r\n- **Unit Testing**: Because `.agents/skills/check-readiness` is set up as a standalone Dart package with its own `pubspec.yaml`, the repository\u0027s existing `dart-test` command automatically discovers and runs its unit tests.\r\n- **Validation Exemption**: Added `.pubignore` parsing support to `RepositoryPackage` and integrated it into the `validate` command. Any subpackage matching `.pubignore` patterns (e.g. `.agents/skills/`) is now skipped by the `validate` command, ensuring internal/contributor-only tools do not fail publishing hygiene checks.\r\n- **Versioning \u0026 CHANGELOG Exemption**: Classified paths starting with `.agents/` as developer-only changes. This exempts skill-only or script-only modifications within the `.agents/` directory from triggering version-bump and CHANGELOG update requirements.\r\n\r\nI asked my agent to articulate the interaction between top level packages tool commands and .agents/skills. Then I filtered the list to the command I thought reviewers or people looking at this pr later would find interesting. \r\n\r\n## Interaction of Packages Tool Commands with `.agents/skills`\r\n\r\n| Command | Targeting Scope | Runs on `.agents/skills`? | Interaction Details |\r\n| :--- | :--- | :--- | :--- |\r\n| **`analyze`** | `topLevelOnly` | **Yes (Explicitly)** | Runs `pub get` on the main package and all subpackages (including those in `.agents/skills`). If the main package is listed in `--analyze-skills-for` (configured in CI via `script/configs/skills_analysis.yaml`), it explicitly runs `dart analyze --fatal-infos .agents/skills`. |\r\n| **`validate`** | `includeAllSubpackages` | **No (Skipped)** | Since `.pubignore` specifies `.agents/`, the skill packages are marked as ignored (`isPubIgnored \u003d true`). The `validate` command skips them entirely (`SKIPPING: Ignored by .pubignore`), exempting developer-only helper tools from public-facing package hygiene rules. |\r\n| **`dart-test`** | `includeAllSubpackages` | **Yes** | Because it targets all subpackages, it scans `.agents/skills/*`. If a skill package contains a `test/` directory, it executes the Dart/Flutter unit tests inside it. |\r\n| **`format`** | `topLevelOnly` | **Yes** | Uses recursive file gathering (`getFilesForPackage`) under the main package directory, formatting all Dart, C++, Java, Kotlin, and Swift files under `.agents/skills/`. It does not filter files using `.pubignore`. |\r\n| **`license-check`** | N/A (Repository-wide) | **Yes** | Gathers all tracked files in Git via `git ls-files`. Any file checked into Git under `.agents/skills/` is validated for standard first-party or recognized third-party license headers. |\r\n| **`fix`** | `includeAllSubpackages` | **Yes** | Runs `dart fix --apply` inside any skill package directory that contains a `pubspec.yaml`. |\r\n| **`update-dependency`**| `includeAllSubpackages` | **Yes** | If a targeted dependency is used by the skill package, its `pubspec.yaml` will be updated. |\r\n| **`update-min-sdk`** | `includeAllSubpackages` | **Yes** | Updates SDK constraints inside the skill package\u0027s `pubspec.yaml` when run. |\r\n| **`remove-dev-dependencies`** | `includeAllSubpackages` | **Yes** | Removes development dependencies from the skill package\u0027s `pubspec.yaml` when targeted. |\r\n| **`publish-check`** | `topLevelOnly` | **No** | Runs on the main package. Because `.agents/` is listed in `.pubignore`, the directory is excluded from the package archive and not uploaded or checked. |\r\n| **`publish`** | `topLevelOnly` | **No** | Similar to `publish-check`, the `.agents/` directory is skipped during publish due to `.pubignore`. |\r\n| **`fetch-deps`** | `topLevelOnly` | **No** | N/A |\r\n| **`list`** | N/A | **No** | Lists only top-level packages. |\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "862cdc5066a3ab62b220f0b09874ed04fa77fac8",
      "tree": "ed14676f935d334eed4edb3ac6a8d91a03b795bb",
      "parents": [
        "563f68fcb4d8d1597c48b0835ba98fd89043634d"
      ],
      "author": {
        "name": "Elliott Brooks",
        "email": "21270878+elliette@users.noreply.github.com",
        "time": "Tue Jun 30 22:03:09 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 30 22:03:09 2026"
      },
      "message": "[material_ui] Enable `time_picker_test` (#12061)\n\nPort over `time_picker_test` from https://github.com/flutter/flutter/pull/184279\r\n\r\nThe test cases that depend on `flutter_localizations` are being moved to `flutter_localizations` in PR https://github.com/flutter/flutter/pull/188753, see https://github.com/flutter/flutter/issues/188757 for rationale.\r\n\r\nWork towards https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "563f68fcb4d8d1597c48b0835ba98fd89043634d",
      "tree": "ccdec1fb5b4616f463a89dd6df13e2f8cf74932c",
      "parents": [
        "2900bc94e9912486e3454223df2683a372f4e137"
      ],
      "author": {
        "name": "Qun Cheng",
        "email": "36861262+QuncCccccc@users.noreply.github.com",
        "time": "Tue Jun 30 19:38:26 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 30 19:38:26 2026"
      },
      "message": "[cupertino_ui] Migrate checkbox_test.dart to SemanticsHandle (#12065)\n\nPart of https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\nThis PR:\r\n* Removes the cross-import of `widgets/semantics_tester.dart` from `checkbox_test.dart`.\r\n* Replaces the remaining `SemanticsTester` usages with `SemanticsHandle` and direct `tester.getSemantics` expectations.\r\n* Removes the `@Skip` annotation and moves the file to the `test/` folder.\r\n\r\n## Pre-Review Checklist"
    },
    {
      "commit": "2900bc94e9912486e3454223df2683a372f4e137",
      "tree": "cf0478bec1375a5814510a506da4bb4ca7be2e26",
      "parents": [
        "df33f891e5fce54134daa117ebf40618a93970be"
      ],
      "author": {
        "name": "Yashas H Majmudar",
        "email": "64674824+yashas-hm@users.noreply.github.com",
        "time": "Tue Jun 30 19:29:09 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 30 19:29:09 2026"
      },
      "message": "[image_picker] Handle limit: 1 in pickMultiImage and pickMultipleMedia gracefully (#11825)\n\n## Summary                                                                                                                                                                                                                          \r\n                                                                                                                                                                                                                                        \r\n  Fixes flutter/flutter#187347                                                                                                                                                                                                         \r\n   \r\n  `pickMultiImage(limit: 1)` and `pickMultipleMedia(limit: 1)` previously                                                                                                                                                               \r\n  threw:                                                                                                                                                                                                                              \r\n                                                                                                                                                                                                                                        \r\n      Invalid argument (limit): cannot be lower than 2: 1\r\n                                                                                                                                                                                                                                        \r\n  because `MultiImagePickerOptions` and `MediaOptions` in the platform                                                                                                                                                                  \r\n  interface both reject `limit \u003c 2`.\r\n                                                                                                                                                                                                                                        \r\n  ### Fix                                                                                                                                                                                                                             \r\n                                                                                                                                                                                                                                        \r\n  When `limit \u003d\u003d 1`, the facade now delegates to the equivalent                                                                                                                                                                         \r\n  single-item picker instead of forwarding to the platform:\r\n                                                                                                                                                                                                                                        \r\n  - `pickMultiImage(limit: 1)` → delegates to `pickImage(source: ImageSource.gallery, ...)`                                                                                                                                             \r\n  - `pickMultipleMedia(limit: 1)` → delegates to `pickMedia(...)`\r\n                                                                                                                                                                                                                                        \r\n  The result is wrapped in a single-element list, or an empty list if the                                                                                                                                                               \r\n  user cancelled. `limit \u003c\u003d 0` still throws as before.                                                                                                                                                                                  \r\n                                                                                                                                                                                                                                        \r\n  ### Why the facade, not the platform interface                                                                                                                                                                                        \r\n                                                                                                                                                                                                                                        \r\n  The `limit \u003c 2` guard in `MultiImagePickerOptions` and `MediaOptions`                                                                                                                                                                 \r\n  exists because the underlying platform multi-picker APIs genuinely do not                                                                                                                                                           \r\n  support selecting exactly one item, they require at least two. Relaxing                                                                                                                                                              \r\n  the validation in the platform interface would push the burden onto every                                                                                                                                                             \r\n  platform implementation to handle a case their native API may not                                                                                                                                                                     \r\n  support, risking silent misbehaviour on some platforms.                                                                                                                                                                               \r\n                                                                                                                                                                                                                                        \r\n  The facade (`image_picker`) is the right place for this: it already owns                                                                                                                                                              \r\n  the user-facing API contract and can transparently route `limit: 1` to                                                                                                                                                                \r\n  the well-tested single-item pickers without touching any platform code.                                                                                                                                                               \r\n                                                                                                                                                                                                                                        \r\n  ## Tests                                                                                                                                                                                                                              \r\n                                                                                                                                                                                                                                        \r\n  - `limit: 1` delegates to `getImageFromSource` with `ImageSource.gallery` (pickMultiImage)                                                                                                                                            \r\n  - `limit: 1` delegates to `getMedia` with `allowMultiple: false` (pickMultipleMedia)                                                                                                                                                \r\n  - Both return a single-element list when an item is picked, empty list when cancelled                                                                                                                                                 \r\n  - `limit: 0` and `limit: -1` still throw `ArgumentError`                                                                                                                                                                              \r\n  - All existing tests continue to pass \r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.\r\n\r\nCloses [flutter/flutter#187347](https://github.com/flutter/flutter/issues/187347)"
    },
    {
      "commit": "df33f891e5fce54134daa117ebf40618a93970be",
      "tree": "63994f2c2eeef49c48881015072e0bc68d1aa6ea",
      "parents": [
        "a159ff3c9809d00b52579977a8e9ef98a704b297"
      ],
      "author": {
        "name": "Faheem Abbas",
        "email": "faheemabbas766@gmail.com",
        "time": "Tue Jun 30 19:20:59 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 30 19:20:59 2026"
      },
      "message": "[cross_file] Document native mimeType behavior (#11662)\n\nClarifies that `XFile.mimeType` is not inferred from file paths or file contents on native platforms.\r\n\r\nFor native/io implementations, `mimeType` returns the value explicitly passed to `XFile` or `XFile.fromData`, if any. This matches the existing behavior and documents the expectation raised in flutter/flutter#93379.\r\n\r\nFixes flutter/flutter#93379\r\n\r\n## Tests\r\n\r\n```console\r\ndart analyze\r\ndart test\r\ncd example \u0026\u0026 dart test\r\n```\r\n## Notes\r\n\r\nThis PR only updates documentation comments, so no version/CHANGELOG update or new test is required.\r\n\r\n## Pre-Review Checklist\r\n\r\n[^1]: This PR only updates documentation comments, so no version/CHANGELOG update or new test is required."
    },
    {
      "commit": "a159ff3c9809d00b52579977a8e9ef98a704b297",
      "tree": "efa8c8a89bdbece630f349bf7d8c910f8fbc0fc0",
      "parents": [
        "473f08c3aed30ea8ba60e30aacd0048d11e05705"
      ],
      "author": {
        "name": "Qun Cheng",
        "email": "36861262+QuncCccccc@users.noreply.github.com",
        "time": "Tue Jun 30 19:14:07 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 30 19:14:07 2026"
      },
      "message": "[material_ui] Remove `image_data.dart` imports from `circle_avatar_test.dart`, `color_scheme_test.dart` (#12059)\n\nPart of https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\nThis PR:\r\n* Removes the `../image_data.dart` import from `circle_avatar_test.dart` and `color_scheme_test.dart`.\r\n* Removes the `../painting/mocks_for_image_cache.dart` import from `circle_avatar_test.dart`.\r\n* Adds a material_ui-local `test/image_data.dart` containing only the three image constants these tests use: `kBlueSquarePng`, `kTransparentImage`, and `kBlueRectPng`.\r\n* Keeps the failing image provider private in `circle_avatar_test.dart` instead of copying Flutter’s full `mocks_for_image_cache.dart`, because this test only needs the `ErrorImageProvider` behavior.\r\n* Removes the `@Skip` tags and moves both files to the `test/` folder.\r\n\r\n## Pre-Review Checklist\r\n\r\n  exception this PR falls under[^1]."
    },
    {
      "commit": "473f08c3aed30ea8ba60e30aacd0048d11e05705",
      "tree": "7e75a8f4232cf51b39b9727e9b3e6a8330f0b918",
      "parents": [
        "9ea87177078cfe0d052175e88c5b88571a47aff7"
      ],
      "author": {
        "name": "Qun Cheng",
        "email": "36861262+QuncCccccc@users.noreply.github.com",
        "time": "Tue Jun 30 19:11:59 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 30 19:11:59 2026"
      },
      "message": "[cupertino_ui] Remove `image_data.dart` import from `scaffold_test.dart` (#12060)\n\nPart of https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\nThis PR:\r\n* Removes the `../image_data.dart` import from `scaffold_test.dart`.\r\n* Replaces transparent image placeholder tab icons with existing-style Cupertino icons (`CupertinoIcons.search` and `CupertinoIcons.settings`).\r\n* Removes the `@Skip` tag and moves the file to the `test/` folder.\r\n\r\nNotes:\r\n* `scaffold_test.dart` only used `kTransparentImage` as placeholder tab icons. Since these tests cover scaffold layout, tab scaffold padding, and independent tab navigation rather than image rendering, using existing Cupertino icons avoids adding a package-local image fixture for this file.\r\n\r\n## Pre-Review Checklist\r\n\r\n  exception this PR falls under[^1]."
    },
    {
      "commit": "9ea87177078cfe0d052175e88c5b88571a47aff7",
      "tree": "263287f0ae4fdaa498d0bc1e8617a2416f7d7713",
      "parents": [
        "bf30743339b35e0b4573cd4f989fb836ef0f686b"
      ],
      "author": {
        "name": "Qun Cheng",
        "email": "36861262+QuncCccccc@users.noreply.github.com",
        "time": "Tue Jun 30 19:02:26 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 30 19:02:26 2026"
      },
      "message": "[cupertino_ui] Remove widgets import from menu_anchor_test.dart (#12068)\n\nPart of https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\nThis PR:\r\n* Removes the cross-import of `widgets/semantics_tester.dart` from `menu_anchor_test.dart`.\r\n* Removes `SemanticsTester` usages.\r\n* Removes the `@Skip` annotation and moves the file to the `test/` folder.\r\n* Updates two internal test helper constructors to satisfy analyzer after enabling the file: updated `NestedTag` and `DebugCupertinoMenuEntry` constructors to satisfy `prefer_initializing_formals` after the file became analyzed under `test/`. These helper changes are analyzer-only cleanup; without them, `dart analyze --fatal-infos` fails."
    },
    {
      "commit": "bf30743339b35e0b4573cd4f989fb836ef0f686b",
      "tree": "ac0b8837356dbb115346a82d9333241dafa19ee6",
      "parents": [
        "a4ec356c49291ff5535d3348264f713d30f43601"
      ],
      "author": {
        "name": "Elliott Brooks",
        "email": "21270878+elliette@users.noreply.github.com",
        "time": "Tue Jun 30 17:33:16 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 30 17:33:16 2026"
      },
      "message": "[material_ui] Enable `checkbox_list_tile_test` (#12007)\n\nPort over `checkbox_list_tile_test` from https://github.com/flutter/flutter/pull/184279\r\n\r\nWork towards https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "a4ec356c49291ff5535d3348264f713d30f43601",
      "tree": "ac0b8837356dbb115346a82d9333241dafa19ee6",
      "parents": [
        "274ed3e0f9f6d99139bdb7a19c5decbcd702b01f"
      ],
      "author": {
        "name": "LouiseHsu",
        "email": "louisehsu@google.com",
        "time": "Tue Jun 30 17:27:41 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 30 17:27:41 2026"
      },
      "message": "[in_app_purchase_storekit] Expose quantity in Transactions (#11879)\n\nFixes https://github.com/flutter/flutter/issues/186490\r\n\r\nPart of an attempt to one-shot iap issues, inspired by camera work for flutter android \r\n\r\n## Pre-Review Checklist"
    },
    {
      "commit": "274ed3e0f9f6d99139bdb7a19c5decbcd702b01f",
      "tree": "be1c9e7e9929ea1d6f6ee9efeb2c8e6bab2ca9cd",
      "parents": [
        "baac7f83bc106182be63fe2474c75a6220af3bc2"
      ],
      "author": {
        "name": "Natesh Bhat",
        "email": "nateshmbhat1@gmail.com",
        "time": "Tue Jun 30 03:22:26 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 30 03:22:26 2026"
      },
      "message": "[video_player_android] Add video track selection support (#11475)\n\n## Summary\nAndroid breakout PR for #10688.\n\n- Implements `getVideoTracks()` and `selectVideoTrack()` methods using ExoPlayer\u0027s `TrackSelectionOverride`\n- Adds `onVideoTrackChanged` event callback for track change notifications\n- Adds comprehensive Java and Dart unit tests\n\n## Dependency Chain\nThis PR is **second** in a series of breakout PRs:\n1. `video_player_platform_interface` (#11474) - pending\n2. `video_player_android` (this PR)\n3. `video_player_avfoundation` (pending)\n4. `video_player` + `video_player_web` (pending - original PR #10688 updated)\n\n**Note:** This PR depends on `video_player_platform_interface` 6.7.0 being published first.\n\n## Test Plan"
    },
    {
      "commit": "baac7f83bc106182be63fe2474c75a6220af3bc2",
      "tree": "f7121ec9f24f4193d2bbac1cd88ad42d60b42cb8",
      "parents": [
        "dfb76383a9d6695e003d7e39d829c8d485a9c6ab"
      ],
      "author": {
        "name": "engine-flutter-autoroll",
        "email": "engine-flutter-autoroll@skia.org",
        "time": "Tue Jun 30 01:53:20 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 30 01:53:20 2026"
      },
      "message": "Manual roll Flutter from b081f33649ed to 0c80830e465b (1 revision) (#12058)\n\nManual roll requested by stuartmorgan@google.com\n\nhttps://github.com/flutter/flutter/compare/b081f33649ed...0c80830e465b\n\n2026-06-23 engine-flutter-autoroll@skia.org Roll Dart SDK from 3a66ea7b9aaa to 1a4e3749f9a0 (1 revision) (flutter/flutter#188393)\n\nIf this roll has caused a breakage, revert this CL and stop the roller\nusing the controls here:\nhttps://autoroll.skia.org/r/flutter-packages\nPlease CC stuartmorgan@google.com,tarrinneal@google.com on the revert to ensure that a human\nis aware of the problem.\n\nTo file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose\n\nTo report a problem with the AutoRoller itself, please file a bug:\nhttps://issues.skia.org/issues/new?component\u003d1389291\u0026template\u003d1850622\n\nDocumentation for the AutoRoller is here:\nhttps://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md"
    },
    {
      "commit": "dfb76383a9d6695e003d7e39d829c8d485a9c6ab",
      "tree": "72438e2ee476064187e0a12a5e120a69de477f81",
      "parents": [
        "b3a895e9969eb4787648b490c6e1e280858e301a"
      ],
      "author": {
        "name": "Qun Cheng",
        "email": "36861262+QuncCccccc@users.noreply.github.com",
        "time": "Tue Jun 30 00:06:27 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 30 00:06:27 2026"
      },
      "message": "[material_ui] Remove `widgets` import from `material_test.dart` (#12056)\n\nPart of https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\n  This PR:\r\n  * Removed the cross-import of `widgets/multi_view_testing.dart`.\r\n  * Removed @Skip tag, all tests in this file have passed.\r\n  * Moved the file to `test/` folder.\r\n\r\nI did not copy `multi_view_testing.dart` wholesale because `material_test.dart` only needs a minimal fake secondary view for one `View`/`ViewAnchor` assertion. The rest of `multi_view_testing.dart` is used by Flutter’s widgets-layer tests, not by this Material test. Keeping `_FakeView` private avoids adding unused shared test infrastructure until another `material_ui` test actually needs it.\r\n\r\n  ## Pre-Review Checklist\r\n\r\n  exception this PR falls under[^1]."
    },
    {
      "commit": "b3a895e9969eb4787648b490c6e1e280858e301a",
      "tree": "2e6b79f4e9136f3b77674ee761b1e6bf85f3c4cc",
      "parents": [
        "b3afbc5f32622e0668053744b526304c23f69cf6"
      ],
      "author": {
        "name": "Qun Cheng",
        "email": "36861262+QuncCccccc@users.noreply.github.com",
        "time": "Mon Jun 29 19:54:19 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 29 19:54:19 2026"
      },
      "message": "[material_ui] Remove `widgets` imports from `card_test.dart`, `checkbox_list_tile_test.dart` (#12054)\n\nPart of https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\n  This PR:\r\n  * Removed the cross-imports of `widgets/feedback_tester.dart` and `widgets/semantics_tester.dart`.\r\n  * Removed @Skip tag, all tests in this file have passed.\r\n  * Moved the files to `test/` folder.\r\n\r\n  ## Pre-Review Checklist\r\n\r\n  exception this PR falls under[^1]."
    },
    {
      "commit": "b3afbc5f32622e0668053744b526304c23f69cf6",
      "tree": "669d3a999e4f7fcb45db2900dc071738da6e5924",
      "parents": [
        "3df6b4aa7e45d3f01084b94695b8aaad0c4dabf8"
      ],
      "author": {
        "name": "Qun Cheng",
        "email": "36861262+QuncCccccc@users.noreply.github.com",
        "time": "Mon Jun 29 19:54:16 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 29 19:54:16 2026"
      },
      "message": "[material_ui] Remove `widgets/clipboard_utils.dart`, `widgets/text_selection_toolbar_utils.dart` imports from `adaptive_text_selection_toolbar_test.dart` (#12053)\n\nPart of https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\n  This PR:\r\n  * Removed the cross-imports of `widgets/clipboard_utils.dart` and `widgets/text_selection_toolbar_utils.dart`.\r\n  * Added `test/text_selection_toolbar_utils.dart` for the Material/Cupertino overflow helpers used by this test.\r\n  * Removed @Skip tag, all tests in this file have passed.\r\n  * Moved the file to `test/` folder.\r\n\r\n  This PR is to port over the changes in https://github.com/flutter/flutter/pull/184278\r\n\r\n  ## Pre-Review Checklist\r\n\r\n  exception this PR falls under[^1]."
    },
    {
      "commit": "3df6b4aa7e45d3f01084b94695b8aaad0c4dabf8",
      "tree": "1297c910be1c787323a869609dca59152ed08945",
      "parents": [
        "d974a0cb2911ba5495e98091f0f8b204de9db2c6"
      ],
      "author": {
        "name": "engine-flutter-autoroll",
        "email": "engine-flutter-autoroll@skia.org",
        "time": "Mon Jun 29 18:53:59 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 29 18:53:59 2026"
      },
      "message": "Manual roll Flutter from 11e339e300d6 to b081f33649ed (1 revision) (#12050)\n\nManual roll requested by stuartmorgan@google.com\n\nhttps://github.com/flutter/flutter/compare/11e339e300d6...b081f33649ed\n\n2026-06-23 31859944+LongCatIsLooong@users.noreply.github.com No entitlements for snapshots (flutter/flutter#188390)\n\nIf this roll has caused a breakage, revert this CL and stop the roller\nusing the controls here:\nhttps://autoroll.skia.org/r/flutter-packages\nPlease CC stuartmorgan@google.com,tarrinneal@google.com on the revert to ensure that a human\nis aware of the problem.\n\nTo file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose\n\nTo report a problem with the AutoRoller itself, please file a bug:\nhttps://issues.skia.org/issues/new?component\u003d1389291\u0026template\u003d1850622\n\nDocumentation for the AutoRoller is here:\nhttps://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md"
    },
    {
      "commit": "d974a0cb2911ba5495e98091f0f8b204de9db2c6",
      "tree": "c3f9d505f8543d6f734d1eac0d28121448bf2e73",
      "parents": [
        "ac93e1a0b3e6ae28410778e5ab76968adc1716b2"
      ],
      "author": {
        "name": "Qun Cheng",
        "email": "36861262+QuncCccccc@users.noreply.github.com",
        "time": "Mon Jun 29 18:04:15 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 29 18:04:15 2026"
      },
      "message": "[material_ui] Remove `widgets/clipboard_utils.dart` imports from `date_picker_test.dart`, `input_date_picker_form_field_test.dart`, `search_test.dart`, `selectable_text_test.dart`, `text_form_field_test.dart`, `text_selection_test.dart` (#12030)\n\n~**Test failures are expected. This PR should land after https://github.com/flutter/packages/pull/12022**~\r\n\r\nPart of https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\nThis PR:\r\n* Removed the cross-import of `widgets/clipboard_utils.dart`.\r\n* Removed @Skip tag, all tests in this file has passed. `semantics_tester.dart` has existed in material_ui, so we can directly import `semantics_tester.dart`;\r\n* Moved the file to `test/` folder.\r\n\r\nThis PR is to port over the changes in https://github.com/flutter/flutter/pull/184278\r\n\r\n## Pre-Review Checklist"
    },
    {
      "commit": "ac93e1a0b3e6ae28410778e5ab76968adc1716b2",
      "tree": "47080b2f9027bb419fb3c15b16fac6bac6bcb037",
      "parents": [
        "44be9863f0bf4f8a51ca97ea8cd1f02d850eb2f6"
      ],
      "author": {
        "name": "engine-flutter-autoroll",
        "email": "engine-flutter-autoroll@skia.org",
        "time": "Mon Jun 29 17:51:26 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 29 17:51:26 2026"
      },
      "message": "Manual roll Flutter from 87224e0fb692 to 11e339e300d6 (4 revisions) (#12041)\n\nManual roll requested by stuartmorgan@google.com\n\nhttps://github.com/flutter/flutter/compare/87224e0fb692...11e339e300d6\n\n2026-06-23 bkonyi@google.com [flutter_tools] Migrate analysis_options.yaml to exclude build and platform directories by default (flutter/flutter#187940)\n2026-06-23 katelovett@google.com Update docs for PR limits (flutter/flutter#188388)\n2026-06-23 engine-flutter-autoroll@skia.org Roll Packages from cd5194a5f049 to 7d84a699def1 (4 revisions) (flutter/flutter#188383)\n2026-06-23 bkonyi@google.com [Tool] Fix widget-preview crash by waiting for analysis server (flutter/flutter#187941)\n\nIf this roll has caused a breakage, revert this CL and stop the roller\nusing the controls here:\nhttps://autoroll.skia.org/r/flutter-packages\nPlease CC stuartmorgan@google.com,tarrinneal@google.com on the revert to ensure that a human\nis aware of the problem.\n\nTo file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose\n\nTo report a problem with the AutoRoller itself, please file a bug:\nhttps://issues.skia.org/issues/new?component\u003d1389291\u0026template\u003d1850622\n\nDocumentation for the AutoRoller is here:\nhttps://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md"
    },
    {
      "commit": "44be9863f0bf4f8a51ca97ea8cd1f02d850eb2f6",
      "tree": "8dc7bb143fa8da5e522bc3bd10ee8a8e5f4b1695",
      "parents": [
        "b6420a7f094f03108be271f5d992a3a637660a12"
      ],
      "author": {
        "name": "Elliott Brooks",
        "email": "21270878+elliette@users.noreply.github.com",
        "time": "Mon Jun 29 16:31:52 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 29 16:31:52 2026"
      },
      "message": "[material_ui] Enable `text_field_test` (#12022)\n\nPort over `text_field_test` from https://github.com/flutter/flutter/pull/184279\r\n\r\nWork towards https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "b6420a7f094f03108be271f5d992a3a637660a12",
      "tree": "e83c1ce801aaf6b0950408951c9d8c5c36523e12",
      "parents": [
        "87d3770c24424de8a7a97c87ec94cb252e77003a"
      ],
      "author": {
        "name": "Elliott Brooks",
        "email": "21270878+elliette@users.noreply.github.com",
        "time": "Mon Jun 29 15:54:10 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 29 15:54:10 2026"
      },
      "message": "[material_ui] Port PR (#184807) from flutter/flutter to material_ui (#11972)\n\nMost Material and Cupertino code was copied over from flutter/flutter in https://github.com/flutter/packages/pull/11888, but a few PRs landed after that copy. This PR copies one of those PRs to this repo.\r\n\r\nPorts over https://github.com/flutter/flutter/pull/184807.\r\n\r\nWork towards https://github.com/flutter/flutter/issues/188441\r\n\r\n## Pre-Review Checklist\r\n\r\n**Test exemption: cherry-pick of PR from flutter/flutter**\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "87d3770c24424de8a7a97c87ec94cb252e77003a",
      "tree": "4137b42fa7098ba3436554f46be22990384ec8e9",
      "parents": [
        "9768d30f5a1190706af0f0aa3dacdcfb11f0b438"
      ],
      "author": {
        "name": "Renzo Olivares",
        "email": "rmolivares@renzo-olivares.dev",
        "time": "Mon Jun 29 15:50:10 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 29 15:50:10 2026"
      },
      "message": "[cupertino_ui] Migrate `button_test.dart` to `SemanticsHandle` (#11992)\n\nPart of https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\nThis PR:\r\n* Removed the cross-import of `widgets/semantics_tester.dart`. Replaced `SemanticsTester` with `SemanticsHandle`.\r\n* Removed `@Skip` annotation, all tests in this file has passed. `semantics_tester.dart` has existed in `cupertino_ui`, so we can directly import `semantics_tester.dart`;\r\n* Moved the file to `test/` folder.\r\n\r\n## Pre-Review Checklist"
    },
    {
      "commit": "9768d30f5a1190706af0f0aa3dacdcfb11f0b438",
      "tree": "c44a562c3dd6ceb186e93448afac9382e895a458",
      "parents": [
        "66d994112e849c14390745dd50d6bf62bc4bd3bd"
      ],
      "author": {
        "name": "Renzo Olivares",
        "email": "rmolivares@renzo-olivares.dev",
        "time": "Mon Jun 29 15:46:06 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 29 15:46:06 2026"
      },
      "message": "[cupertino_ui] Migrate `radio_test.dart` to `SemanticsHandle` (#11981)\n\nPart of https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\nThis PR:\r\n* Removed the cross-import of `widgets/semantics_tester.dart`. Replaced `SemanticsTester` with `SemanticsHandle`.\r\n* Removed `@Skip` annotation, all tests in this file has passed. `semantics_tester.dart` has existed in `cupertino_ui`, so we can directly import `semantics_tester.dart`;\r\n* Moved the file to `test/` folder.\r\n\r\n## Pre-Review Checklist"
    },
    {
      "commit": "66d994112e849c14390745dd50d6bf62bc4bd3bd",
      "tree": "c39cea975b550f2bec972ee21d28d8b24bfea5f2",
      "parents": [
        "ef9b66c99e20dbf24d6c38dcf43884924a7b29a6"
      ],
      "author": {
        "name": "Renzo Olivares",
        "email": "rmolivares@renzo-olivares.dev",
        "time": "Mon Jun 29 15:39:19 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 29 15:39:19 2026"
      },
      "message": "[cupertino_ui] Migrate `picker_test.dart` to `SemanticsHandle` (#12008)\n\nPart of https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\nThis PR:\r\n* Removed the cross-import of `widgets/semantics_tester.dart`. Replaced `SemanticsTester` with `SemanticsHandle`.\r\n* Removed `@Skip` annotation, all tests in this file has passed. `semantics_tester.dart` has existed in `cupertino_ui`, so we can directly import `semantics_tester.dart`;\r\n* Moved the file to `test/` folder.\r\n\r\n## Pre-Review Checklist"
    },
    {
      "commit": "ef9b66c99e20dbf24d6c38dcf43884924a7b29a6",
      "tree": "f0c257c08fd8bae03c367bd6a6cd0860e32c8fab",
      "parents": [
        "e7276772c2dd98f41b2d00b7f3d3999083e56d8c"
      ],
      "author": {
        "name": "Qun Cheng",
        "email": "36861262+QuncCccccc@users.noreply.github.com",
        "time": "Mon Jun 29 15:31:15 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 29 15:31:15 2026"
      },
      "message": "[cupertino_ui] Create util files. Remove widgets import in `adaptive_text_selection_toolbar_test.dart` and `text_selection_test.dart` (#12023)\n\nPart of https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\nThis PR:\r\n* Removed the cross-import of `widgets/clipboard_utils.dart` and `widgets/text_selection_toolbar_utils.dart`.\r\n* Removed @Skip tag, all tests in this file has passed. Created util files for `clipboard_utils.dart` and `text_selection_toolbar_utils.dart`\r\n* Moved the files to `test/` folder.\r\n\r\nThis is to port changes in https://github.com/flutter/flutter/pull/184278\r\n## Pre-Review Checklist"
    },
    {
      "commit": "e7276772c2dd98f41b2d00b7f3d3999083e56d8c",
      "tree": "bf4c49e74b070abea2b9b29944ce71ffd7c9acf2",
      "parents": [
        "787157b667b607d315b867c54b8c0f92ceda5f9c"
      ],
      "author": {
        "name": "Elliott Brooks",
        "email": "21270878+elliette@users.noreply.github.com",
        "time": "Mon Jun 29 15:27:25 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 29 15:27:25 2026"
      },
      "message": "[material_ui] Enable `floating_action_button_test` (#12014)\n\nPort over `floating_action_button_test` from https://github.com/flutter/flutter/pull/184279\r\n\r\nWork towards https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "787157b667b607d315b867c54b8c0f92ceda5f9c",
      "tree": "3827073815c376db684b9d2af0ad0598bb1bb38d",
      "parents": [
        "6e16ed640e31a5c228246e23d0a768fda09d5cae"
      ],
      "author": {
        "name": "Elliott Brooks",
        "email": "21270878+elliette@users.noreply.github.com",
        "time": "Mon Jun 29 15:22:57 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 29 15:22:57 2026"
      },
      "message": "[material_ui] Enable `dropdown_test` (#12011)\n\nPort over `dropdown_test` from https://github.com/flutter/flutter/pull/184279\r\n\r\nWork towards https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "6e16ed640e31a5c228246e23d0a768fda09d5cae",
      "tree": "926849dc1588094efd8e5a793cb5590efbb2d42d",
      "parents": [
        "523fff0a7ce33ebcd410346a73c01ee4c8126c57"
      ],
      "author": {
        "name": "Elliott Brooks",
        "email": "21270878+elliette@users.noreply.github.com",
        "time": "Mon Jun 29 15:22:52 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 29 15:22:52 2026"
      },
      "message": "[material_ui] Enable `chip_test` (#12009)\n\nPort over `chip_test` from https://github.com/flutter/flutter/pull/184279\r\n\r\nWork towards https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "523fff0a7ce33ebcd410346a73c01ee4c8126c57",
      "tree": "0e2bef306a76f07fc471a20f7819e7f11e187a8a",
      "parents": [
        "9d4c585feba3d4c6814ac0b99865e2faa8c2fe5a"
      ],
      "author": {
        "name": "Qun Cheng",
        "email": "36861262+QuncCccccc@users.noreply.github.com",
        "time": "Mon Jun 29 15:22:49 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 29 15:22:49 2026"
      },
      "message": "[material_ui] Remove widgets import in `data_table_test.dart`, `switch_test.dart` and `tooltip_theme_test.dart` (#12031)\n\nPart of https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\nThis PR:\r\n* Removed the cross-import of `widgets/semantics_tester.dart`.\r\n* Removed @Skip tag, all tests in this file has passed. `semantics_tester.dart` has existed in material_ui, so we can directly import `semantics_tester.dart`;\r\n* Moved the file to `test/` folder.\r\n\r\n## Pre-Review Checklist"
    },
    {
      "commit": "9d4c585feba3d4c6814ac0b99865e2faa8c2fe5a",
      "tree": "2f5ae92a3d016a4c9c83d66f3971e48c3388655a",
      "parents": [
        "f17020066919681223726a7cd13e5cecef7de0da"
      ],
      "author": {
        "name": "Burak Karahan",
        "email": "burak.karahan@mail.ru",
        "time": "Mon Jun 29 15:19:26 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 29 15:19:26 2026"
      },
      "message": "[material_ui] Port flutter/flutter #186670 \"Use local semantics tester in Material selection tests\" (#11983)\n\nThis PR ports flutter/flutter#186670 by @MarlonJD from flutter/flutter to flutter/packages.\n\nIt moves the affected Material selection tests from material_ui\u0027s `temporarily_disabled_tests` directory into the main `test` directory now that their gross `../widgets/semantics_tester.dart` import has been fixed to use material_ui\u0027s local `semantics_tester.dart`.\n\nThis follows the porting instructions in flutter/flutter#188444:\n- merge commits from the original PR are not included\n- the affected `temporarily_disabled_tests` files are moved into the main test directory after fixing the gross import\n\nValidation:\n- `dart format --set-exit-if-changed packages/material_ui/test/checkbox_test.dart packages/material_ui/test/radio_test.dart packages/material_ui/test/range_slider_test.dart packages/material_ui/test/slider_test.dart packages/material_ui/test/toggle_buttons_test.dart`\n- `git diff --check`\n- `flutter test test/checkbox_test.dart test/radio_test.dart test/range_slider_test.dart test/slider_test.dart test/toggle_buttons_test.dart`\n\nThe targeted test command passed with 304 tests."
    },
    {
      "commit": "f17020066919681223726a7cd13e5cecef7de0da",
      "tree": "9ed151f3ccfe3652e33d731db754895fa87ebc3a",
      "parents": [
        "c2d2c1cb02f1afaf686ad8322e3ab6c69de51c7c"
      ],
      "author": {
        "name": "Elliott Brooks",
        "email": "21270878+elliette@users.noreply.github.com",
        "time": "Mon Jun 29 15:15:22 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 29 15:15:22 2026"
      },
      "message": "[material_ui] Enable `switch_list_tile_test` (#12020)\n\nPort over `switch_list_tile_test` from https://github.com/flutter/flutter/pull/184279\r\n\r\nWork towards https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "c2d2c1cb02f1afaf686ad8322e3ab6c69de51c7c",
      "tree": "965a6d0db51787f97fdc05d34fd597068a972b1e",
      "parents": [
        "0615e3cfceb58d5cbcfabc87ed35ee9cef6d8db7"
      ],
      "author": {
        "name": "Elliott Brooks",
        "email": "21270878+elliette@users.noreply.github.com",
        "time": "Mon Jun 29 15:12:58 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 29 15:12:58 2026"
      },
      "message": "[material_ui] Enable `popup_menu_test` (#12018)\n\nPort over `popup_menu_test` from https://github.com/flutter/flutter/pull/184279\r\n\r\nWork towards https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "0615e3cfceb58d5cbcfabc87ed35ee9cef6d8db7",
      "tree": "5a4a2db4b0dcc0ca6fd8cc70f2ba55d8cdd2fd0a",
      "parents": [
        "c9171a792671e0c9008cc21619bc92939372b984"
      ],
      "author": {
        "name": "Elliott Brooks",
        "email": "21270878+elliette@users.noreply.github.com",
        "time": "Mon Jun 29 15:12:55 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 29 15:12:55 2026"
      },
      "message": "[material_ui] Enable `date_range_picker_test` (#12010)\n\nPort over `date_range_picker_test` from https://github.com/flutter/flutter/pull/184279\r\n\r\nWork towards https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "c9171a792671e0c9008cc21619bc92939372b984",
      "tree": "07b68867b7beb9bad3df33c0daf89aedd74e8c63",
      "parents": [
        "656ccaae4f49df2e4cb6c8c2e6d6bf0943c8ae6f"
      ],
      "author": {
        "name": "stuartmorgan-g",
        "email": "stuartmorgan@google.com",
        "time": "Mon Jun 29 15:03:43 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 29 15:03:43 2026"
      },
      "message": "[google_sign_in] Simplify Android user ID extraction (#12025)\n\nRemoves the code to manually extract Google account ID from the ID token in favor of using the new SDK-level API that provides the same functionality.\r\n\r\nFixes https://github.com/flutter/flutter/issues/186755\r\n\r\n## Pre-Review Checklist\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "656ccaae4f49df2e4cb6c8c2e6d6bf0943c8ae6f",
      "tree": "0b2ad0d7c13f52bfd4698ca23367843412cbb9f5",
      "parents": [
        "556cc6b69a9951b50cfa948f0b33e0a61983bdfd"
      ],
      "author": {
        "name": "Elliott Brooks",
        "email": "21270878+elliette@users.noreply.github.com",
        "time": "Fri Jun 26 20:35:15 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jun 26 20:35:15 2026"
      },
      "message": "[material_ui] Enable `icon_button_test` (#12015)\n\nPort over `icon_button_test` from https://github.com/flutter/flutter/pull/184279\r\n\r\nWork towards https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "556cc6b69a9951b50cfa948f0b33e0a61983bdfd",
      "tree": "b5b6c4f79374abe91a4f31ea41713aa8c2e25dfe",
      "parents": [
        "1622044befd05da116a3c0d02d56431d8bfcccc7"
      ],
      "author": {
        "name": "Elliott Brooks",
        "email": "21270878+elliette@users.noreply.github.com",
        "time": "Fri Jun 26 20:35:12 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jun 26 20:35:12 2026"
      },
      "message": "[material_ui] Enable `list_tile_test` (#12017)\n\nPort over `list_tile_test` from https://github.com/flutter/flutter/pull/184279\r\n\r\nWork towards https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "1622044befd05da116a3c0d02d56431d8bfcccc7",
      "tree": "40ddd375bb9e159b5f9c4e182d35c82f74671d88",
      "parents": [
        "f8a1f6f453852f6b48fa388ad494d113c44bba4a"
      ],
      "author": {
        "name": "Elliott Brooks",
        "email": "21270878+elliette@users.noreply.github.com",
        "time": "Fri Jun 26 20:35:09 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jun 26 20:35:09 2026"
      },
      "message": "[material_ui] Enable `calendar_date_picker_test` (#12006)\n\nPort over `calendar_date_picker_test` from https://github.com/flutter/flutter/pull/184279\r\n\r\nWork towards https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    },
    {
      "commit": "f8a1f6f453852f6b48fa388ad494d113c44bba4a",
      "tree": "54b958256b3f711a862324eb4189df6b4cb622d1",
      "parents": [
        "7b930066ea8b986c26361a154aed0e55fe077a2f"
      ],
      "author": {
        "name": "Elliott Brooks",
        "email": "21270878+elliette@users.noreply.github.com",
        "time": "Fri Jun 26 20:31:11 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jun 26 20:31:11 2026"
      },
      "message": "[material_ui] Enable `filter_chip_test` (#12013)\n\nPort over `filter_chip_test` from https://github.com/flutter/flutter/pull/184279\r\n\r\nWork towards https://github.com/flutter/flutter/issues/182636 and https://github.com/flutter/flutter/issues/188395\r\n\r\n## Pre-Review Checklist\r\n\r\n**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member\u0027s review for guidance on which automated comments should be addressed.\r\n\r\n[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling."
    }
  ],
  "next": "7b930066ea8b986c26361a154aed0e55fe077a2f"
}
