)]}'
{
  "log": [
    {
      "commit": "bc52555f147df13cffc1a40aed4cefda3c5f32c7",
      "tree": "34e1cd23857c7fc91f87b96413feb451e0f331b0",
      "parents": [
        "ebe0f15eac4fab4c8c99f401dbb3787016b74d91"
      ],
      "author": {
        "name": "Renzo Olivares",
        "email": "rmolivares@renzo-olivares.dev",
        "time": "Fri Apr 10 19:10:28 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 22:56:29 2026 -0700"
      },
      "message": "`SelectableRegion` can dismiss context menu with keyboard shortcuts (#184788)\n\nPart of #182628\n\nAdds support for `DismissIntent` in `SelectableRegion`, so it may\ndismiss the context menu when it is present and the \"esc\" key is\npressed.\n\n## Pre-launch Checklist\n\n- [x] I read the [Contributor Guide] and followed the process outlined\nthere for submitting PRs.\n- [x] I read the [AI contribution guidelines] and understand my\nresponsibilities, or I am not using AI tools.\n- [x] I read the [Tree Hygiene] wiki page, which explains my\nresponsibilities.\n- [x] I read and followed the [Flutter Style Guide], including [Features\nwe expect every widget to implement].\n- [x] I signed the [CLA].\n- [x] I listed at least one issue that this PR fixes in the description\nabove.\n- [x] I updated/added relevant documentation (doc comments with `///`).\n- [x] I added new tests to check the change I am making, or this PR is\n[test-exempt].\n- [x] I followed the [breaking change policy] and added [Data Driven\nFixes] where supported.\n- [x] All existing and new tests are passing.\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/bf9f14bbb1aac8505de940bf56a9c9e6b15fe00e\n"
    },
    {
      "commit": "ebe0f15eac4fab4c8c99f401dbb3787016b74d91",
      "tree": "02bf3ae5f79e8b2f5240bee8393606e4ba1ce2ea",
      "parents": [
        "5009823e53abc44b61e8e05fbfa37ccd885f242e"
      ],
      "author": {
        "name": "engine-flutter-autoroll",
        "email": "engine-flutter-autoroll@skia.org",
        "time": "Fri Apr 10 20:56:28 2026 -0400"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 22:56:20 2026 -0700"
      },
      "message": "Roll Skia from a8128c7adc49 to 8cbf3db1a0db (1 revision) (#184904)\n\nhttps://skia.googlesource.com/skia.git/+log/a8128c7adc49..8cbf3db1a0db\n\n2026-04-10 nicolettep@google.com Reland^3 \"Fix VkTestUtils\u0027s\nVulkanPreferredFeatures usage\"\n\nIf this roll has caused a breakage, revert this CL and stop the roller\nusing the controls here:\nhttps://autoroll.skia.org/r/skia-flutter-autoroll\nPlease CC egdaniel@google.com,jimgraham@google.com,kjlubick@google.com\non the revert to ensure that a human\nis aware of the problem.\n\nTo file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry\nTo file a bug in Flutter:\nhttps://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\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/c158af1d18fb7101b0498bb0324ed5bc20080213\n"
    },
    {
      "commit": "5009823e53abc44b61e8e05fbfa37ccd885f242e",
      "tree": "f7d992bb3d2f82bd87b07b00a67aec538a908fa2",
      "parents": [
        "a31d8ac2275e8ad37a088c2f1798df15385434fa"
      ],
      "author": {
        "name": "engine-flutter-autoroll",
        "email": "engine-flutter-autoroll@skia.org",
        "time": "Fri Apr 10 19:14:25 2026 -0400"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 17:47:32 2026 -0700"
      },
      "message": "Roll Dart SDK from e715805ddbd3 to 7128b5b5142c (3 revisions) (#184896)\n\nhttps://dart.googlesource.com/sdk.git/+log/e715805ddbd3..7128b5b5142c\n\n2026-04-10 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com\nVersion 3.13.0-8.0.dev\n2026-04-10 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com\nVersion 3.13.0-7.0.dev\n2026-04-10 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com\nVersion 3.13.0-6.0.dev\n\nIf this roll has caused a breakage, revert this CL and stop the roller\nusing the controls here:\nhttps://autoroll.skia.org/r/dart-sdk-flutter\nPlease CC dart-vm-team@google.com,jimgraham@google.com on the revert to\nensure that a human\nis aware of the problem.\n\nTo file a bug in Flutter:\nhttps://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\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/eb0796f3f2e12c898d4abb7b53b3bbb216902ab3\n"
    },
    {
      "commit": "a31d8ac2275e8ad37a088c2f1798df15385434fa",
      "tree": "79103248c11857de44500f69f7c9e1e63e9bbb0c",
      "parents": [
        "3fc16dd75b835a28e5e331ced12972ea15b44e5a"
      ],
      "author": {
        "name": "engine-flutter-autoroll",
        "email": "engine-flutter-autoroll@skia.org",
        "time": "Fri Apr 10 18:42:27 2026 -0400"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 16:30:59 2026 -0700"
      },
      "message": "Roll Skia from 7c8b85349a9a to a8128c7adc49 (2 revisions) (#184899)\n\nhttps://skia.googlesource.com/skia.git/+log/7c8b85349a9a..a8128c7adc49\n\n2026-04-10 thomsmit@google.com [graphite] add fine grained bounds\nchecking\n2026-04-10 skia-autoroll@skia-public.iam.gserviceaccount.com Roll\nvulkan-deps from fc3031169f9f to b325d2324719 (3 revisions)\n\nIf this roll has caused a breakage, revert this CL and stop the roller\nusing the controls here:\nhttps://autoroll.skia.org/r/skia-flutter-autoroll\nPlease CC egdaniel@google.com,jimgraham@google.com,kjlubick@google.com\non the revert to ensure that a human\nis aware of the problem.\n\nTo file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry\nTo file a bug in Flutter:\nhttps://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\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/cbf580243c5745f67fa0649c1a9e9f677aed9c47\n"
    },
    {
      "commit": "3fc16dd75b835a28e5e331ced12972ea15b44e5a",
      "tree": "1dd45b99316e78e0c2fe7f61523481c1107d6f46",
      "parents": [
        "85329a901fcd7678ef1ba58c0ae7b4d652759d59"
      ],
      "author": {
        "name": "Mouad Debbar",
        "email": "mdebbar@google.com",
        "time": "Fri Apr 10 16:41:12 2026 -0400"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 14:33:16 2026 -0700"
      },
      "message": "[web] Refactor LazyPath and separate immutable paths from path builders (#177686)\n\n- `CkPath`:\n    - An immutable Path backed by the immutable `SkPath`.\n    - Not exposed to Flutter.\n- `CkPathBuilder`:\n    - A path builder backed by `SkPathBuilder`.\n    - Not exposed to Flutter.\n- `SkwasmPath`:\n- Implements both the immutable path interface and the path builder\ninterface.\n    - Not exposed to Flutter.\n- `LazyPath`:\n    - The only implementation of the mutable `ui.Path` interface.\n    - Exposed to Flutter.\n- Manages the lifecycles of renderer-specific paths and path builders.\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/4b768c76a94c0996838dc2f24c8969a9fc34b7e6\n"
    },
    {
      "commit": "85329a901fcd7678ef1ba58c0ae7b4d652759d59",
      "tree": "5c0f3050082ed1fd6511f48442078ac7feef0a0d",
      "parents": [
        "f7e11b2c67e51113d70ce2568009843d80c60091"
      ],
      "author": {
        "name": "engine-flutter-autoroll",
        "email": "engine-flutter-autoroll@skia.org",
        "time": "Fri Apr 10 16:13:40 2026 -0400"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 14:10:21 2026 -0700"
      },
      "message": "Roll Skia from 25b01e5f4ea0 to 7c8b85349a9a (13 revisions) (#184887)\n\nhttps://skia.googlesource.com/skia.git/+log/25b01e5f4ea0..7c8b85349a9a\n\n2026-04-10 bungeman@google.com Better font request\n2026-04-10 bungeman@google.com Prefer IDWriteFontFace3 to Font and\nFamily\n2026-04-10 ccameron@chromium.org skhdr::AdaptiveGlobalToneMap: Fix OOB\nwrite\n2026-04-10 borenet@google.com [fiddler] Fix Docker build\n2026-04-10 arthursonzogni@chromium.org MiraclePtr: Enable PartitionAlloc\nin benchmark\n2026-04-10\nlouhi-prod-1-6316342352543744@louhi-prod-1.iam.gserviceaccount.com\nUpdate fiddler-base for 3c48577c7fb6\n2026-04-10 borenet@google.com [fiddle] Update fiddler-backend Dockerfile\n2026-04-10\nrecipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com\nRoll recipe dependencies (trivial).\n2026-04-10\nrecipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com\nRoll recipe dependencies (trivial).\n2026-04-10 skia-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE\nfrom 641c0d0e1bbd to 9015bc2851d8 (11 revisions)\n2026-04-10\nrecipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com\nRoll recipe dependencies (trivial).\n2026-04-10 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia\nInfra from ed695f1e8369 to e96d81a3b47e (6 revisions)\n2026-04-10 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Dawn\nfrom 4867e85a01c1 to cbeb98c08875 (12 revisions)\n\nIf this roll has caused a breakage, revert this CL and stop the roller\nusing the controls here:\nhttps://autoroll.skia.org/r/skia-flutter-autoroll\nPlease CC egdaniel@google.com,jimgraham@google.com,kjlubick@google.com\non the revert to ensure that a human\nis aware of the problem.\n\nTo file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry\nTo file a bug in Flutter:\nhttps://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\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/156699cc1464ba47a73ea3a17fb853b6cd5c3c93\n"
    },
    {
      "commit": "f7e11b2c67e51113d70ce2568009843d80c60091",
      "tree": "a3fb6c045330c5da3fdcfeea3cc82ea47ad4e9f9",
      "parents": [
        "b59bd37872e375a3cdd84d010a0f5512a0968498"
      ],
      "author": {
        "name": "Mahima Sharma",
        "email": "mahimasharma0309@gmail.com",
        "time": "Fri Apr 10 11:39:20 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 14:10:19 2026 -0700"
      },
      "message": "Reduce boilerplate in FlutterPlatformViewsTest.mm (#184555)\n\n## Summary\n\n- Extracts repeated view-hierarchy traversal\n(`FlutterTouchInterceptingView` lookup) and gesture recognizer search\n(`ForwardingGestureRecognizer` lookup) into two static helper functions:\n`FindTouchInterceptingView` and `FindForwardingGestureRecognizer`\n- Replaces 12 inline while-loop traversals and 7 inline for-loop gesture\nrecognizer searches across the test file\n- Removes 6 unnecessary type casts since the variable is now properly\ntyped as `FlutterTouchInterceptingView*`\n- Net reduction of ~68 lines with no changes to test logic or assertions\n\nFixes https://github.com/flutter/flutter/issues/184437\n\n## Pre-launch Checklist\n\n- [x] I read the [Contributor Guide] and followed the process outlined\nthere for submitting PRs.\n- [x] I read the [Tree Hygiene] wiki page, which explains my\nresponsibilities.\n- [x] I read and followed the [Flutter Style Guide].\n- [x] I listed at least one issue that this PR fixes in the description\nabove.\n- [x] I added a test for the change if applicable. _(This is a test-only\nrefactor — no new tests needed.)_\n\n[Contributor Guide]:\nhttps://github.com/flutter/flutter/blob/master/CONTRIBUTING.md\n[Tree Hygiene]:\nhttps://github.com/flutter/flutter/blob/master/docs/contributing/Tree-hygiene.md\n[Flutter Style Guide]:\nhttps://github.com/flutter/flutter/blob/master/docs/contributing/Style-guide-for-Flutter-repo.md\n\nCo-authored-by: LongCatIsLooong \u003c31859944+LongCatIsLooong@users.noreply.github.com\u003e\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/cad607330b17dcc9ee947793c1ec17a211dae232\n"
    },
    {
      "commit": "b59bd37872e375a3cdd84d010a0f5512a0968498",
      "tree": "d1527b082e2b6e592a304fd6db5dae2a8d5729f3",
      "parents": [
        "59bee013d552ba8b473e797f7199208f7a03ada5"
      ],
      "author": {
        "name": "Matej Knopp",
        "email": "matej.knopp@gmail.com",
        "time": "Fri Apr 10 20:08:51 2026 +0200"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 14:10:13 2026 -0700"
      },
      "message": "[macOS] Add move timer runloop mode to common modes (#182295)\n\nFixes https://github.com/flutter/flutter/issues/182294 by adding\n`_NSMoveTimerRunLoopMode` to common run loop modes. This ensures that\nFlutter messages are processed during sheet animation.\n\nThis PR avoids referencing `_NSMoveTimerRunLoopMode` in code directly to\navoid the possibility of being flagged an SPI. Instead it runs a very\nbrief (~10ms) hidden animation and then gets the run loop mode through\n`CFRunLoopCopyAllModes`.\n\n## Pre-launch Checklist\n\n- [x] I read the [Contributor Guide] and followed the process outlined\nthere for submitting PRs.\n- [x] I read the [Tree Hygiene] wiki page, which explains my\nresponsibilities.\n- [x] I read and followed the [Flutter Style Guide], including [Features\nwe expect every widget to implement].\n- [x] I signed the [CLA].\n- [x] I listed at least one issue that this PR fixes in the description\nabove.\n- [x] I updated/added relevant documentation (doc comments with `///`).\n- [x] I added new tests to check the change I am making, or this PR is\n[test-exempt].\n- [x] I followed the [breaking change policy] and added [Data Driven\nFixes] where supported.\n- [x] All existing and new tests are passing.\n\nIf you need help, consider asking for advice on the #hackers-new channel\non [Discord].\n\n**Note**: The Flutter team is currently trialing the use of [Gemini Code\nAssist for\nGitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).\nComments from the `gemini-code-assist` bot should not be taken as\nauthoritative feedback from the Flutter team. If you find its comments\nuseful you can update your code accordingly, but if you are unsure or\ndisagree with the feedback, please feel free to wait for a Flutter team\nmember\u0027s review for guidance on which automated comments should be\naddressed.\n\n\u003c!-- Links --\u003e\n[Contributor Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview\n[Tree Hygiene]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md\n[test-exempt]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests\n[Flutter Style Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md\n[Features we expect every widget to implement]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement\n[CLA]: https://cla.developers.google.com/\n[flutter/tests]: https://github.com/flutter/tests\n[breaking change policy]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes\n[Discord]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md\n[Data Driven Fixes]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/5ce705189829202734cf547288ba3c3031483953\n"
    },
    {
      "commit": "59bee013d552ba8b473e797f7199208f7a03ada5",
      "tree": "df2389402dc50273204f2ef49d1c78deed163d7c",
      "parents": [
        "67cc8de44deae0ac3fc1d752727da22fbbbbc57d"
      ],
      "author": {
        "name": "engine-flutter-autoroll",
        "email": "engine-flutter-autoroll@skia.org",
        "time": "Fri Apr 10 13:43:16 2026 -0400"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 14:10:11 2026 -0700"
      },
      "message": "Roll Packages from 1aa892c09c8b to c2e3d1f86b5b (5 revisions) (#184886)\n\nhttps://github.com/flutter/packages/compare/1aa892c09c8b...c2e3d1f86b5b\n\n2026-04-10 okorohelijah@google.com [google_maps_flutter_ios] Exclude\nfrom Xcode analysis until upstream warning is fixed\n(flutter/packages#11480)\n2026-04-09 engine-flutter-autoroll@skia.org Roll Flutter from\n05e0ae02600d to 81c87ea165df (27 revisions) (flutter/packages#11477)\n2026-04-09 me@davidmiguel.com [go_router] Fix chained top-level\nredirects not being fully resolved (flutter/packages#11108)\n2026-04-09 stuartmorgan@google.com [google_maps_flutter] Remove .static\nfrom Package.swift (flutter/packages#11392)\n2026-04-09 10687576+bparrishMines@users.noreply.github.com\n[webview_flutter_wkwebview] Updates plugin for iOS 26\n(flutter/packages#11415)\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-flutter-autoroll\nPlease CC flutter-ecosystem@google.com on the revert to ensure that a\nhuman\nis aware of the problem.\n\nTo file a bug in Flutter:\nhttps://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\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/c32d918875217134a5b488b2c8cc55c479a4288d\n"
    },
    {
      "commit": "67cc8de44deae0ac3fc1d752727da22fbbbbc57d",
      "tree": "c1a2fc6e8101eb1c955c7c26d4033929021f2a4b",
      "parents": [
        "0acee037a9597c337721ee4475f0afa72c168ee5"
      ],
      "author": {
        "name": "Matej Knopp",
        "email": "matej.knopp@gmail.com",
        "time": "Fri Apr 10 19:41:04 2026 +0200"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 14:10:09 2026 -0700"
      },
      "message": "Win32: Prevent mouse leave on WM_SYSKEYUP. (#184835)\n\nFixes https://github.com/flutter/flutter/issues/184462\n\n## Pre-launch Checklist\n\n- [x] I read the [Contributor Guide] and followed the process outlined\nthere for submitting PRs.\n- [x] I read the [AI contribution guidelines] and understand my\nresponsibilities, or I am not using AI tools.\n- [x] I read the [Tree Hygiene] wiki page, which explains my\nresponsibilities.\n- [x] I read and followed the [Flutter Style Guide], including [Features\nwe expect every widget to implement].\n- [x] I signed the [CLA].\n- [x] I listed at least one issue that this PR fixes in the description\nabove.\n- [x] I updated/added relevant documentation (doc comments with `///`).\n- [x] I added new tests to check the change I am making, or this PR is\n[test-exempt].\n- [x] I followed the [breaking change policy] and added [Data Driven\nFixes] where supported.\n- [x] All existing and new tests are passing.\n\nIf you need help, consider asking for advice on the #hackers-new channel\non [Discord].\n\nIf this change needs to override an active code freeze, provide a\ncomment explaining why. The code freeze workflow can be overridden by\ncode reviewers. See pinned issues for any active code freezes with\nguidance.\n\n**Note**: The Flutter team is currently trialing the use of [Gemini Code\nAssist for\nGitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).\nComments from the `gemini-code-assist` bot should not be taken as\nauthoritative feedback from the Flutter team. If you find its comments\nuseful you can update your code accordingly, but if you are unsure or\ndisagree with the feedback, please feel free to wait for a Flutter team\nmember\u0027s review for guidance on which automated comments should be\naddressed.\n\n\u003c!-- Links --\u003e\n[Contributor Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview\n[AI contribution guidelines]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#ai-contribution-guidelines\n[Tree Hygiene]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md\n[test-exempt]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests\n[Flutter Style Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md\n[Features we expect every widget to implement]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement\n[CLA]: https://cla.developers.google.com/\n[flutter/tests]: https://github.com/flutter/tests\n[breaking change policy]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes\n[Discord]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md\n[Data Driven Fixes]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/6b7a9abd4f1ca88a57426b2032411cf16bd853d7\n"
    },
    {
      "commit": "0acee037a9597c337721ee4475f0afa72c168ee5",
      "tree": "5c7dd30978f70481c9af98ad9c0608bff42001cb",
      "parents": [
        "a85f6c59f91cf2e572a5fdf2780b2621333dc51a"
      ],
      "author": {
        "name": "Konstantin Shcheglov",
        "email": "scheglov@google.com",
        "time": "Fri Apr 10 13:44:00 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 13:46:05 2026 -0700"
      },
      "message": "CQ. Rename AnalysisOptionsFile to AnalysisOptionsFileKeys.\n\nI\u0027d like to free this name for `AnalysisOptionsFile` data object.\n\nChange-Id: Ie553ef30e9bef1e312e398248d66550ed289018c\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/494567\nReviewed-by: Samuel Rawlins \u003csrawlins@google.com\u003e\nCommit-Queue: Konstantin Shcheglov \u003cscheglov@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/c6135cbeef51ade041a9336e68e9232b6e6900b6\n"
    },
    {
      "commit": "a85f6c59f91cf2e572a5fdf2780b2621333dc51a",
      "tree": "9aeca9b57d011ebb4a3b082dc684e09634c18adc",
      "parents": [
        "2cbaac452a99bcb04b6d2b9c22bf1a9ce40827ce"
      ],
      "author": {
        "name": "Brian Wilkerson",
        "email": "brianwilkerson@google.com",
        "time": "Fri Apr 10 13:04:19 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 13:07:33 2026 -0700"
      },
      "message": "Update the removeConstructorName fix to handle primary constructors\n\nCloses https://github.com/dart-lang/sdk/issues/63072\n\nChange-Id: I3391484a2693b0ec9f520353ac231ee0d9a60c7c\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/494623\nReviewed-by: Samuel Rawlins \u003csrawlins@google.com\u003e\nCommit-Queue: Brian Wilkerson \u003cbrianwilkerson@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/f62d10f40cd53a6184d36bf8cfb3ea4d352b8812\n"
    },
    {
      "commit": "2cbaac452a99bcb04b6d2b9c22bf1a9ce40827ce",
      "tree": "e711534e483eaf15c63c4ec9d184c968d3600035",
      "parents": [
        "99478b34810c8439730cb26bc619c15b7c899936"
      ],
      "author": {
        "name": "Brian Wilkerson",
        "email": "brianwilkerson@google.com",
        "time": "Fri Apr 10 12:39:50 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 12:41:52 2026 -0700"
      },
      "message": "Test that the makeRequiredNamedParametersFirst fix works with declaring parameters\n\nCloses https://github.com/dart-lang/sdk/issues/63069\n\nChange-Id: I589bfb659a4b96d7a2f029bb2dfd2e2b1ea7b9e5\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/494565\nCommit-Queue: Brian Wilkerson \u003cbrianwilkerson@google.com\u003e\nReviewed-by: Samuel Rawlins \u003csrawlins@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/0488d33502b6a43a6ae0621dc48d760c149e2b45\n"
    },
    {
      "commit": "99478b34810c8439730cb26bc619c15b7c899936",
      "tree": "1ab1a7c98258f8ed6da084fb410e77b16ec5ac91",
      "parents": [
        "f1ad1c6b539ca6856ac6ce833f8da5e70ff1f2c0"
      ],
      "author": {
        "name": "Brian Wilkerson",
        "email": "brianwilkerson@google.com",
        "time": "Fri Apr 10 12:13:34 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 12:15:43 2026 -0700"
      },
      "message": "Test that the convertToGenericFunctionSyntax fix works with primary constructors\n\nCloses https://github.com/dart-lang/sdk/issues/63044\n\nChange-Id: Ia1aefa1f93a30efa7c9f2f9c4d65664fb9ceb9ea\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/494621\nCommit-Queue: Brian Wilkerson \u003cbrianwilkerson@google.com\u003e\nReviewed-by: Samuel Rawlins \u003csrawlins@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/0e570aacd6ec176cb68f48df264293ddc959af38\n"
    },
    {
      "commit": "f1ad1c6b539ca6856ac6ce833f8da5e70ff1f2c0",
      "tree": "a6fe1f5ac3829da917faec3ed56e338181fa9b89",
      "parents": [
        "2b1b2269d67085686dde296e9c43c1e47299f85a"
      ],
      "author": {
        "name": "Ben Konyi",
        "email": "bkonyi@google.com",
        "time": "Fri Apr 10 12:04:28 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 12:06:12 2026 -0700"
      },
      "message": "[ Service ] Cleanup dart_runtime_service* logging and DDS state\n\nA few minor changes:\n\n - Log output is now written to stderr.\n - `Service.controlWebServer`\u0027s `silenceOutput` parameter is now\n   respected, along with the `SILENT_OBSERVATORY`, `SILENT_VM_SERVICE`,\n   and `SILENT_SERVICE` Dart defines.\n - DDS launcher state is cleaned up if the service server is shutdown\n   via SIGQUIT.\n\nChange-Id: I0e3e271905ad6bc111151bac086fe7661c23d578\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/491280\nReviewed-by: Jessy Yameogo \u003cyjessy@google.com\u003e\nReviewed-by: Nicholas Shahan \u003cnshahan@google.com\u003e\nCommit-Queue: Ben Konyi \u003cbkonyi@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/5bb13f17886966d045a42b485a8696509b84b878\n"
    },
    {
      "commit": "2b1b2269d67085686dde296e9c43c1e47299f85a",
      "tree": "e9a263b67801b34fba1f58aa045bd418918561c2",
      "parents": [
        "1cd80af22d65d4b62a251f004d99b38b3bd94394"
      ],
      "author": {
        "name": "Ben Konyi",
        "email": "bkonyi@google.com",
        "time": "Fri Apr 10 12:04:28 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 12:06:09 2026 -0700"
      },
      "message": "[ Service ] Fix various tests for package:dart_runtime_service_vm\n\n- Fixes issue where `streamListen(streamId: \u0027foo\u0027)` didn\u0027t result in an\n  error when DDS was not present.\n- Adds stub for the deprecated `streamCpuSamplesWithUserTag`\n\nChange-Id: Ic18c2b24a103347eee60ee803a873f747dbfee7a\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/491200\nReviewed-by: Nicholas Shahan \u003cnshahan@google.com\u003e\nReviewed-by: Jessy Yameogo \u003cyjessy@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/a00e7d39dcc4cf0f194676bf507786c84d99e7af\n"
    },
    {
      "commit": "1cd80af22d65d4b62a251f004d99b38b3bd94394",
      "tree": "2a846964f39042f38076641273e8859aaf983208",
      "parents": [
        "c992fee0323e99ad854f634d722d73f274bb2e51"
      ],
      "author": {
        "name": "Ben Konyi",
        "email": "bkonyi@google.com",
        "time": "Fri Apr 10 12:04:28 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 12:06:07 2026 -0700"
      },
      "message": "[ Service ] Add support for ID zones to package:dart_runtime_service_vm\n\nAlso disables logging by default, which can be enabled by specifying the\n`VM_SERVICE_LOGGING` environment variable.\n\npackage:vm_service test suite is ~99% passing with this change.\nChange-Id: I41578cc8b39afac93589b8792861be34b848f558\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/490921\nReviewed-by: Jessy Yameogo \u003cyjessy@google.com\u003e\nReviewed-by: Nicholas Shahan \u003cnshahan@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/d2d28414ef769b60b538577aeb707f3c40de9f4c\n"
    },
    {
      "commit": "c992fee0323e99ad854f634d722d73f274bb2e51",
      "tree": "d8c7c295f24f5d3cba0efa93b95a802e6250bf52",
      "parents": [
        "27e9bdf1bd6411b80619511c124b773270bd8bc0"
      ],
      "author": {
        "name": "Ben Konyi",
        "email": "bkonyi@google.com",
        "time": "Fri Apr 10 12:04:28 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 12:06:05 2026 -0700"
      },
      "message": "[ Service ] Add support for binary events in package:dart_runtime_service_vm\n\npackage:vm_service test suite is ~98% passing with this change.\nChange-Id: I7455eb6414ac6a9f28408613543d18be7940bbb4\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/490600\nReviewed-by: Jessy Yameogo \u003cyjessy@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/cb72e886d531f802dbd9a77834f7adff828758ce\n"
    },
    {
      "commit": "27e9bdf1bd6411b80619511c124b773270bd8bc0",
      "tree": "fb3e0713d3a2c92b8f2eb73d9091fff61866b8cd",
      "parents": [
        "7a988e43b0df6ebc05266041689632513094b436"
      ],
      "author": {
        "name": "Ben Konyi",
        "email": "bkonyi@google.com",
        "time": "Fri Apr 10 12:04:28 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 12:06:03 2026 -0700"
      },
      "message": "[ Service ] Add support for DDS to package:dart_runtime_service_vm\n\nThe DartRuntimeService based VM service implementation now has support\nfor launching DDS instances and responding to _yieldControlToDDS RPC\ninvocations from DDS instances.\n\npackage:vm_service test suite is ~97% passing with this change.\n\nTEST\u003dLocal testing.\nChange-Id: I2f2f1b0926845134578f08d073ed7606f1fc4173\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/490320\nReviewed-by: Jessy Yameogo \u003cyjessy@google.com\u003e\nReviewed-by: Nicholas Shahan \u003cnshahan@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/ae1b83869aafb7a85d2216ec47c02b85096ccc9d\n"
    },
    {
      "commit": "7a988e43b0df6ebc05266041689632513094b436",
      "tree": "4d7dc25703aafb264e876c9d97c0a5a5ca2e27c6",
      "parents": [
        "917c9701c2b2022223c3ed9ebf1f90f75949202d"
      ],
      "author": {
        "name": "trizin",
        "email": "25263018+trizin@users.noreply.github.com",
        "time": "Fri Apr 10 19:36:18 2026 +0200"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 11:29:06 2026 -0700"
      },
      "message": "[flutter_tools] Fix arm64e incorrectly matching arm64 in regex check (#184057)\n\nFixes https://github.com/flutter/flutter/issues/184056\n\nThe regex `EXCLUDED_ARCHS.*arm64` in `pluginsSupportArmSimulator()`\nmatches\n`arm64e` as a substring, causing Flutter to incorrectly exclude arm64\nfrom\nsimulator builds when plugins only exclude arm64e.\n\nThis adds a word boundary (\\\\barm64\\\\b) so that arm64e is no longer a\nfalse\npositive match, fixing simulator builds on Apple Silicon Macs.\n\nAlso strengthens the existing test assertion to verify arm64 is NOT\nadded\nto EXCLUDED_ARCHS when only arm64e is excluded by plugins.\n\n## Pre-launch Checklist\n\n- [x] I read the [Contributor Guide] and followed the process outlined\nthere for submitting PRs.\n- [x] I read the [AI contribution guidelines] and understand my\nresponsibilities, or I am not using AI tools.\n- [x] I read the [Tree Hygiene] wiki page, which explains my\nresponsibilities.\n- [x] I read and followed the [Flutter Style Guide], including [Features\nwe expect every widget to implement].\n- [x] I signed the [CLA].\n- [x] I listed at least one issue that this PR fixes in the description\nabove.\n- [x] I updated/added relevant documentation (doc comments with `///`).\n- [x] I added new tests to check the change I am making, or this PR is\n[test-exempt].\n- [x] I followed the [breaking change policy] and added [Data Driven\nFixes] where supported.\n- [x] All existing and new tests are passing.\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/bf18e3958a05cd8cc098d4bfcbe9163d596cf3af\n"
    },
    {
      "commit": "917c9701c2b2022223c3ed9ebf1f90f75949202d",
      "tree": "be8a1fe1655ccb825e145721a55166350d3ebedc",
      "parents": [
        "85f48cbd8e74365f0506027ef058bac85d468cd8"
      ],
      "author": {
        "name": "Brian Wilkerson",
        "email": "brianwilkerson@google.com",
        "time": "Fri Apr 10 11:19:58 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 11:21:46 2026 -0700"
      },
      "message": "Introduce a way to ignore diagnostics in documentation snippets\n\nThe class `VerifyDiagnosticsTest` is used to verify the correctness of\nthe values of the `documentation` keys in the `messages.yaml` files. As\na part of that, it verifies that the code snippets in the documentation\nfollow the rule that\n\n- \"Example\" snippets generate one instance of the documented diagnostic\n  and no other diagnostics\n\n- \"Common fixed\" snippets generate no diagnostics.\n\nSnippets that fail to meet that criteria are not verified because\nchecking for them has been disabled. A common reason for failing to\nmeet the criteria is the production of one or more other diagnostics,\ntypically due to overreporting.\n\nNot verifying them has some drawbacks.\n\n- It\u0027s on an all-or-nothing basis; if a diagnostic is ignored all\n  snippets will be ignored even if only one snippet fails to follow the\n  rule.\n\n- There\u0027s no indication if new diagnostics start being generated for\n  the snippet.\n\n- There\u0027s no indication when the overreporting is fixed so that the\n  snippets can now be verified.\n\nI propose we add a way to list the additional diagnostics to ignore and\nremove these cases from the excluded diagnostics list. Specifically, I\nwant to add a new directive (in the test\u0027s sense, not in the language\u0027s\nsense of that term) containing a list of expected other diagnostics.\n\nI considered using an ignore comment, but errors can\u0027t be ignored this\nway and sometimes the diagnostics that need to be ignored are errors.\n\nThis CL implements the proposal and removes one diagnostic from the\nlist as a sample of how this support will be used. If this approach\nis adopted, other diagnostics can be removed from the list and the\nsnippets can be updated accordingly in one or more follow-on CLs.\n\nThis will _not_ remove the need for the list of ignored diagnostics\nbecause that list has other use cases. However, I do think that we\nshould try to find solutions for those other use cases and eventually\nremove the list entirely if possible.\n\nChange-Id: I52b6b738e41b2163843caf915a6c0fe7f461ec44\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/494620\nReviewed-by: Paul Berry \u003cpaulberry@google.com\u003e\nCommit-Queue: Brian Wilkerson \u003cbrianwilkerson@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/bee0b56db8e5513cf1c9003d92863fd27d5f8de3\n"
    },
    {
      "commit": "85f48cbd8e74365f0506027ef058bac85d468cd8",
      "tree": "fb6e29f7a87142e0fc7a5f48ef0a85aac7520b3d",
      "parents": [
        "d11058e6bffd45b5ab7050c5422b4954b8c4dc90"
      ],
      "author": {
        "name": "Sam Rawlins",
        "email": "srawlins@google.com",
        "time": "Fri Apr 10 10:28:42 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 10:30:32 2026 -0700"
      },
      "message": "linter: avoid_final_parameters: avoid duplicate reporting\n\nThe lint rule was sometimes reported in the same positions as the\nwarning.\n\nIn \u0027remove_lexeme_test\u0027, there were tests for removing `final` in the\nlint rule case, which just needed to be moved to testing removing\n`final` in the warning case. Otherwise the test cases are unchanged.\n\nChange-Id: I3f600b9bc7846069e793e0902dcb2456e7106ab6\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/494163\nReviewed-by: Keerti Parthasarathy \u003ckeertip@google.com\u003e\nCommit-Queue: Samuel Rawlins \u003csrawlins@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/f811111f8075e62570c09d3859094046ccdaf6e3\n"
    },
    {
      "commit": "d11058e6bffd45b5ab7050c5422b4954b8c4dc90",
      "tree": "4eb0966dbd3804cb1f5ae9dfa43232d95a5d5213",
      "parents": [
        "8e084965e7ce6ed836ba884da39acf734d3577f9"
      ],
      "author": {
        "name": "Jackson Gardner",
        "email": "jacksongardner@google.com",
        "time": "Fri Apr 10 09:38:15 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 10:30:30 2026 -0700"
      },
      "message": "Specify GitHub Repo in GH CLI calls for revert workflow. (#184878)\n\nSome of the GitHub CLI calls (such as the ones that looks for the\n\"Reason for revert:\" comments) happen before we have actually checked\nout the repo. As a result, we need to pass the repository explicitly to\nthe GitHub CLI.\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/b7165406fbc387d96d8e691b83b0fa219d5f7e92\n"
    },
    {
      "commit": "8e084965e7ce6ed836ba884da39acf734d3577f9",
      "tree": "c71459a9f0b8e10f4a18ab77479eb96d9cd311c7",
      "parents": [
        "487ad4f7cfc7061f3951b4b5f6600bf834cbc695"
      ],
      "author": {
        "name": "Jackson Gardner",
        "email": "jacksongardner@google.com",
        "time": "Fri Apr 10 09:35:34 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 10:27:11 2026 -0700"
      },
      "message": "Don\u0027t use `git add -N` in the sync engine workflow. (#184882)\n\nThe `-N` flag doesn\u0027t actually stage the file if it doesn\u0027t exist yet.\nThis was causing this workflow to fail on initial betas, where the\nengine.version file wasn\u0027t tracked.\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/c2627e837acc2c59ae9d6f9cdf2aa982326e3de2\n"
    },
    {
      "commit": "487ad4f7cfc7061f3951b4b5f6600bf834cbc695",
      "tree": "bca2e3bd96fc00a07104ec176640f9ec0d829535",
      "parents": [
        "bd3276cbce4cff5616943b00dc7a6a586d296a77"
      ],
      "author": {
        "name": "Sam Rawlins",
        "email": "srawlins@google.com",
        "time": "Fri Apr 10 10:21:01 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 10:23:40 2026 -0700"
      },
      "message": "linter: avoid_renaming_method_parameters: Test missing cases\n\nChange-Id: If33b8ddf8a6f4d264290bab61a77f835c0018785\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/494561\nCommit-Queue: Samuel Rawlins \u003csrawlins@google.com\u003e\nReviewed-by: Keerti Parthasarathy \u003ckeertip@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/648ebc8246d84c9d19627196c8c5169f8b5b953b\n"
    },
    {
      "commit": "bd3276cbce4cff5616943b00dc7a6a586d296a77",
      "tree": "03a2449605bb0d9513081c704ca0b4270ccda9eb",
      "parents": [
        "6d37065449fc250218d5e3906605baacf0578bfe"
      ],
      "author": {
        "name": "Sam Rawlins",
        "email": "srawlins@google.com",
        "time": "Fri Apr 10 10:20:39 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 10:23:38 2026 -0700"
      },
      "message": "linter: unnecessary_null_checks: do not report on promotable expressions\n\nFixes https://github.com/dart-lang/sdk/issues/58379\n\nWe just stop reporting on any null-assert assignments where the left side is promotable.\n\nWe make it configurable, as the `null_check_on_nullable_type_parameters` rule uses the same utility, and that rule is not reporting the idea of null-checking; it is reporting the _way_ of null-checking (should be casting instead).\n\nChange-Id: I79b67dcf01ec8659a872210ede001b1f378537f4\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/494560\nCommit-Queue: Samuel Rawlins \u003csrawlins@google.com\u003e\nReviewed-by: Brian Wilkerson \u003cbrianwilkerson@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/08cfb04bfc2354ece544f123601704ab2c2d63e1\n"
    },
    {
      "commit": "6d37065449fc250218d5e3906605baacf0578bfe",
      "tree": "7947f4707fe924b67d31dbc51eb00a811d620058",
      "parents": [
        "9533a46f17cb40cd466f64385591679592711256"
      ],
      "author": {
        "name": "engine-flutter-autoroll",
        "email": "engine-flutter-autoroll@skia.org",
        "time": "Fri Apr 10 12:04:16 2026 -0400"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 10:05:15 2026 -0700"
      },
      "message": "Roll Skia from af67d5555e35 to 25b01e5f4ea0 (14 revisions) (#184865)\n\nhttps://skia.googlesource.com/skia.git/+log/af67d5555e35..25b01e5f4ea0\n\n2026-04-10 skia-autoroll@skia-public.iam.gserviceaccount.com Roll\nvulkan-deps from 1c9ab5c20bf7 to fc3031169f9f (13 revisions)\n2026-04-09 thomsmit@google.com [graphite] Change to Pilot draw system\n2026-04-09 alexisdavidc@google.com Improve readability of\nSkScan_Hairline\n2026-04-09\nrecipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com\nRoll recipe dependencies (trivial).\n2026-04-09 egdaniel@google.com Revert \"Reland \"[skparagraph] Render\nvisible hyphen at soft hyphen (U+00AD) line breaks\"\"\n2026-04-09\nrecipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com\nRoll recipe dependencies (trivial).\n2026-04-09 dbebawy@gmail.com Reland \"[skparagraph] Render visible hyphen\nat soft hyphen (U+00AD) line breaks\"\n2026-04-09 thomsmit@google.com [graphite] sample sdf lcd text atlases at\nf32\n2026-04-09 michaelludwig@google.com [graphite] Simplify VulkanCaps\nformat table initialization\n2026-04-09 nscobie@google.com Expose bitwise operators for\nskgpu::GpuStatsFlags enum in public API\n2026-04-09 kjlubick@google.com Fix compilation of d3d backend w/o\nGPU_TEST_UTILS\n2026-04-09 nicolettep@google.com [graphite] Add time-limited resource\ncache purge test\n2026-04-09 alexisdavidc@google.com Fix SkScan_Hairline cap and close\nhandling\n2026-04-09 skia-autoroll@skia-public.iam.gserviceaccount.com Roll\nvulkan-deps from eba20b140bce to 1c9ab5c20bf7 (2 revisions)\n\nIf this roll has caused a breakage, revert this CL and stop the roller\nusing the controls here:\nhttps://autoroll.skia.org/r/skia-flutter-autoroll\nPlease CC egdaniel@google.com,jimgraham@google.com,kjlubick@google.com\non the revert to ensure that a human\nis aware of the problem.\n\nTo file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry\nTo file a bug in Flutter:\nhttps://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\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/f417bcba3c36c92fc70baeee4fce954e455d1359\n"
    },
    {
      "commit": "9533a46f17cb40cd466f64385591679592711256",
      "tree": "4f3cca19ac9f574e9a62618440d1c923f268a574",
      "parents": [
        "053c17a46958efbca2f4aa97cf7ce4754acc51ab"
      ],
      "author": {
        "name": "Jonas Finnemann Jensen",
        "email": "jonasfj@google.com",
        "time": "Fri Apr 10 09:53:29 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 09:54:32 2026 -0700"
      },
      "message": "Format frontend_server_client\n\nChange-Id: Ibfdf6a7afedaf9e1486624a85e7d04437db13e49\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/494460\nReviewed-by: Nicholas Shahan \u003cnshahan@google.com\u003e\nCommit-Queue: Nicholas Shahan \u003cnshahan@google.com\u003e\nAuto-Submit: Jonas Jensen \u003cjonasfj@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/8ffc0dddd0a5a21fc6a1b8d22aba0b803cbb066b\n"
    },
    {
      "commit": "053c17a46958efbca2f4aa97cf7ce4754acc51ab",
      "tree": "24b333d78241087b5aafeffd16e0f85e51249956",
      "parents": [
        "4f95d2415a6621c25d1baa17bdb9f4f10a68afe7"
      ],
      "author": {
        "name": "Loïc Sharma",
        "email": "737941+loic-sharma@users.noreply.github.com",
        "time": "Fri Apr 10 09:02:24 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 09:54:29 2026 -0700"
      },
      "message": "[Dot shorthands] Finish examples/api migration (#183967)\n\nMigrates code in `examples/api` to use dot shorthands.\n\nPart of: https://github.com/flutter/flutter/issues/175965\nSee also: [Dot shorthands style\nguide](https://github.com/flutter/flutter/blob/master/docs/contributing/Style-guide-for-Flutter-repo.md#use-dot-shorthands-to-reduce-redundant-information)\n\nStacked pull requests:\n* https://github.com/flutter/flutter/pull/183963\n* https://github.com/flutter/flutter/pull/183964\n* https://github.com/flutter/flutter/pull/183965\n* https://github.com/flutter/flutter/pull/183966\n* https://github.com/flutter/flutter/pull/183967\n\n## Pre-launch Checklist\n\n- [x] I read the [Contributor Guide] and followed the process outlined\nthere for submitting PRs.\n- [x] I read the [AI contribution guidelines] and understand my\nresponsibilities, or I am not using AI tools.\n- [x] I read the [Tree Hygiene] wiki page, which explains my\nresponsibilities.\n- [x] I read and followed the [Flutter Style Guide], including [Features\nwe expect every widget to implement].\n- [x] I signed the [CLA].\n- [x] I listed at least one issue that this PR fixes in the description\nabove.\n- [x] I updated/added relevant documentation (doc comments with `///`).\n- [x] I added new tests to check the change I am making, or this PR is\n[test-exempt].\n- [x] I followed the [breaking change policy] and added [Data Driven\nFixes] where supported.\n- [x] All existing and new tests are passing.\n\nIf you need help, consider asking for advice on the #hackers-new channel\non [Discord].\n\n**Note**: The Flutter team is currently trialing the use of [Gemini Code\nAssist for\nGitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).\nComments from the `gemini-code-assist` bot should not be taken as\nauthoritative feedback from the Flutter team. If you find its comments\nuseful you can update your code accordingly, but if you are unsure or\ndisagree with the feedback, please feel free to wait for a Flutter team\nmember\u0027s review for guidance on which automated comments should be\naddressed.\n\n\u003c!-- Links --\u003e\n[Contributor Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview\n[AI contribution guidelines]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#ai-contribution-guidelines\n[Tree Hygiene]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md\n[test-exempt]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests\n[Flutter Style Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md\n[Features we expect every widget to implement]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement\n[CLA]: https://cla.developers.google.com/\n[flutter/tests]: https://github.com/flutter/tests\n[breaking change policy]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes\n[Discord]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md\n[Data Driven Fixes]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/3d70045c6ae6c9df0ee9cec4fab707821078191b\n"
    },
    {
      "commit": "4f95d2415a6621c25d1baa17bdb9f4f10a68afe7",
      "tree": "15220e46ab01d7356f88ec4267edbda949e80426",
      "parents": [
        "65ae9e5cd5a6f9802548032ab64ea26170829b4e"
      ],
      "author": {
        "name": "engine-flutter-autoroll",
        "email": "engine-flutter-autoroll@skia.org",
        "time": "Fri Apr 10 11:58:37 2026 -0400"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 09:54:27 2026 -0700"
      },
      "message": "Roll Dart SDK from 98a143f8873e to e715805ddbd3 (1 revision) (#184864)\n\nhttps://dart.googlesource.com/sdk.git/+log/98a143f8873e..e715805ddbd3\n\n2026-04-09 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com\nVersion 3.13.0-5.0.dev\n\nIf this roll has caused a breakage, revert this CL and stop the roller\nusing the controls here:\nhttps://autoroll.skia.org/r/dart-sdk-flutter\nPlease CC dart-vm-team@google.com,jimgraham@google.com on the revert to\nensure that a human\nis aware of the problem.\n\nTo file a bug in Flutter:\nhttps://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\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/0fe62a57bbac867cdeb151e265d4d2c8b3dba5be\n"
    },
    {
      "commit": "65ae9e5cd5a6f9802548032ab64ea26170829b4e",
      "tree": "5edaa3268c0858400b990908591dd6127473b7fc",
      "parents": [
        "58b6c75b35fd1e7013ae60e32981e2ba73553159"
      ],
      "author": {
        "name": "Srujan Gaddam",
        "email": "srujzs@google.com",
        "time": "Fri Apr 10 09:24:12 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 09:25:45 2026 -0700"
      },
      "message": "Update Chrome to 148.0.7778.5\n\nAlso updates a few tests due to changes in how createEvent\ncan be used. That browser API has been deprecated for a long\ntime, but only recently did Chrome remove support for\nPopStateEvent through that API. So, instead to retain the\noriginal intent of the test, confuses are added after\nconstructing the event to check that type tests work correctly.\n\nA few other tests are modified to remove code that depends on\ncreateEvent, either through eventType or supported members.\n\nSee the Chrome bug for more details on the removal:\nhttps://issues.chromium.org/issues/41228793#comment38\n\nChange-Id: Id55a215583221de3ccdbbeff16a2e17e9e35fb0b\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/494160\nReviewed-by: Nicholas Shahan \u003cnshahan@google.com\u003e\nCommit-Queue: Nicholas Shahan \u003cnshahan@google.com\u003e\nAuto-Submit: Srujan Gaddam \u003csrujzs@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/ef6054d688258269a239033c81092e29e4ecc2db\n"
    },
    {
      "commit": "58b6c75b35fd1e7013ae60e32981e2ba73553159",
      "tree": "acda5bbe253d3cfcb0af18e3dfad012a4b99d665",
      "parents": [
        "3137dde3823e9cb53b21dbf5aab89031f94ad0de"
      ],
      "author": {
        "name": "Lasse R.H. Nielsen",
        "email": "lrn@google.com",
        "time": "Fri Apr 10 09:09:39 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 09:13:21 2026 -0700"
      },
      "message": "Remove `var` and `final` from parameters in `pkg/`.\n\nDoesn\u0027t change anything in `front_end/*testcases/primary_constructors/`.\n(Would have skipped any other file with `test` in its path and\nan explicit language version marker, but there weren\u0027t any outside\nof those `front_end` directories).\n\nAlmost no files used as test input were affected, and none testing the actual syntax changed.\nThe `.../nnbd/required_2.dart` test case was split into a legacy version retaining the `var`/`final` with a language marker, and a new version without the `var`/`final` cases.\n\nThe `pkg/analyzer/` tests, and any other tests that have source code\nin strings, are not migrated by this CL.\n\nTested: No change to behavior. One test split into legacy and new.\nChange-Id: I7f5aa4cc98001a9adecacd106c0b3be14f96be1c\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/480542\nReviewed-by: Johnni Winther \u003cjohnniwinther@google.com\u003e\nReviewed-by: Nate Bosch \u003cnbosch@google.com\u003e\nReviewed-by: Ryan Macnak \u003crmacnak@google.com\u003e\nCommit-Queue: Lasse Nielsen \u003clrn@google.com\u003e\nReviewed-by: Nicholas Shahan \u003cnshahan@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/711e50389fb39ac94397814139d8c68ec2ad2915\n"
    },
    {
      "commit": "3137dde3823e9cb53b21dbf5aab89031f94ad0de",
      "tree": "7f4d6c95a749fdf52a16eccdaffa017d0f6d6814",
      "parents": [
        "a32d09bf705b1a525ba6686ef7aeac665bc6f3e6"
      ],
      "author": {
        "name": "Danny Tuppeny",
        "email": "danny@tuppeny.com",
        "time": "Fri Apr 10 09:05:11 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 09:07:56 2026 -0700"
      },
      "message": "[analysis_server] In \"Encapsulate Field\", update references to renamed parameters in initializers\n\nFixes https://github.com/dart-lang/sdk/issues/63145\n\nChange-Id: I6dd672e5ae189a023419d2c41157fa7cdc43e46b\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/494141\nReviewed-by: Brian Wilkerson \u003cbrianwilkerson@google.com\u003e\nReviewed-by: Keerti Parthasarathy \u003ckeertip@google.com\u003e\nCommit-Queue: Keerti Parthasarathy \u003ckeertip@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/4b01d6b8035883f218cd6f2674b5491d011cefc3\n"
    },
    {
      "commit": "a32d09bf705b1a525ba6686ef7aeac665bc6f3e6",
      "tree": "3efe583c80ffb9473cf8466e69a67b8d8a232f9f",
      "parents": [
        "7467616e1f8de419d8f659fd971b6925422495b9"
      ],
      "author": {
        "name": "auto-submit[bot]",
        "email": "98614782+auto-submit[bot]@users.noreply.github.com",
        "time": "Fri Apr 10 14:50:22 2026 +0000"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 08:36:29 2026 -0700"
      },
      "message": "Reverts \"Disable async mode with LLDB (#184768)\" (#184868)\n\n\u003c!-- start_original_pr_link --\u003e\nReverts: flutter/flutter#184768\n\u003c!-- end_original_pr_link --\u003e\n\u003c!-- start_initiating_author --\u003e\nInitiated by: flar\n\u003c!-- end_initiating_author --\u003e\n\u003c!-- start_revert_reason --\u003e\nReason for reverting: https://github.com/flutter/flutter/issues/184867\n\u003c!-- end_revert_reason --\u003e\n\u003c!-- start_original_pr_author --\u003e\nOriginal PR Author: vashworth\n\u003c!-- end_original_pr_author --\u003e\n\n\u003c!-- start_reviewers --\u003e\nReviewed By: {hellohuanlin}\n\u003c!-- end_reviewers --\u003e\n\n\u003c!-- start_revert_body --\u003e\nThis change reverts the following previous change:\n@mraleph proposed a [better\nfix](https://github.com/flutter/flutter/issues/184254#issuecomment-4206802327)\nfor the LLDB Xcode 26.4 breakage and I confirmed that it works.\n\nThis PR reverts the first fix and adopts the new one, which is to set\nLLDB to not use async mode.\n\nFor https://github.com/flutter/flutter/issues/184254.\n\n## Pre-launch Checklist\n\n- [x] I read the [Contributor Guide] and followed the process outlined\nthere for submitting PRs.\n- [x] I read the [AI contribution guidelines] and understand my\nresponsibilities, or I am not using AI tools.\n- [x] I read the [Tree Hygiene] wiki page, which explains my\nresponsibilities.\n- [x] I read and followed the [Flutter Style Guide], including [Features\nwe expect every widget to implement].\n- [x] I signed the [CLA].\n- [x] I listed at least one issue that this PR fixes in the description\nabove.\n- [x] I updated/added relevant documentation (doc comments with `///`).\n- [x] I added new tests to check the change I am making, or this PR is\n[test-exempt].\n- [x] I followed the [breaking change policy] and added [Data Driven\nFixes] where supported.\n- [x] All existing and new tests are passing.\n\nIf you need help, consider asking for advice on the #hackers-new channel\non [Discord].\n\nIf this change needs to override an active code freeze, provide a\ncomment explaining why. The code freeze workflow can be overridden by\ncode reviewers. See pinned issues for any active code freezes with\nguidance.\n\n**Note**: The Flutter team is currently trialing the use of [Gemini Code\nAssist for\nGitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).\nComments from the `gemini-code-assist` bot should not be taken as\nauthoritative feedback from the Flutter team. If you find its comments\nuseful you can update your code accordingly, but if you are unsure or\ndisagree with the feedback, please feel free to wait for a Flutter team\nmember\u0027s review for guidance on which automated comments should be\naddressed.\n\n\u003c!-- Links --\u003e\n[Contributor Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview\n[AI contribution guidelines]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#ai-contribution-guidelines\n[Tree Hygiene]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md\n[test-exempt]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests\n[Flutter Style Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md\n[Features we expect every widget to implement]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement\n[CLA]: https://cla.developers.google.com/\n[flutter/tests]: https://github.com/flutter/tests\n[breaking change policy]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes\n[Discord]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md\n[Data Driven Fixes]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md\n\n\u003c!-- end_revert_body --\u003e\n\nCo-authored-by: auto-submit[bot] \u003cflutter-engprod-team@google.com\u003e\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/49233d08009d7e3313da0bfbd859960d14d9c90c\n"
    },
    {
      "commit": "7467616e1f8de419d8f659fd971b6925422495b9",
      "tree": "eddfed1c357e0dedcb0a2ec3b5c0c9d1c42b9bdf",
      "parents": [
        "0e84e5ac211f850114505272520ef0f66eb545c6"
      ],
      "author": {
        "name": "Brian Wilkerson",
        "email": "brianwilkerson@google.com",
        "time": "Fri Apr 10 08:20:36 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 08:22:23 2026 -0700"
      },
      "message": "Update addSuperParameter to support primary constructors\n\nCloses https://github.com/dart-lang/sdk/issues/63032\n\nChange-Id: Iab1be28ebfc3f206f82e5f8832b5e355b314f480\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/494300\nReviewed-by: Samuel Rawlins \u003csrawlins@google.com\u003e\nCommit-Queue: Brian Wilkerson \u003cbrianwilkerson@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/c075592ca18e48349ebed274705fef3fbbfcbbab\n"
    },
    {
      "commit": "0e84e5ac211f850114505272520ef0f66eb545c6",
      "tree": "080ed6c21b35897eb06d70bdc0ffc1a3be911a85",
      "parents": [
        "f8aa4437adaa25dc5dbb3f3084e363f70a1d5e97"
      ],
      "author": {
        "name": "DEPS Autoroller",
        "email": "dart-autoroll@skia-public.iam.gserviceaccount.com",
        "time": "Fri Apr 10 08:08:37 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 08:10:28 2026 -0700"
      },
      "message": "Roll Fuchsia SDK from 31.20260408.2.1 to 31.20260409.4.1\n\nIf this roll has caused a breakage, revert this CL and stop the roller\nusing the controls here:\nhttps://autoroll.skia.org/r/fuchsia-sdk-dart-sdk\nPlease CC fuchsia-3p-engprod@google.com on the revert to ensure that a human\nis aware of the problem.\n\nTo file a bug in Fuchsia SDK: https://bugs.fuchsia.dev/p/fuchsia/issues/list\nTo file a bug in Dart SDK: https://github.com/dart-lang/sdk/issues\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\n\nCq-Include-Trybots: luci.dart.try:vm-fuchsia-release-x64-try;luci.dart.try:vm-fuchsia-release-arm64-try\nChange-Id: I8c264de5b3fe6e76c71a6e748927358baadd701b\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/494220\nReviewed-by: Alexander Aprelev \u003caam@google.com\u003e\nCommit-Queue: Alexander Markov \u003calexmarkov@google.com\u003e\nReviewed-by: Alexander Markov \u003calexmarkov@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/62a35dc6257fedbd15d5b3a1ca700535a1f2d5f7\n"
    },
    {
      "commit": "f8aa4437adaa25dc5dbb3f3084e363f70a1d5e97",
      "tree": "19a05c57a32b55b68fa8b05a97fbbc3a38bc7cc0",
      "parents": [
        "1529639cce01c627886d33bbd4fa1c48c8aaf236"
      ],
      "author": {
        "name": "DEPS Autoroller",
        "email": "dart-autoroll@skia-public.iam.gserviceaccount.com",
        "time": "Fri Apr 10 08:00:53 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 08:02:14 2026 -0700"
      },
      "message": "Roll gn from 6e8dcdebbadf to ec56d4d935a0\n\nIf this roll has caused a breakage, revert this CL and stop the roller\nusing the controls here:\nhttps://autoroll.skia.org/r/gn-dart-sdk\nPlease CC dart-engprod@google.com,dart-vm-gardener@rotations.google.com,dart-vm-team@google.com on the revert to ensure that a human\nis aware of the problem.\n\nTo file a bug in gn: https://bugs.chromium.org/p/gn/issues/list\nTo file a bug in Dart SDK: https://github.com/dart-lang/sdk/issues\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\n\nCq-Include-Trybots: luci.dart.try:dart-sdk-linux-try;luci.dart.try:dart-sdk-linux-arm64-try;luci.dart.try:dart-sdk-mac-try;luci.dart.try:dart-sdk-mac-arm64-try;luci.dart.try:dart-sdk-win-try\nChange-Id: Ibd5d290ac4e9239746b7f0f665141f789b8860b9\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/494321\nReviewed-by: Alexander Markov \u003calexmarkov@google.com\u003e\nCommit-Queue: Alexander Markov \u003calexmarkov@google.com\u003e\nReviewed-by: Alexander Aprelev \u003caam@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/a965dac0908b327145756551d84632f68ed990db\n"
    },
    {
      "commit": "1529639cce01c627886d33bbd4fa1c48c8aaf236",
      "tree": "7d89ce7e61618a8b89ecd866a4ed0299c55a70e6",
      "parents": [
        "cf3a63e02acff5e256ed07f964fada4c29f215a1"
      ],
      "author": {
        "name": "DEPS Autoroller",
        "email": "dart-autoroll@skia-public.iam.gserviceaccount.com",
        "time": "Fri Apr 10 08:00:32 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 08:02:12 2026 -0700"
      },
      "message": "Roll BoringSSL from 19e432969f57 to a452b436e8ba (13 revisions)\n\nhttps://boringssl.googlesource.com/boringssl.git/+log/19e432969f57..a452b436e8ba\n\n2026-04-09 xfding@google.com rust: bssl-x509: Introduce public key type\n2026-04-09 xfding@google.com rust: bssl-tls: Change context method access into shared\n2026-04-09 rpolzer@google.com crypto/x509: remove OpenSSL exception for name constraints \"@example.com\".\n2026-04-09 davidben@google.com Add some implementation techniques to references.md\n2026-04-09 davidben@google.com runner: Gracefully detect when the handshaker cannot parse flags\n2026-04-09 davidben@google.com Update CI deps\n2026-04-09 davidben@google.com Update dependencies from BCR\n2026-04-09 davidben@google.com runner: Print something when errUnimplemented is rejected\n2026-04-08 davidben@google.com Add more test data for OCSP handling\n2026-04-08 davidben@google.com Make make_ocsp.py deterministic\n2026-04-08 davidben@google.com Bump ocsp_unittest to RSA-2048 from RSA-1024\n2026-04-08 davidben@google.com Fix execution_timeout on CQ\n2026-04-08 xfding@google.com rust: bssl-x509: Drop unused repr(transparent)\n\nIf this roll has caused a breakage, revert this CL and stop the roller\nusing the controls here:\nhttps://autoroll.skia.org/r/boringssl-dart-sdk\nPlease CC dart-engprod@google.com,dart-vm-gardener@rotations.google.com,dart-vm-team@google.com on the revert to ensure that a human\nis aware of the problem.\n\nTo file a bug in BoringSSL: https://crbug.com/boringssl/new\nTo file a bug in Dart SDK: https://github.com/dart-lang/sdk/issues\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\n\nTbr: dart-vm-gardener@rotations.google.com\nChange-Id: Id32e5a13b42c2a703d1a452b91aab29b3a5e6ea0\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/494200\nReviewed-by: Alexander Aprelev \u003caam@google.com\u003e\nReviewed-by: Alexander Markov \u003calexmarkov@google.com\u003e\nCommit-Queue: Alexander Markov \u003calexmarkov@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/1e54da193ebbd5b8f7a99d67c43be0ce0ab141b8\n"
    },
    {
      "commit": "cf3a63e02acff5e256ed07f964fada4c29f215a1",
      "tree": "50d301753fba067bfc633a276de9054ce3f6b10b",
      "parents": [
        "5565c4cad410d57a41d1cab2eaadb9d7684467bb"
      ],
      "author": {
        "name": "Alexander Markov",
        "email": "alexmarkov@google.com",
        "time": "Fri Apr 10 06:15:22 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 06:18:32 2026 -0700"
      },
      "message": "Reland \"[vm,dart2bytecode,modular_aot] Variable-length closure objects\"\n\nThis is a reland of commit 88496ba1c37fb6f67eac5920adb37eb8af0ee1f1\n\nFixes on top of the original change:\n\n* Closure layout is changed to avoid gap between fixed fields and\n  variable-length elements on compressed pointers architecture.\n  This gap was causing crashes in the GC when scanning closure\n  objects.\n\n* pkg/vm_snapshot_analysis/test/instruction_sizes_test is fixed\n  on arm64 by decreasing threshold for detecting size changes.\n\nOriginal change\u0027s description:\n\u003e [vm,dart2bytecode,modular_aot] Variable-length closure objects\n\u003e\n\u003e Extend closure objects with variable number of elements to capture.\n\u003e This is needed to support capturing multiple independent contexts\n\u003e after capturing is computed in the front-end.\n\u003e\n\u003e The following fixed Closure fields are moved into variable-length\n\u003e elements:\n\u003e  - delayed type arguments;\n\u003e  - instantiator type arguments;\n\u003e  - function type arguments;\n\u003e  - context.\n\u003e\n\u003e Number of elements and presence/indices of various type arguments\n\u003e are encoded into the new length_and_flags field in the Closure.\n\u003e\n\u003e Most closure objects don\u0027t need any of the type arguments so this\n\u003e change will reduce average Closure object size.\n\nTEST\u003dci\nIssue: https://github.com/dart-lang/sdk/issues/61572\nIssue: https://github.com/dart-lang/sdk/issues/61635\n\nChange-Id: I8685e632e2d0832766ecdc470f3cf9a6b880de48\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/494243\nCommit-Queue: Alexander Markov \u003calexmarkov@google.com\u003e\nReviewed-by: Tess Strickland \u003csstrickl@google.com\u003e\nReviewed-by: Slava Egorov \u003cvegorov@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/51d1c8923ae90bf089d836ece352c3562b9ba752\n"
    },
    {
      "commit": "5565c4cad410d57a41d1cab2eaadb9d7684467bb",
      "tree": "845a16066392ee25673517389dfa0fd990beef66",
      "parents": [
        "3904908eaf84a1b5f0a338e118be19c676f84504"
      ],
      "author": {
        "name": "Tess Strickland",
        "email": "sstrickl@google.com",
        "time": "Fri Apr 10 04:49:32 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Fri Apr 10 04:51:08 2026 -0700"
      },
      "message": "[vm,dyn_modules] Fix PrintStackFrames for entry frames, add more info.\n\nThe handling of entry frame in PrintStackFrames was broken, now it\u0027s\nfixed.\n\nIn addition, the stack printer now print various info about the static\nslots in stack frames, as well as printing out the objects in slots.\n\nNow that entry frames are handled properly, printing with no limit\nprints _all_ stack frames on the interpreter stack, noting call\nboundaries as they are passed, instead of stopping at the closest\nentry frame.\n\nMove the separator between frame from the stack pointer for a frame\nto the frame pointer for a frame, meaning that the metadata before\nthe frame pointer is printed as part of the previous frame, not the\ncurrent one.\n\nTEST\u003dci (manual testing while debugging)\n\nCq-Include-Trybots: luci.dart.try:vm-dyn-linux-debug-x64-try,vm-aot-dyn-linux-product-x64-try\nChange-Id: Ia2ad07c832b791f0c2ce2bbdfbfc32d5d8968476\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/493402\nReviewed-by: Alexander Markov \u003calexmarkov@google.com\u003e\nCommit-Queue: Tess Strickland \u003csstrickl@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/432adf747ea59420d67d9add043e4e4eaa2ff749\n"
    },
    {
      "commit": "3904908eaf84a1b5f0a338e118be19c676f84504",
      "tree": "2b812bb2419b45722be46e4f957fe3f958b32925",
      "parents": [
        "87016586d45ae3b5f8f3a009907c92bd8f9da299"
      ],
      "author": {
        "name": "Kate Lovett",
        "email": "katelovett@google.com",
        "time": "Thu Apr 09 18:35:05 2026 -0500"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 22:30:44 2026 -0700"
      },
      "message": "Skip freeze check in the merge queue (#184854)\n\n`merge_group` events do not have the same GitHub API access as\n`pull_request_target`, so we should skip the check in the merge queue.\nWe should skip the freeze check in the merge queue. The freeze workflow\nwas enabled as a required check in the branch protections in order to\ncapture existing PRs and prevent them from landing. This protection made\nthe check required in the merge queue, but no way for it to handle it.\nAfter this lands, I can re-enable the branch protection.\n\n## Pre-launch Checklist\n\n- [x] I read the [Contributor Guide] and followed the process outlined\nthere for submitting PRs.\n- [x] I read the [AI contribution guidelines] and understand my\nresponsibilities, or I am not using AI tools.\n- [x] I read the [Tree Hygiene] wiki page, which explains my\nresponsibilities.\n- [x] I read and followed the [Flutter Style Guide], including [Features\nwe expect every widget to implement].\n- [x] I signed the [CLA].\n- [x] I listed at least one issue that this PR fixes in the description\nabove.\n- [x] I updated/added relevant documentation (doc comments with `///`).\n- [x] I added new tests to check the change I am making, or this PR is\n[test-exempt].\n- [x] I followed the [breaking change policy] and added [Data Driven\nFixes] where supported.\n- [x] All existing and new tests are passing.\n\nIf you need help, consider asking for advice on the #hackers-new channel\non [Discord].\n\nIf this change needs to override an active code freeze, provide a\ncomment explaining why. The code freeze workflow can be overridden by\ncode reviewers. See pinned issues for any active code freezes with\nguidance.\n\n**Note**: The Flutter team is currently trialing the use of [Gemini Code\nAssist for\nGitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).\nComments from the `gemini-code-assist` bot should not be taken as\nauthoritative feedback from the Flutter team. If you find its comments\nuseful you can update your code accordingly, but if you are unsure or\ndisagree with the feedback, please feel free to wait for a Flutter team\nmember\u0027s review for guidance on which automated comments should be\naddressed.\n\n\u003c!-- Links --\u003e\n[Contributor Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview\n[AI contribution guidelines]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#ai-contribution-guidelines\n[Tree Hygiene]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md\n[test-exempt]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests\n[Flutter Style Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md\n[Features we expect every widget to implement]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement\n[CLA]: https://cla.developers.google.com/\n[flutter/tests]: https://github.com/flutter/tests\n[breaking change policy]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes\n[Discord]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md\n[Data Driven Fixes]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/c6f719d7a523f0a9f7c349b963339a4b268db57d\n"
    },
    {
      "commit": "87016586d45ae3b5f8f3a009907c92bd8f9da299",
      "tree": "da193bf40d7cd908e6a296e97179db530d08497c",
      "parents": [
        "d4f13c4c1fc635978af8720cb35d275b003acb7f"
      ],
      "author": {
        "name": "Mohellebi Abdessalem",
        "email": "116356835+AbdeMohlbi@users.noreply.github.com",
        "time": "Fri Apr 10 00:07:12 2026 +0100"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 22:30:41 2026 -0700"
      },
      "message": "Remove unused variable in `ProcessTextPlugin.java` (#184161)\n\nthis change removes an unused variable in\n`engine/src/flutter/shell/platform/android/io/flutter/plugin/text/ProcessTextPlugin.java`.\n\n## Pre-launch Checklist\n\n- [x] I read the [Contributor Guide] and followed the process outlined\nthere for submitting PRs.\n- [x] I read the [AI contribution guidelines] and understand my\nresponsibilities, or I am not using AI tools.\n- [x] I read the [Tree Hygiene] wiki page, which explains my\nresponsibilities.\n- [x] I read and followed the [Flutter Style Guide], including [Features\nwe expect every widget to implement].\n- [x] I signed the [CLA].\n- [ ] I listed at least one issue that this PR fixes in the description\nabove.\n- [ ] I updated/added relevant documentation (doc comments with `///`).\n- [ ] I added new tests to check the change I am making, or this PR is\n[test-exempt].\n- [x] I followed the [breaking change policy] and added [Data Driven\nFixes] where supported.\n- [x] All existing and new tests are passing.\n\nIf you need help, consider asking for advice on the #hackers-new channel\non [Discord].\n\n**Note**: The Flutter team is currently trialing the use of [Gemini Code\nAssist for\nGitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).\nComments from the `gemini-code-assist` bot should not be taken as\nauthoritative feedback from the Flutter team. If you find its comments\nuseful you can update your code accordingly, but if you are unsure or\ndisagree with the feedback, please feel free to wait for a Flutter team\nmember\u0027s review for guidance on which automated comments should be\naddressed.\n\n\u003c!-- Links --\u003e\n[Contributor Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview\n[AI contribution guidelines]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#ai-contribution-guidelines\n[Tree Hygiene]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md\n[test-exempt]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests\n[Flutter Style Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md\n[Features we expect every widget to implement]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement\n[CLA]: https://cla.developers.google.com/\n[flutter/tests]: https://github.com/flutter/tests\n[breaking change policy]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes\n[Discord]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md\n[Data Driven Fixes]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/b31ab800e8c598ceee70217ddd67877e25423488\n"
    },
    {
      "commit": "d4f13c4c1fc635978af8720cb35d275b003acb7f",
      "tree": "317b95aa64dada58f12fa7d1683e832028168880",
      "parents": [
        "4a9b7bc812b00b905cf370361073a433f97c18ae"
      ],
      "author": {
        "name": "engine-flutter-autoroll",
        "email": "engine-flutter-autoroll@skia.org",
        "time": "Thu Apr 09 18:41:31 2026 -0400"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 21:50:00 2026 -0700"
      },
      "message": "Roll Fuchsia Linux SDK from pDXMXRIjEHTw7B0sk... to lZcRfPoCLnDttrf9P... (#184842)\n\nIf this roll has caused a breakage, revert this CL and stop the roller\nusing the controls here:\nhttps://autoroll.skia.org/r/fuchsia-linux-sdk-flutter\nPlease CC jimgraham@google.com,zra@google.com on the revert to ensure\nthat a human\nis aware of the problem.\n\nTo file a bug in Flutter:\nhttps://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\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/810163e8afaf8fd1102a7997080b1445528a06bc\n"
    },
    {
      "commit": "4a9b7bc812b00b905cf370361073a433f97c18ae",
      "tree": "578361f6f555fc77ab626023e91f0d330d77b715",
      "parents": [
        "e37f99d4f7395342b7a608201768f95964d19b94"
      ],
      "author": {
        "name": "engine-flutter-autoroll",
        "email": "engine-flutter-autoroll@skia.org",
        "time": "Thu Apr 09 14:02:41 2026 -0400"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 21:49:56 2026 -0700"
      },
      "message": "Roll Dart SDK from bd6280c3e8e9 to 98a143f8873e (5 revisions) (#184824)\n\nhttps://dart.googlesource.com/sdk.git/+log/bd6280c3e8e9..98a143f8873e\n\n2026-04-09 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com\nVersion 3.13.0-4.0.dev\n2026-04-09 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com\nVersion 3.13.0-3.0.dev\n2026-04-08 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com\nVersion 3.13.0-2.0.dev\n2026-04-08 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com\nVersion 3.13.0-1.0.dev\n2026-04-08 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com\nVersion 3.13.0-0.0.dev\n\nIf this roll has caused a breakage, revert this CL and stop the roller\nusing the controls here:\nhttps://autoroll.skia.org/r/dart-sdk-flutter\nPlease CC dart-vm-team@google.com,jimgraham@google.com on the revert to\nensure that a human\nis aware of the problem.\n\nTo file a bug in Flutter:\nhttps://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\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/deede5462db7a6998961b2a9cd2a8ed483437ee1\n"
    },
    {
      "commit": "e37f99d4f7395342b7a608201768f95964d19b94",
      "tree": "d5e09f9d72ea59263ac28ca61c38801e00747619",
      "parents": [
        "b5ab09ecdea8841ca78d3e73bee9505a38b4e6e3"
      ],
      "author": {
        "name": "Gray Mackall",
        "email": "34871572+gmackall@users.noreply.github.com",
        "time": "Thu Apr 09 10:16:21 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 21:49:53 2026 -0700"
      },
      "message": "Remove `linux_android_emu_unstable android_engine_vulkan_tests` (#184787)\n\nThis was pushing to the same golden files as the stable version. I\nsuspect it is the source of flakiness of the vulkan platform view gold\ntests.\n\nIf we want to maintain parallel versions, we will in the future need to\nmake the test harness ci-yaml-target-aware, in the way that it is for\nopengles vs vulkan.\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/06ce2177980559602788a0cd0a8b4a3b6ec03cb0\n"
    },
    {
      "commit": "b5ab09ecdea8841ca78d3e73bee9505a38b4e6e3",
      "tree": "f497114c70b17a99829f258262eb459be431ef55",
      "parents": [
        "763ab4883338c62821c59ba0c114434742c048e4"
      ],
      "author": {
        "name": "engine-flutter-autoroll",
        "email": "engine-flutter-autoroll@skia.org",
        "time": "Thu Apr 09 13:04:26 2026 -0400"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 17:02:55 2026 -0700"
      },
      "message": "Roll Packages from 0e0a032a4a9b to 1aa892c09c8b (9 revisions) (#184829)\n\nhttps://github.com/flutter/packages/compare/0e0a032a4a9b...1aa892c09c8b\n\n2026-04-09 10687576+bparrishMines@users.noreply.github.com\n[webview_flutter_android] Adds support to opt out of Android inset\nchanges (flutter/packages#11192)\n2026-04-08 engine-flutter-autoroll@skia.org Roll Flutter from\na0924c76b0fd to 05e0ae02600d (24 revisions) (flutter/packages#11470)\n2026-04-08 stuartmorgan@google.com [pigeon] Make Kotlin FlutterError a\nruntime error (flutter/packages#11469)\n2026-04-08 stuartmorgan@google.com [path_provider] Remove dependency on\nengine PathUtils (flutter/packages#11467)\n2026-04-07 1063596+reidbaker@users.noreply.github.com [all] Prepare\npackages for skills (flutter/packages#11430)\n2026-04-07 engine-flutter-autoroll@skia.org Roll Flutter from\n9cd60b512fbc to a0924c76b0fd (13 revisions) (flutter/packages#11463)\n2026-04-07 elitree@gmail.com [google_maps_flutter] Android cluster pin\ninfo window onTap callback not firing (flutter/packages#11390)\n2026-04-07 stuartmorgan@google.com [flutter_svg] Remove generated CMake\nfiles (flutter/packages#11459)\n2026-04-07 stuartmorgan@google.com [various] Convert remaining Groovy\nfiles to Kotlin (flutter/packages#11443)\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-flutter-autoroll\nPlease CC flutter-ecosystem@google.com on the revert to ensure that a\nhuman\nis aware of the problem.\n\nTo file a bug in Flutter:\nhttps://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\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/20a9784e090b5804bbf85e052d055d2e8e5bcddd\n"
    },
    {
      "commit": "763ab4883338c62821c59ba0c114434742c048e4",
      "tree": "45ce747937cc67c3f1d7edc4681792684d92e0b2",
      "parents": [
        "e310556d4f7f5590044e522bb65af42d9730ae66"
      ],
      "author": {
        "name": "Daco Harkes",
        "email": "dacoharkes@google.com",
        "time": "Thu Apr 09 09:57:59 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 16:29:32 2026 -0700"
      },
      "message": "[record_use] Add experimental flag and test project (#184719)\n\nBug:\n\n* https://github.com/dart-lang/native/issues/2690\n\n**Does _not_ add an implementation**, only:\n- an experimental flag,\n- an integration test that should pass when the experiment is\nimplemented,\n- and the record_use package as an explicit dependency.\n\nLanding this PR first because it\u0027s a ton of files. It will keep the\nactual implementation PR more reviewable.\n\nNote the test projects go through the usual hoops:\n\n* `flutter create`.\n* Add the things we want to test.\n* Add copyright headers everywhere.\n* Drop all the icons, and modify all the native build files to not refer\nto the icons. (Force pushing 10x in the process to get the bots green.)\n* The build_tests shards build the test projects for all target OSes\n(catching things such as misconfigured icons etc.)\n\nThe integration test loosely follows the data assets integration test,\nbut it only runs release mode (so no hot reload and hot restart).\n\nThe integration test uses data assets (not code assets) so that we can\nalso test the web backends with record-use. This means the integration\ntest relies on also enabling the data assets experimental flag.\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/eb6acab7f315f3f09e70eff662245f5b86c9fc93\n"
    },
    {
      "commit": "e310556d4f7f5590044e522bb65af42d9730ae66",
      "tree": "ed2dcd74167309eba874a4e6e527699c60310e4b",
      "parents": [
        "2cd4849b163d4061ef03ce609d5f0f37be22c0ad"
      ],
      "author": {
        "name": "Victoria Ashworth",
        "email": "15619084+vashworth@users.noreply.github.com",
        "time": "Thu Apr 09 11:56:24 2026 -0500"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 16:29:30 2026 -0700"
      },
      "message": "Disable async mode with LLDB (#184768)\n\n@mraleph proposed a [better\nfix](https://github.com/flutter/flutter/issues/184254#issuecomment-4206802327)\nfor the LLDB Xcode 26.4 breakage and I confirmed that it works.\n\nThis PR reverts the first fix and adopts the new one, which is to set\nLLDB to not use async mode.\n\nFor https://github.com/flutter/flutter/issues/184254.\n\n## Pre-launch Checklist\n\n- [x] I read the [Contributor Guide] and followed the process outlined\nthere for submitting PRs.\n- [x] I read the [AI contribution guidelines] and understand my\nresponsibilities, or I am not using AI tools.\n- [x] I read the [Tree Hygiene] wiki page, which explains my\nresponsibilities.\n- [x] I read and followed the [Flutter Style Guide], including [Features\nwe expect every widget to implement].\n- [x] I signed the [CLA].\n- [x] I listed at least one issue that this PR fixes in the description\nabove.\n- [x] I updated/added relevant documentation (doc comments with `///`).\n- [x] I added new tests to check the change I am making, or this PR is\n[test-exempt].\n- [x] I followed the [breaking change policy] and added [Data Driven\nFixes] where supported.\n- [x] All existing and new tests are passing.\n\nIf you need help, consider asking for advice on the #hackers-new channel\non [Discord].\n\nIf this change needs to override an active code freeze, provide a\ncomment explaining why. The code freeze workflow can be overridden by\ncode reviewers. See pinned issues for any active code freezes with\nguidance.\n\n**Note**: The Flutter team is currently trialing the use of [Gemini Code\nAssist for\nGitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).\nComments from the `gemini-code-assist` bot should not be taken as\nauthoritative feedback from the Flutter team. If you find its comments\nuseful you can update your code accordingly, but if you are unsure or\ndisagree with the feedback, please feel free to wait for a Flutter team\nmember\u0027s review for guidance on which automated comments should be\naddressed.\n\n\u003c!-- Links --\u003e\n[Contributor Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview\n[AI contribution guidelines]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#ai-contribution-guidelines\n[Tree Hygiene]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md\n[test-exempt]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests\n[Flutter Style Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md\n[Features we expect every widget to implement]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement\n[CLA]: https://cla.developers.google.com/\n[flutter/tests]: https://github.com/flutter/tests\n[breaking change policy]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes\n[Discord]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md\n[Data Driven Fixes]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/eb4e55adca4c7e0ca1e87583c30cc403e775cf6b\n"
    },
    {
      "commit": "2cd4849b163d4061ef03ce609d5f0f37be22c0ad",
      "tree": "b62251534eebeaf1f7bac464570c9846f89380a6",
      "parents": [
        "44e078e2cbbb8e007ae142dad3a8ede628326b7c"
      ],
      "author": {
        "name": "Reid Baker",
        "email": "1063596+reidbaker@users.noreply.github.com",
        "time": "Thu Apr 09 12:52:17 2026 -0400"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 15:35:32 2026 -0700"
      },
      "message": "Update link for rolling forward to aligned Dart hash (#184780)\n\nRelated to\nhttps://chat.google.com/room/AAAAc_4rqiI/DaS2vV_AX2g/IjFs6apfiHY?cls\u003d10\n\n## Pre-launch Checklist\n\n- [x] I read the [Contributor Guide] and followed the process outlined\nthere for submitting PRs.\n- [x] I read the [AI contribution guidelines] and understand my\nresponsibilities, or I am not using AI tools.\n- [x] I read the [Tree Hygiene] wiki page, which explains my\nresponsibilities.\n- [x] I read and followed the [Flutter Style Guide], including [Features\nwe expect every widget to implement].\n- [x] I signed the [CLA].\n- [ ] I listed at least one issue that this PR fixes in the description\nabove.\n- [ ] I updated/added relevant documentation (doc comments with `///`).\n- [ ] I added new tests to check the change I am making, or this PR is\n[test-exempt].\n- [x] I followed the [breaking change policy] and added [Data Driven\nFixes] where supported.\n- [x] All existing and new tests are passing.\n\n\u003c!-- Links --\u003e\n[Contributor Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview\n[AI contribution guidelines]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#ai-contribution-guidelines\n[Tree Hygiene]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md\n[test-exempt]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests\n[Flutter Style Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md\n[Features we expect every widget to implement]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement\n[CLA]: https://cla.developers.google.com/\n[flutter/tests]: https://github.com/flutter/tests\n[breaking change policy]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes\n[Discord]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md\n[Data Driven Fixes]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/ab267fe8fc2edd6b6131aae9e8531417cf35f4c9\n"
    },
    {
      "commit": "44e078e2cbbb8e007ae142dad3a8ede628326b7c",
      "tree": "dff5d248382f6d8097382c21e10874fd0995108e",
      "parents": [
        "e104cc966ead984511228990027a8b1fc65995ae"
      ],
      "author": {
        "name": "engine-flutter-autoroll",
        "email": "engine-flutter-autoroll@skia.org",
        "time": "Thu Apr 09 12:44:12 2026 -0400"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 15:35:30 2026 -0700"
      },
      "message": "Roll Skia from 4d0f5389e131 to af67d5555e35 (3 revisions) (#184825)\n\nhttps://skia.googlesource.com/skia.git/+log/4d0f5389e131..af67d5555e35\n\n2026-04-09 sergiog@microsoft.com [rust jpeg] Default rust ICC and EXIF\nkill switches to enabled\n2026-04-09 kosuch@opera.com Fix SkJSONReader float parsing\n2026-04-09 sergiog@microsoft.com [rust bmp] Fix of rust ICC padding\nissue with skcms_Transform\n\nIf this roll has caused a breakage, revert this CL and stop the roller\nusing the controls here:\nhttps://autoroll.skia.org/r/skia-flutter-autoroll\nPlease CC egdaniel@google.com,jimgraham@google.com,kjlubick@google.com\non the revert to ensure that a human\nis aware of the problem.\n\nTo file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry\nTo file a bug in Flutter:\nhttps://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\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/8b9d733147eb0443627edc036ed21a5f9dc38942\n"
    },
    {
      "commit": "e104cc966ead984511228990027a8b1fc65995ae",
      "tree": "a9fc68f49fc82c420578c9252d1678dae641ce2b",
      "parents": [
        "614802d8a360ab47adbaa3008bcd5744e6810408"
      ],
      "author": {
        "name": "b-luk",
        "email": "97480502+b-luk@users.noreply.github.com",
        "time": "Thu Apr 09 09:08:11 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 15:35:28 2026 -0700"
      },
      "message": "UberSDFContent refactoring and handle stroke miter limit for stroked rects (#184603)\n\nCreates a new UberSDFParameters struct, which is encapsulates all the\nstate needed for a UberSDF FragInfo. It has shape-specific constructors\nto populate this state for different shapes.\n\nCreates a new UberSDFGeometry class to be used as the Geometry for\nUberSDFContents. It contains all the AA padding logic for UberSDF, so\nthe AA padding can be removed from canvas and from FillRectGeometry.\nUberSDFGeometry\u0027s GetPositionBuffer leverages a FillRectGeometry to\nreturn a quad that properly accounts for AA padding.\n\nUberSDFContents is updated to be constructed with UberSDFParameters\nrather than having shape-specific constructors. It becomes agnostic to\nthe specific shape being drawn, and now has no shape- or geometry-aware\nlogic. It simply pipes through UberSDFParameters values to the UberSDF\nshader\u0027s FragInfo.\n\nThis is mostly a no-op refactoring. The exception is for UberSDF stroke\nrects with a miter limit. UberSDFParameters properly handles miter limit\nfor these, so now stroked rects with low miter limits properly become\nbeveled.\n\nPart of https://github.com/flutter/flutter/issues/184402\nFixes https://github.com/flutter/flutter/issues/184404\nPart of https://github.com/flutter/flutter/issues/184352\n\n## Pre-launch Checklist\n\n- [x] I read the [Contributor Guide] and followed the process outlined\nthere for submitting PRs.\n- [x] I read the [AI contribution guidelines] and understand my\nresponsibilities, or I am not using AI tools.\n- [x] I read the [Tree Hygiene] wiki page, which explains my\nresponsibilities.\n- [x] I read and followed the [Flutter Style Guide], including [Features\nwe expect every widget to implement].\n- [x] I signed the [CLA].\n- [x] I listed at least one issue that this PR fixes in the description\nabove.\n- [x] I updated/added relevant documentation (doc comments with `///`).\n- [x] I added new tests to check the change I am making, or this PR is\n[test-exempt].\n- [x] I followed the [breaking change policy] and added [Data Driven\nFixes] where supported.\n- [x] All existing and new tests are passing.\n\nIf you need help, consider asking for advice on the #hackers-new channel\non [Discord].\n\n**Note**: The Flutter team is currently trialing the use of [Gemini Code\nAssist for\nGitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).\nComments from the `gemini-code-assist` bot should not be taken as\nauthoritative feedback from the Flutter team. If you find its comments\nuseful you can update your code accordingly, but if you are unsure or\ndisagree with the feedback, please feel free to wait for a Flutter team\nmember\u0027s review for guidance on which automated comments should be\naddressed.\n\n\u003c!-- Links --\u003e\n[Contributor Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview\n[AI contribution guidelines]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#ai-contribution-guidelines\n[Tree Hygiene]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md\n[test-exempt]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests\n[Flutter Style Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md\n[Features we expect every widget to implement]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement\n[CLA]: https://cla.developers.google.com/\n[flutter/tests]: https://github.com/flutter/tests\n[breaking change policy]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes\n[Discord]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md\n[Data Driven Fixes]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md\n\n---------\n\nCo-authored-by: Jim Graham \u003cflar@google.com\u003e\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/47b50322f64ad8bf5f720e85fa1b23d8176ba827\n"
    },
    {
      "commit": "614802d8a360ab47adbaa3008bcd5744e6810408",
      "tree": "d9a093800fe0eba42cc197421d865a15bfe5ff5f",
      "parents": [
        "70b6b3b89451ec9c183f636100a0795c70fcd674"
      ],
      "author": {
        "name": "Kallen Tu",
        "email": "kallentu@google.com",
        "time": "Thu Apr 09 15:09:15 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 15:11:33 2026 -0700"
      },
      "message": "[analysis_server] Primary constructors: Update RemoveConst.\n\nAdded this as a fix for `constConstructorWithNonFinalField` and `constPrimaryConstructorWithBlockBody` who both can be fixed with the removal of the `const` keyword.\n\nOther const removal fixes with primary constructors are covered by `RemoveLexeme`. I added tests for the relevant cases.\n\nBug: https://github.com/dart-lang/sdk/issues/63071\nChange-Id: I0b7bb5f7976fb49e38499915999fe79465e4ae1a\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/492880\nCommit-Queue: Kallen Tu \u003ckallentu@google.com\u003e\nReviewed-by: Brian Wilkerson \u003cbrianwilkerson@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/064dd37c0538360b082a54b5cb89d559fe22aeb6\n"
    },
    {
      "commit": "70b6b3b89451ec9c183f636100a0795c70fcd674",
      "tree": "4624c24f638708f62893bea3161b211fa913f6b7",
      "parents": [
        "6c98d32cb63abc669960a8b740ddd629667d21ae"
      ],
      "author": {
        "name": "Paul Berry",
        "email": "paulberry@google.com",
        "time": "Thu Apr 09 15:01:17 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 15:04:46 2026 -0700"
      },
      "message": "Test yield* when the return context is Iterable\u003c_\u003e.\n\nThis covers a test case that I forgot to include in\nhttps://dart-review.googlesource.com/c/sdk/+/491706. As with that CL,\nthis test is solely intended to ensure that the current behavior is\nadequately tested, so that we will avoid inadvertently changing it\nwhile doing refactors.\n\nChanges to the specification are being contemplated; see\nhttps://github.com/dart-lang/language/pull/4673 and\nhttps://github.com/dart-lang/language/issues/4672.\n\nChange-Id: I5a21bfc2555857542d0dc02b757672a36a6a6964\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/492660\nCommit-Queue: Paul Berry \u003cpaulberry@google.com\u003e\nReviewed-by: Erik Ernst \u003ceernst@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/3d56c6bb91621643446e58f3b09ed0a99b5afc6a\n"
    },
    {
      "commit": "6c98d32cb63abc669960a8b740ddd629667d21ae",
      "tree": "29a6d14c6b41cb6e0619cb3939606170c874d023",
      "parents": [
        "cd2e30020bfe508b29db7869cf89643209566332"
      ],
      "author": {
        "name": "Konstantin Shcheglov",
        "email": "scheglov@google.com",
        "time": "Thu Apr 09 15:01:11 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 15:04:44 2026 -0700"
      },
      "message": "Split mixinClassDeclarationWithClause and mixinModifierMixinApplicationClassWithMultipleMixins from mixinClassDeclarationExtendsNotObject.\n\nReport dedicated diagnostics for mixin classes that use a `with` clause\nand for mixin application classes that use multiple mixins, instead of\nfolding both cases into `mixinClassDeclarationExtendsNotObject`.\n\nThis makes the reported error match the actual invalid construct. A\n`mixin class` with a `with` clause does not have the same problem as a\n`mixin class` that extends a non-`Object` superclass, and a mixin\napplication with multiple mixins is a separate restriction again.\n\nUpdate the error verifier, diagnostic definitions, messages, and fix\nstatus entries to use the new codes. Also guard `RemoveExtendsClause` so\nit only offers a fix when an actual extends clause is present, avoiding\na bogus fix for diagnostics that are now reported on `with` clauses\ninstead.\n\nConsolidate the diagnostic tests under a single mixin class declaration\ntest file and update expectations to use the more precise error codes.\n\nThe original impetus for this change was a crash in RemoveExtendsClause\nquick fix.\n\nChange-Id: I937276f37deb293ca1fecab3ff838ace45af2ec4\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/493865\nCommit-Queue: Konstantin Shcheglov \u003cscheglov@google.com\u003e\nReviewed-by: Johnni Winther \u003cjohnniwinther@google.com\u003e\nReviewed-by: Paul Berry \u003cpaulberry@google.com\u003e\nReviewed-by: Brian Wilkerson \u003cbrianwilkerson@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/e1404d853990da5f9f3695235f68b49408436b1e\n"
    },
    {
      "commit": "cd2e30020bfe508b29db7869cf89643209566332",
      "tree": "251d6e6baec9cec6036f925b6e448a300e509072",
      "parents": [
        "0784bc38f7d2fb2fa6a73bdd292a1d7e8a559624"
      ],
      "author": {
        "name": "Danny Tuppeny",
        "email": "danny@tuppeny.com",
        "time": "Thu Apr 09 14:52:11 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 14:53:46 2026 -0700"
      },
      "message": "[analysis_server] Update Encapsulate Field to handle declaring parameters\n\nFixes https://github.com/dart-lang/sdk/issues/63145\n\nChange-Id: I6a7857d62f50a5b27968fca120ee7337f22a551f\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/494121\nCommit-Queue: Brian Wilkerson \u003cbrianwilkerson@google.com\u003e\nReviewed-by: Keerti Parthasarathy \u003ckeertip@google.com\u003e\nReviewed-by: Brian Wilkerson \u003cbrianwilkerson@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/e0e75805107da65e89b1ddd28b3850851c48917c\n"
    },
    {
      "commit": "0784bc38f7d2fb2fa6a73bdd292a1d7e8a559624",
      "tree": "d4d25208826b1c76cf951cfb2c6f4067d46a69ef",
      "parents": [
        "c456ea17bfa0e47b71b953fcc090339e407d15a2"
      ],
      "author": {
        "name": "Keerti Parthasarathy",
        "email": "keertip@google.com",
        "time": "Thu Apr 09 14:52:00 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 14:53:44 2026 -0700"
      },
      "message": "[primary constructors] Add test for remove_var_keyword\n\nCloses https://github.com/dart-lang/sdk/issues/63080\n\nChange-Id: I5e4c7d12b95fd23fcffff27356e5de34dc2f5f15\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/494165\nCommit-Queue: Keerti Parthasarathy \u003ckeertip@google.com\u003e\nReviewed-by: Samuel Rawlins \u003csrawlins@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/1f4ae4fd3af0677b80712b103a5b66ef367f854e\n"
    },
    {
      "commit": "c456ea17bfa0e47b71b953fcc090339e407d15a2",
      "tree": "a0535bbc05f571c56feadcc759579650269ee3cc",
      "parents": [
        "2220664b2fed2cd1a93eab00ec545eb049fe86ed"
      ],
      "author": {
        "name": "FMorschel",
        "email": "git@fmorschel.dev",
        "time": "Thu Apr 09 14:28:22 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 14:30:36 2026 -0700"
      },
      "message": "[DAS] Fixes stack trace in create extension member\n\nFixes: https://github.com/dart-lang/sdk/issues/62736\nChange-Id: I59c07165308cf6aff8029eabcdcbd901328970e0\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/483060\nCommit-Queue: Brian Wilkerson \u003cbrianwilkerson@google.com\u003e\nReviewed-by: Brian Wilkerson \u003cbrianwilkerson@google.com\u003e\nReviewed-by: Samuel Rawlins \u003csrawlins@google.com\u003e\nAuto-Submit: Felipe Morschel \u003cgit@fmorschel.dev\u003e\n\nhttps://dart.googlesource.com/sdk/+/188cb9a598f39cca02602f4b626a1b465f2fbeee\n"
    },
    {
      "commit": "2220664b2fed2cd1a93eab00ec545eb049fe86ed",
      "tree": "6c18273a0ac5311a0a7cf8fa55fb8e46c40a9a3e",
      "parents": [
        "e9780f2d650f388831bb20b25270cea7dfc96482"
      ],
      "author": {
        "name": "Sam Rawlins",
        "email": "srawlins@google.com",
        "time": "Thu Apr 09 14:14:29 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 14:18:05 2026 -0700"
      },
      "message": "linter: Tidy prefer_spread_collections and simplify tests\n\nThe tests all used dynamic objects, which are non-idiomatic, and the\nrule does not concern itself with dynamic, so it is simpler to use\nnormal list objects.\n\nChange-Id: I1d60d38ab24d07352d3998ca9955d30557e57ce4\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/494161\nReviewed-by: Keerti Parthasarathy \u003ckeertip@google.com\u003e\nCommit-Queue: Samuel Rawlins \u003csrawlins@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/e415789e2bfe83c0976fabde5008c5bd2dfddb8b\n"
    },
    {
      "commit": "e9780f2d650f388831bb20b25270cea7dfc96482",
      "tree": "abc6eb10d7d94c7b46e257a684382813a47811ec",
      "parents": [
        "5440f17c3fa1e65367739b4857ae2d7cbe03404a"
      ],
      "author": {
        "name": "Alexander Markov",
        "email": "alexmarkov@google.com",
        "time": "Thu Apr 09 14:12:09 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 14:13:43 2026 -0700"
      },
      "message": "Revert \"[vm,dart2bytecode,modular_aot] Variable-length closure objects\"\n\nThis reverts commit 88496ba1c37fb6f67eac5920adb37eb8af0ee1f1.\n\nReason for revert: crashes on arm64c\n\nOriginal change\u0027s description:\n\u003e [vm,dart2bytecode,modular_aot] Variable-length closure objects\n\u003e\n\u003e Extend closure objects with variable number of elements to capture.\n\u003e This is needed to support capturing multiple independent contexts\n\u003e after capturing is computed in the front-end.\n\u003e\n\u003e The following fixed Closure fields are moved into variable-length\n\u003e elements:\n\u003e  - delayed type arguments;\n\u003e  - instantiator type arguments;\n\u003e  - function type arguments;\n\u003e  - context.\n\u003e\n\u003e Number of elements and presence/indices of various type arguments\n\u003e are encoded into the new length_and_flags field in the Closure.\n\u003e\n\u003e Most closure objects don\u0027t need any of the type arguments so this\n\u003e change will reduce average Closure object size.\n\u003e\n\u003e TEST\u003dci\n\u003e Issue: https://github.com/dart-lang/sdk/issues/61572\n\u003e Issue: https://github.com/dart-lang/sdk/issues/61635\n\u003e\n\u003e Change-Id: I7ca5cec0fd8725c432a01d51781fb14e803997dd\n\u003e Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/489482\n\u003e Commit-Queue: Alexander Markov \u003calexmarkov@google.com\u003e\n\u003e Reviewed-by: Ryan Macnak \u003crmacnak@google.com\u003e\n\u003e Reviewed-by: Slava Egorov \u003cvegorov@google.com\u003e\n\u003e Reviewed-by: Tess Strickland \u003csstrickl@google.com\u003e\n\nIssue: https://github.com/dart-lang/sdk/issues/61572\nIssue: https://github.com/dart-lang/sdk/issues/61635\nNo-Presubmit: true\nNo-Tree-Checks: true\nNo-Try: true\nChange-Id: I94c88f8922f6ea49251e942ba791fee714911e25\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/494261\nBot-Commit: Rubber Stamper \u003crubber-stamper@appspot.gserviceaccount.com\u003e\nReviewed-by: Nate Biggs \u003cnatebiggs@google.com\u003e\nCommit-Queue: Alexander Markov \u003calexmarkov@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/0dfaa16dc71f3814c0dd52217a6afb65ebb65945\n"
    },
    {
      "commit": "5440f17c3fa1e65367739b4857ae2d7cbe03404a",
      "tree": "0b75207959eb1b90d6b11d28559545bca736782c",
      "parents": [
        "9eafb852903a8b5982e8a443c7d8b2f1b5ec6dab"
      ],
      "author": {
        "name": "Kallen Tu",
        "email": "kallentu@google.com",
        "time": "Thu Apr 09 13:40:14 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 13:41:47 2026 -0700"
      },
      "message": "[analysis_server] Primary constructors: Update RemoveEmptyConstructorBody.\n\nAdded support to the `RemoveEmptyConstructorBody` fix to handle primary constructor bodies.\n\n```dart\nclass C(int x) {\n  this : assert(x \u003e 0) {}\n}\n```\n\nbecomes\n\n```dart\nclass C(int x) {\n  this : assert(x \u003e 0);\n}\n```\n\nFixes: https://github.com/dart-lang/sdk/issues/63075\nChange-Id: I00bc80711ee436c0132a3ae5313763073b030aac\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/492883\nReviewed-by: Brian Wilkerson \u003cbrianwilkerson@google.com\u003e\nCommit-Queue: Kallen Tu \u003ckallentu@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/9fee4af3021c2e79c07126db6157626133da13da\n"
    },
    {
      "commit": "9eafb852903a8b5982e8a443c7d8b2f1b5ec6dab",
      "tree": "07c24783a061eb158d918b04a7f084d3a14b611e",
      "parents": [
        "0fb090e0bcf6373394350cd081c5f7f3c685b732"
      ],
      "author": {
        "name": "Sigmund Cherem",
        "email": "sigmund@google.com",
        "time": "Thu Apr 09 13:13:31 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 13:17:11 2026 -0700"
      },
      "message": "[dyn_modules,cfe] add CFE option for allowing dynamic calls in dyn_modules.\n\nThis CL introduces a CFE option to enable support for dynamic calls in\nDart Dynamic Modules. The option will be provided by compilers only when\ncommand-line flags are provided, and will be used to change the behavior\nof the dynamic modules validator in future changes.\n\nTEST\u003dnone, will be tested in upcoming changes.\n\nChange-Id: Ie2a9f82955cd11915ff21e582db04eec20a024ad\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/493966\nReviewed-by: Johnni Winther \u003cjohnniwinther@google.com\u003e\nReviewed-by: Alexander Markov \u003calexmarkov@google.com\u003e\nCommit-Queue: Sigmund Cherem \u003csigmund@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/82c9445295954374a9125425441871197cf665a1\n"
    },
    {
      "commit": "0fb090e0bcf6373394350cd081c5f7f3c685b732",
      "tree": "615de74d41055c5e47011f948548eaaaf52f7e80",
      "parents": [
        "dc4c14d0aa2ac9f893b1506fef29cb970e8f0714"
      ],
      "author": {
        "name": "Brian Wilkerson",
        "email": "brianwilkerson@google.com",
        "time": "Thu Apr 09 12:38:35 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 12:40:38 2026 -0700"
      },
      "message": "Update addMissingParameter to handle primary constructors\n\nCloses https://github.com/dart-lang/sdk/issues/63029\n\nChange-Id: I0d1a1c41864a064b7f92c7668188dc86617e0547\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/494180\nReviewed-by: Keerti Parthasarathy \u003ckeertip@google.com\u003e\nCommit-Queue: Brian Wilkerson \u003cbrianwilkerson@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/077ff75a4fa9f9b8ba92d5e7509b67614bd031d7\n"
    },
    {
      "commit": "dc4c14d0aa2ac9f893b1506fef29cb970e8f0714",
      "tree": "5a3cfa2e9b4b744ad659c1e40a82e12871708ee9",
      "parents": [
        "94cc3413083c0d46b78234e83ddddc8099972462"
      ],
      "author": {
        "name": "Keerti Parthasarathy",
        "email": "keertip@google.com",
        "time": "Thu Apr 09 12:35:50 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 12:37:37 2026 -0700"
      },
      "message": "[primary cosntructors] Add test for remove_var\n\nCloses https://github.com/dart-lang/sdk/issues/63081\n\nChange-Id: Iab5ec7785797527d4bca5ec3f2b4cbfcb081325f\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/494162\nCommit-Queue: Keerti Parthasarathy \u003ckeertip@google.com\u003e\nReviewed-by: Samuel Rawlins \u003csrawlins@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/89e73d0d663d89330b75958b5e3d2284aa95cd8a\n"
    },
    {
      "commit": "94cc3413083c0d46b78234e83ddddc8099972462",
      "tree": "22d96bc6ac682e5fd8bd0af329b473b3f4862bef",
      "parents": [
        "d7f7ffdc1232d823ae1e2cc20c66429db5b05591"
      ],
      "author": {
        "name": "Alexander Markov",
        "email": "alexmarkov@google.com",
        "time": "Thu Apr 09 12:22:21 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 12:24:05 2026 -0700"
      },
      "message": "[vm,dart2bytecode,modular_aot] Variable-length closure objects\n\nExtend closure objects with variable number of elements to capture.\nThis is needed to support capturing multiple independent contexts\nafter capturing is computed in the front-end.\n\nThe following fixed Closure fields are moved into variable-length\nelements:\n - delayed type arguments;\n - instantiator type arguments;\n - function type arguments;\n - context.\n\nNumber of elements and presence/indices of various type arguments\nare encoded into the new length_and_flags field in the Closure.\n\nMost closure objects don\u0027t need any of the type arguments so this\nchange will reduce average Closure object size.\n\nTEST\u003dci\nIssue: https://github.com/dart-lang/sdk/issues/61572\nIssue: https://github.com/dart-lang/sdk/issues/61635\n\nChange-Id: I7ca5cec0fd8725c432a01d51781fb14e803997dd\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/489482\nCommit-Queue: Alexander Markov \u003calexmarkov@google.com\u003e\nReviewed-by: Ryan Macnak \u003crmacnak@google.com\u003e\nReviewed-by: Slava Egorov \u003cvegorov@google.com\u003e\nReviewed-by: Tess Strickland \u003csstrickl@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/88496ba1c37fb6f67eac5920adb37eb8af0ee1f1\n"
    },
    {
      "commit": "d7f7ffdc1232d823ae1e2cc20c66429db5b05591",
      "tree": "93c6090492fd52fb979589b4cf64a0d4ff614095",
      "parents": [
        "b037f72f911d8b84583d0b24c81dfed9d2d5c0af"
      ],
      "author": {
        "name": "Paul Berry",
        "email": "paulberry@google.com",
        "time": "Thu Apr 09 12:01:46 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 12:03:39 2026 -0700"
      },
      "message": "[front end] Rename ClosureContext \u003d\u003e BodyInferenceContext.\n\nThe new nomenclature more accurately reflects the purpose of the\nclass, since it pertains to both closures and top level\ndeclarations. It also aligns better with the corresonding declarations\nin `_fe_analyzer_shared` and in the analyzer.\n\nChange-Id: I95ad71dbaf60804030470a2273636af86a6a6964\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/492760\nReviewed-by: Chloe Stefantsova \u003ccstefantsova@google.com\u003e\nCommit-Queue: Paul Berry \u003cpaulberry@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/9cb2707639a776df9245c9f42d5fff22fd4eeff3\n"
    },
    {
      "commit": "b037f72f911d8b84583d0b24c81dfed9d2d5c0af",
      "tree": "79e7b7f0073dbcfaa7876954d888b9a00fab9850",
      "parents": [
        "1da15c42fc2d7269d77295441cc43004df08a800"
      ],
      "author": {
        "name": "Danny Tuppeny",
        "email": "danny@tuppeny.com",
        "time": "Thu Apr 09 11:48:03 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 11:49:54 2026 -0700"
      },
      "message": "[analyzer] Remove old notifyDeclarationsTracker code\n\nThis also removes an additional call to `analysisDriverScheduler.notify()` on every file modification, which triggered an \"analyzing\" status message, which if written to disk inside the workspace could cause an infinite loop of analyzing messages.\n\nFixes https://github.com/dart-lang/sdk/issues/62785\n\nChange-Id: I4523125305807d42861a98fcc78df18ae3e8c1f0\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/484760\nReviewed-by: Brian Wilkerson \u003cbrianwilkerson@google.com\u003e\nCommit-Queue: Brian Wilkerson \u003cbrianwilkerson@google.com\u003e\nReviewed-by: Konstantin Shcheglov \u003cscheglov@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/accf6cab368e28d2eadbf4539463079bc377058a\n"
    },
    {
      "commit": "1da15c42fc2d7269d77295441cc43004df08a800",
      "tree": "b445a09fc5a7b1802c468692c40415da1f0fde27",
      "parents": [
        "3dfb2ec08895945a19bf591cb76a2a279bccb772"
      ],
      "author": {
        "name": "Brian Wilkerson",
        "email": "brianwilkerson@google.com",
        "time": "Thu Apr 09 10:22:46 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 10:23:29 2026 -0700"
      },
      "message": "Update make-field-not-final to handle declaring parameters\n\nCloses https://github.com/dart-lang/sdk/issues/63066\n\nChange-Id: Ice0ef6fb57af9042ddf97e8d65bbe68f0c32d34f\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/493864\nReviewed-by: Keerti Parthasarathy \u003ckeertip@google.com\u003e\nCommit-Queue: Brian Wilkerson \u003cbrianwilkerson@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/db8ff93f3255e6d01b7e471c3c59134b68064085\n"
    },
    {
      "commit": "3dfb2ec08895945a19bf591cb76a2a279bccb772",
      "tree": "c5b1cbf18c6bdb234f381a504e5be364f5b30a31",
      "parents": [
        "416721cff5c922a9f8575393b91fe37cd9dbe5ff"
      ],
      "author": {
        "name": "Brian Wilkerson",
        "email": "brianwilkerson@google.com",
        "time": "Thu Apr 09 10:21:20 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 10:23:26 2026 -0700"
      },
      "message": "Associate a fix with primaryConstructorBodyWithExpressionBody\n\nChange-Id: I35e478d4456732840cb37bca45cdab624592d394\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/493962\nCommit-Queue: Brian Wilkerson \u003cbrianwilkerson@google.com\u003e\nReviewed-by: Keerti Parthasarathy \u003ckeertip@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/2d13c5e1eec4542ee8ed5c01495a95b1eb1d68c7\n"
    },
    {
      "commit": "416721cff5c922a9f8575393b91fe37cd9dbe5ff",
      "tree": "b97b41750cf09385f8c1daabb6d07621e30f6b70",
      "parents": [
        "dccbda0f7f8c8d9d2850a975f02aa7c0cc3de6dc"
      ],
      "author": {
        "name": "DEPS Autoroller",
        "email": "dart-autoroll@skia-public.iam.gserviceaccount.com",
        "time": "Thu Apr 09 10:14:42 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 10:16:30 2026 -0700"
      },
      "message": "Roll Fuchsia SDK from 31.20260403.4.1 to 31.20260408.2.1\n\nIf this roll has caused a breakage, revert this CL and stop the roller\nusing the controls here:\nhttps://autoroll.skia.org/r/fuchsia-sdk-dart-sdk\nPlease CC fuchsia-3p-engprod@google.com on the revert to ensure that a human\nis aware of the problem.\n\nTo file a bug in Fuchsia SDK: https://bugs.fuchsia.dev/p/fuchsia/issues/list\nTo file a bug in Dart SDK: https://github.com/dart-lang/sdk/issues\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\n\nCq-Include-Trybots: luci.dart.try:vm-fuchsia-release-x64-try;luci.dart.try:vm-fuchsia-release-arm64-try\nChange-Id: I05e0d976a7f7ef7adfdba020d2b63022b2860e85\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/493720\nReviewed-by: Alexander Aprelev \u003caam@google.com\u003e\nReviewed-by: Alexander Markov \u003calexmarkov@google.com\u003e\nCommit-Queue: Alexander Markov \u003calexmarkov@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/c6b0eb9bbcbeaa4217251d6374cc2b28169c89df\n"
    },
    {
      "commit": "dccbda0f7f8c8d9d2850a975f02aa7c0cc3de6dc",
      "tree": "d0a74a5f17a0b4f67c9ac08377e71e3977b6699a",
      "parents": [
        "b63e994d78fff67435da5383368fd8e8d7a17d4b"
      ],
      "author": {
        "name": "Konstantin Shcheglov",
        "email": "scheglov@google.com",
        "time": "Thu Apr 09 09:34:54 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 09:36:50 2026 -0700"
      },
      "message": "FixCrash. When a type parameter is referenced in static context, instantiate it to InvalidType.\n\nWhen a class type parameter is referenced from a static member, the\nanalyzer could still instantiate it as an ordinary type parameter during\nresolution and summary building. That produced inconsistent invalid\nstates, led to follow-on type errors, and could crash later stages that\nexpected a real type or a consistently invalid one.\n\nTeach `ScopeContext` to track whether resolution is inside a static\nmember and use that information when instantiating type parameters. If\nthe referenced type parameter belongs to the enclosing instance context,\nresolve it to `InvalidType` instead.\n\nRoute both `NamedTypeResolver` and `reference_resolver` through this\nshared helper so fields, methods, and other named type paths handle\nstatic references consistently. This keeps the original\n`TYPE_PARAMETER_REFERENCED_BY_STATIC` diagnostic while preventing\nspurious assignment and return-type errors from cascading afterward.\n\nBug: https://github.com/dart-lang/sdk/issues/60745\nChange-Id: Ib9e685b967de5baa8a26b542be630c9fb0d6a96b\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/494040\nCommit-Queue: Konstantin Shcheglov \u003cscheglov@google.com\u003e\nReviewed-by: Paul Berry \u003cpaulberry@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/eb1b8ea8446f1b28f48325ad78d273d58b2ad063\n"
    },
    {
      "commit": "b63e994d78fff67435da5383368fd8e8d7a17d4b",
      "tree": "ef4c32e370cd7cdbaff09346adc88c222c1ed9a5",
      "parents": [
        "f1e4079ec8593bcb2bf2cbe614fa37c297df8036"
      ],
      "author": {
        "name": "DEPS Autoroller",
        "email": "dart-autoroll@skia-public.iam.gserviceaccount.com",
        "time": "Thu Apr 09 09:31:34 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 09:33:33 2026 -0700"
      },
      "message": "Roll BoringSSL from 24efad30d65a to 19e432969f57 (26 revisions)\n\nhttps://boringssl.googlesource.com/boringssl.git/+log/24efad30d65a..19e432969f57\n\n2026-04-07 davidben@google.com Avoid Windows cross-dll constexpr issues in mldsa_test.cc\n2026-04-07 nharper@chromium.org Support ML-DSA certificates in libpki\n2026-04-07 nharper@chromium.org Support ML-DSA in verify_signed_data.cc\n2026-04-07 chlily@google.com Raw Public Keys: Select and send RPK as client Certificate\n2026-04-07 chlily@google.com Raw Public Keys: Select and send RPK as server Certificate\n2026-04-07 davidben@google.com Don\u0027t rely on trailing NUL in ASN1_TIME_to_generalizedtime\n2026-04-07 rpolzer@google.com Remove commented-out test code.\n2026-04-07 davidben@google.com mldsa_test: Use Wycheproof test vectors more fully\n2026-04-07 davidben@google.com mldsa_test: Use a Traits struct instead of lots of template parameters\n2026-04-07 davidben@google.com Update Wycheproof test vectors\n2026-04-07 chlily@google.com Add new compliance policy profiles for CNSA 1.0 and 2.0\n2026-04-07 davidben@google.com OpenSSL Advisory: April 7th, 2026 (BoringSSL Not Affected)\n2026-04-07 davidben@google.com convert_wycheproof: Return an error instead of panicking\n2026-04-07 xfding@google.com rust: bssl-tls: Export keying materials\n2026-04-07 rpolzer@google.com crypto/x509 nc_email: sync to libpki\u0027s logic.\n2026-04-07 davidben@google.com Also test that DCs are not negotiated at TLS 1.1\n2026-04-06 davidben@google.com Fix pki/testdata/ocsp_unittest/make_ocsp.py for Python 3\n2026-04-06 davidben@google.com Fix pki/testdata/ocsp_unittest/annotate_test_data.py for Python 3\n2026-04-06 chlily@google.com Raw Public Keys: Configure and advertise available client cert types\n2026-04-06 chlily@google.com Raw Public Keys: Determine and send negotiated client_certificate_type\n2026-04-06 davidben@google.com Mark ssl.h as exporting ssl3.h and tls1.h\n2026-04-03 davidben@google.com draft-ietf-tls-esni is now RFC 9849\n2026-04-03 davidben@google.com Define OPENSSL_NO_UI_CONSOLE\n2026-04-03 davidben@google.com Switch callers within the library to EVP_PKEY_eq\n2026-04-03 davidben@google.com Add EVP_PKEY_eq and EVP_PKEY_parameters_eq\n2026-04-03 davidben@google.com Restore X509_check_private_key\u0027s error after EVP_PKEY_cmp narrowing\n\nIf this roll has caused a breakage, revert this CL and stop the roller\nusing the controls here:\nhttps://autoroll.skia.org/r/boringssl-dart-sdk\nPlease CC dart-engprod@google.com,dart-vm-gardener@rotations.google.com,dart-vm-team@google.com on the revert to ensure that a human\nis aware of the problem.\n\nTo file a bug in BoringSSL: https://crbug.com/boringssl/new\nTo file a bug in Dart SDK: https://github.com/dart-lang/sdk/issues\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\n\nTbr: dart-vm-gardener@rotations.google.com\nChange-Id: I2c45924f3a5389bf7cc45a9be58203e2dd5360f8\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/493721\nCommit-Queue: Alexander Markov \u003calexmarkov@google.com\u003e\nReviewed-by: Alexander Markov \u003calexmarkov@google.com\u003e\nReviewed-by: Alexander Aprelev \u003caam@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/565bfc138cea650a3636b06c5420ec911d866609\n"
    },
    {
      "commit": "f1e4079ec8593bcb2bf2cbe614fa37c297df8036",
      "tree": "7fd9158dbd618e5218e5bebf675f2364b7c610dc",
      "parents": [
        "bde7023601420e83c13052f364633a5713cea0bb"
      ],
      "author": {
        "name": "Alexander Markov",
        "email": "alexmarkov@google.com",
        "time": "Thu Apr 09 09:22:14 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 09:24:04 2026 -0700"
      },
      "message": "[vm,dyn_modules] Fix dynamic calls from host app to a dynamic module\n\nFix the following cases of incorrect optimizations:\n\n* In TFA, when anlyzing a dynamic call with unknown receiver type,\n  do not assume that all possible targets can be computed at compile\n  time (if there can be dynamically loaded classes).\n\n* In the AOT, disable optimizations for dynamic calls with unique\n  selectors (if there can be dynamically loaded classes).\n\nTEST\u003dpkg/dynamic_modules/test/data/dyn_call_from_host\n\nChange-Id: I39d620aae3c116de03d4a2a3fd61864d88c48c8e\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/493960\nCommit-Queue: Alexander Markov \u003calexmarkov@google.com\u003e\nReviewed-by: Sigmund Cherem \u003csigmund@google.com\u003e\nReviewed-by: Slava Egorov \u003cvegorov@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/56186c7e9619d5b9aab93511b48ae4373d2c843e\n"
    },
    {
      "commit": "bde7023601420e83c13052f364633a5713cea0bb",
      "tree": "85f492dde28567dd9c088c9df33ccbf3c939257d",
      "parents": [
        "dc420fcf18f6ae529d6bc897520f3b19460304cb"
      ],
      "author": {
        "name": "Konstantin Shcheglov",
        "email": "scheglov@google.com",
        "time": "Thu Apr 09 08:52:39 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 08:54:39 2026 -0700"
      },
      "message": "DeCo. With Feature.primary_constructors secondary constructors are implicitly const.\n\nBug: https://github.com/dart-lang/language/issues/4494\nChange-Id: Ifdad0e7878c9586266e4b49643e083d22313258e\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/493967\nCommit-Queue: Konstantin Shcheglov \u003cscheglov@google.com\u003e\nReviewed-by: Johnni Winther \u003cjohnniwinther@google.com\u003e\nReviewed-by: Brian Wilkerson \u003cbrianwilkerson@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/3da4d937cd0941306094f0946855b3e62bc7b050\n"
    },
    {
      "commit": "dc420fcf18f6ae529d6bc897520f3b19460304cb",
      "tree": "18aca37ea43144da327f0055592175f346200a29",
      "parents": [
        "e5d17cdd86782aa98120f5d8ad8dbe8e47dbe2c5"
      ],
      "author": {
        "name": "Alexander Markov",
        "email": "alexmarkov@google.com",
        "time": "Thu Apr 09 08:47:40 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 08:49:46 2026 -0700"
      },
      "message": "[vm] Fix msvc x64/arm64 cross-build\n\nThis is a follow-up to\nhttps://dart-review.googlesource.com/c/sdk/+/493921.\n\nTEST\u003dci\n\nChange-Id: I136845bc6b2ae0582100b8acadd9be0015d7694c\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/494022\nReviewed-by: Alexander Aprelev \u003caam@google.com\u003e\nCommit-Queue: Alexander Markov \u003calexmarkov@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/61f45d66b233f5daf0bc66a020296bc1c24db880\n"
    },
    {
      "commit": "e5d17cdd86782aa98120f5d8ad8dbe8e47dbe2c5",
      "tree": "c27ee27d8e5f1603996ce977f61ec71b9dae97a0",
      "parents": [
        "aae07f2eacb1daac8888b11453bb7428ab1ea99c"
      ],
      "author": {
        "name": "Sam Rawlins",
        "email": "srawlins@google.com",
        "time": "Thu Apr 09 08:01:50 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 08:04:00 2026 -0700"
      },
      "message": "DAS: lazily normalize paths in the session logger\n\nFixes https://github.com/dart-lang/sdk/issues/63009\n\nChange-Id: Ifdf4b4dc7216edc5294c7faaff614ba0a4f4ecc9\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/493965\nReviewed-by: Brian Wilkerson \u003cbrianwilkerson@google.com\u003e\nCommit-Queue: Samuel Rawlins \u003csrawlins@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/4c9e441b4d7cf20d7d61b1a35174b22e8bddafe7\n"
    },
    {
      "commit": "aae07f2eacb1daac8888b11453bb7428ab1ea99c",
      "tree": "02968d5fd8e6d2c33e24a54fc73831a648a6d73f",
      "parents": [
        "f70a2fb6463b4b8c859439b5e87d6fd9fc65d887"
      ],
      "author": {
        "name": "DEPS Autoroller",
        "email": "dart-autoroll@skia-public.iam.gserviceaccount.com",
        "time": "Thu Apr 09 07:57:22 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 07:58:54 2026 -0700"
      },
      "message": "Roll Fuchsia GN SDK from JLBh4Z9PKsjIJcqDU... to SEfYx3xgueX3aFAY3...\n\nIf this roll has caused a breakage, revert this CL and stop the roller\nusing the controls here:\nhttps://autoroll.skia.org/r/fuchsia-gn-sdk-dart-sdk\nPlease CC fuchsia-3p-engprod@google.com on the revert to ensure that a human\nis aware of the problem.\n\nTo file a bug in Fuchsia GN SDK: https://bugs.fuchsia.dev/p/fuchsia/issues/list\nTo file a bug in Dart SDK: https://github.com/dart-lang/sdk/issues\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\n\nCq-Include-Trybots: luci.dart.try:vm-fuchsia-release-x64-try;luci.dart.try:vm-fuchsia-release-arm64-try\nChange-Id: Ie2e35c28f938adbf7ead5c6b93cf79f39568d314\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/493981\nCommit-Queue: Alexander Markov \u003calexmarkov@google.com\u003e\nReviewed-by: Alexander Aprelev \u003caam@google.com\u003e\nReviewed-by: Alexander Markov \u003calexmarkov@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/b604a25e24c58ceca0b33fbe0b17b266ba84d4e6\n"
    },
    {
      "commit": "f70a2fb6463b4b8c859439b5e87d6fd9fc65d887",
      "tree": "2a2dd19fcae81682931c1b1f36cd3b3a2909fd01",
      "parents": [
        "347d36413463227bc0660dea3170d6bcd3a1212d"
      ],
      "author": {
        "name": "Kate Lovett",
        "email": "katelovett@google.com",
        "time": "Thu Apr 09 09:12:25 2026 -0500"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 07:58:52 2026 -0700"
      },
      "message": "Remove last material dependency from cupertino tests (#184781)\n\nThis removes the last material dependency from the cupertino test\nlibrary. It refactors tests that were relying on SelectableText.\n\n**Code freeze override: this is necessary to complete decoupling, and\nwill not cause cupertino_ui to be incompatible with the upcoming stable\nrelease.**\n\n## Pre-launch Checklist\n\n- [x] I read the [Contributor Guide] and followed the process outlined\nthere for submitting PRs.\n- [x] I read the [AI contribution guidelines] and understand my\nresponsibilities, or I am not using AI tools.\n- [x] I read the [Tree Hygiene] wiki page, which explains my\nresponsibilities.\n- [x] I read and followed the [Flutter Style Guide], including [Features\nwe expect every widget to implement].\n- [x] I signed the [CLA].\n- [x] I listed at least one issue that this PR fixes in the description\nabove.\n- [x] I updated/added relevant documentation (doc comments with `///`).\n- [x] I added new tests to check the change I am making, or this PR is\n[test-exempt].\n- [x] I followed the [breaking change policy] and added [Data Driven\nFixes] where supported.\n- [x] All existing and new tests are passing.\n\nIf you need help, consider asking for advice on the #hackers-new channel\non [Discord].\n\nIf this change needs to override an active code freeze, provide a\ncomment explaining why. The code freeze workflow can be overridden by\ncode reviewers. See pinned issues for any active code freezes with\nguidance.\n\n**Note**: The Flutter team is currently trialing the use of [Gemini Code\nAssist for\nGitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).\nComments from the `gemini-code-assist` bot should not be taken as\nauthoritative feedback from the Flutter team. If you find its comments\nuseful you can update your code accordingly, but if you are unsure or\ndisagree with the feedback, please feel free to wait for a Flutter team\nmember\u0027s review for guidance on which automated comments should be\naddressed.\n\n\u003c!-- Links --\u003e\n[Contributor Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview\n[AI contribution guidelines]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#ai-contribution-guidelines\n[Tree Hygiene]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md\n[test-exempt]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests\n[Flutter Style Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md\n[Features we expect every widget to implement]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement\n[CLA]: https://cla.developers.google.com/\n[flutter/tests]: https://github.com/flutter/tests\n[breaking change policy]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes\n[Discord]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md\n[Data Driven Fixes]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/81c87ea165df95681eb3a07e1f442983bf0e0e17\n"
    },
    {
      "commit": "347d36413463227bc0660dea3170d6bcd3a1212d",
      "tree": "4e72f488f3860d545eeb53251df46a86ebae9830",
      "parents": [
        "5075717aa09b895baa70cfa60012627c704e5c96"
      ],
      "author": {
        "name": "engine-flutter-autoroll",
        "email": "engine-flutter-autoroll@skia.org",
        "time": "Thu Apr 09 07:46:27 2026 -0400"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 07:20:13 2026 -0700"
      },
      "message": "Roll Skia from 7c46cb639dba to 4d0f5389e131 (7 revisions) (#184812)\n\nhttps://skia.googlesource.com/skia.git/+log/7c46cb639dba..4d0f5389e131\n\n2026-04-09\nrecipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com\nRoll recipe dependencies (trivial).\n2026-04-09\nrecipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com\nRoll recipe dependencies (trivial).\n2026-04-09 skia-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE\nfrom 9b51adf4650a to 641c0d0e1bbd (15 revisions)\n2026-04-09 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia\nInfra from 61875882dca4 to ed695f1e8369 (14 revisions)\n2026-04-09 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Dawn\nfrom 09dfd1013b51 to 4867e85a01c1 (11 revisions)\n2026-04-09\nrecipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com\nRoll recipe dependencies (trivial).\n2026-04-09 skia-autoroll@skia-public.iam.gserviceaccount.com Roll skcms\nfrom 92c79500bad2 to 15db2430b628 (1 revision)\n\nIf this roll has caused a breakage, revert this CL and stop the roller\nusing the controls here:\nhttps://autoroll.skia.org/r/skia-flutter-autoroll\nPlease CC egdaniel@google.com,jimgraham@google.com,kjlubick@google.com\non the revert to ensure that a human\nis aware of the problem.\n\nTo file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry\nTo file a bug in Flutter:\nhttps://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\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/dd400f2dcfdba5c7f8c1d778be924ba7c311c155\n"
    },
    {
      "commit": "5075717aa09b895baa70cfa60012627c704e5c96",
      "tree": "2fbc70c02e389f5e225d3d7493235aeee5d88ec6",
      "parents": [
        "822039f270d2aa6774b94ca715b5132e5e733dc3"
      ],
      "author": {
        "name": "Brian Wilkerson",
        "email": "brianwilkerson@google.com",
        "time": "Thu Apr 09 06:42:00 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 06:55:01 2026 -0700"
      },
      "message": "Convert more pieces of the rename refactor\n\nThis converts three more of the rename classes to use a ChangeBuilder.\nThere are still several more to come.\n\nChange-Id: Ie03a356855a7ec1bbe602ab9ac824b10dc46834a\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/494000\nCommit-Queue: Brian Wilkerson \u003cbrianwilkerson@google.com\u003e\nReviewed-by: Samuel Rawlins \u003csrawlins@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/d804fca4e82310366b59c09cb3ce33d32faafb1a\n"
    },
    {
      "commit": "822039f270d2aa6774b94ca715b5132e5e733dc3",
      "tree": "0cdf1f53b1933b85132742120b5aa441e43a30b3",
      "parents": [
        "d2c746e47e92a63038c248c8c506767f431c9adc"
      ],
      "author": {
        "name": "Johnni Winther",
        "email": "johnniwinther@google.com",
        "time": "Thu Apr 09 06:22:54 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 06:25:25 2026 -0700"
      },
      "message": "[cfe] Include (super)-initializing-formal modifier in ast-to-text\n\nThis adds the initializer-formal and super-initializer-formal modifiers to the ast-to-text output.\n\nThese flags are used by backends, so we should expect when these are present.\n\nTriggered by discussion on https://github.com/dart-lang/sdk/issues/62645\n\nTEST\u003dexisting\n\nChange-Id: I3eec128c912249bc907931bcf01b52c0ec1eda62\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/494080\nReviewed-by: Jens Johansen \u003cjensj@google.com\u003e\nReviewed-by: Alexander Markov \u003calexmarkov@google.com\u003e\nCommit-Queue: Johnni Winther \u003cjohnniwinther@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/85991680acb69f849bcce8e5ac9a355af47bb74f\n"
    },
    {
      "commit": "d2c746e47e92a63038c248c8c506767f431c9adc",
      "tree": "3894624f1f323647e16411a0b878941cedb88a4d",
      "parents": [
        "224495f1396f09d4f438a806f655f50a822fd162"
      ],
      "author": {
        "name": "Jens Johansen",
        "email": "jensj@google.com",
        "time": "Thu Apr 09 06:21:44 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 06:25:22 2026 -0700"
      },
      "message": "[analyzer] Mark EnumSet._checkIndex for inlining\n\nWhen analyzing the CFE `EnumSet._checkIndex` is called ~6.8 million\ntimes and the VM has decided to not inline it.\n\nAdding a pragma asking the VM to inline it costs 8 bytes in filesize\nfor the aot compile of stable_analysis but reduces the runtime cost\nwith ~175 million instructions.\n\nThat\u0027s more than expected: I\u0027d have expected the prologue, stack\noverflow check and return to go away which would be 10 instructions per\ncall or ~68 million instructions.\nThis causes the VM to also inline `EnumSet.[]` - and then apparently\nthere is a relativly good amount of overhead of the calls themselves\n(moving parameters etc I guess).\n\nChange-Id: Ic615971d9fe980a263d962f877b7f5e1f36d79e6\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/494081\nReviewed-by: Johnni Winther \u003cjohnniwinther@google.com\u003e\nCommit-Queue: Jens Johansen \u003cjensj@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/ac4cf4f21bfb074bd7b7d4a6ad955951a35a0475\n"
    },
    {
      "commit": "224495f1396f09d4f438a806f655f50a822fd162",
      "tree": "2001f7bab0ea6c1cd4b14e9b612213c9b919fd63",
      "parents": [
        "3b77261fa6d9189d03fa9ceae393a078b2719f19"
      ],
      "author": {
        "name": "Michael Goderbauer",
        "email": "goderbauer@google.com",
        "time": "Thu Apr 09 09:07:31 2026 +0200"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 04:31:05 2026 -0700"
      },
      "message": "Make `windowing_test` follow repo analyzer rules (#184752)\n\nThe `windowing_test` had an empty `analysis_options.yaml` file checked\nin that disabled the top-level analysis_options.yaml file and with it\nthe repo-wide rule set. As far as I can tell, there isn\u0027t a good reason\nwhy the repo rules shouldn\u0027t apply here. This PR deletes the custom\n`analysis_options.yaml` file and makes the code adhere to the top-level\nrule set. Any violations were fixed by Gemini.\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/d996d16d7e4f54c18bb8ac9ebfca897260f8500f\n"
    },
    {
      "commit": "3b77261fa6d9189d03fa9ceae393a078b2719f19",
      "tree": "7dfd7f0a89d412654c3a8f86de453f5de8a54255",
      "parents": [
        "cf5ede2595e66484a36856678da899e4503699a8"
      ],
      "author": {
        "name": "Mohellebi Abdessalem",
        "email": "116356835+AbdeMohlbi@users.noreply.github.com",
        "time": "Thu Apr 09 07:45:13 2026 +0100"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 04:31:02 2026 -0700"
      },
      "message": "Improve documentation of `frictionFactor` function (#184509)\n\nFixes #95367\n## Pre-launch Checklist\n\n- [x] I read the [Contributor Guide] and followed the process outlined\nthere for submitting PRs.\n- [x] I read the [AI contribution guidelines] and understand my\nresponsibilities, or I am not using AI tools.\n- [x] I read the [Tree Hygiene] wiki page, which explains my\nresponsibilities.\n- [x] I read and followed the [Flutter Style Guide], including [Features\nwe expect every widget to implement].\n- [x] I signed the [CLA].\n- [x] I listed at least one issue that this PR fixes in the description\nabove.\n- [x] I updated/added relevant documentation (doc comments with `///`).\n- [ ] I added new tests to check the change I am making, or this PR is\n[test-exempt].\n- [x] I followed the [breaking change policy] and added [Data Driven\nFixes] where supported.\n- [x] All existing and new tests are passing.\n\nIf you need help, consider asking for advice on the #hackers-new channel\non [Discord].\n\n**Note**: The Flutter team is currently trialing the use of [Gemini Code\nAssist for\nGitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).\nComments from the `gemini-code-assist` bot should not be taken as\nauthoritative feedback from the Flutter team. If you find its comments\nuseful you can update your code accordingly, but if you are unsure or\ndisagree with the feedback, please feel free to wait for a Flutter team\nmember\u0027s review for guidance on which automated comments should be\naddressed.\n\n\u003c!-- Links --\u003e\n[Contributor Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview\n[AI contribution guidelines]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#ai-contribution-guidelines\n[Tree Hygiene]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md\n[test-exempt]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests\n[Flutter Style Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md\n[Features we expect every widget to implement]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement\n[CLA]: https://cla.developers.google.com/\n[flutter/tests]: https://github.com/flutter/tests\n[breaking change policy]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes\n[Discord]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md\n[Data Driven Fixes]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/39e21ef20e11c07983adba06daa07a6a638780cb\n"
    },
    {
      "commit": "cf5ede2595e66484a36856678da899e4503699a8",
      "tree": "e8634def1306af51e343f344bfad75434eea402a",
      "parents": [
        "a32536c6a33aa6bff63eec5df7b1b343758e5e17"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Thu Apr 09 03:40:46 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 03:42:32 2026 -0700"
      },
      "message": "Bump github/codeql-action from 4.32.4 to 4.35.1 in the github-actions group\n\nCloses https://github.com/dart-lang/sdk/pull/63085\n\nGitOrigin-RevId: 52e7e1eb2c7151494c5f980099de6fe9673395de\nChange-Id: Ifd115c36d79534954e9264a41badcd08bf055545\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/491941\nReviewed-by: Alexander Thomas \u003cathom@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/9170f9d1c75c3f588137e8c91ef63551c08a881c\n"
    },
    {
      "commit": "a32536c6a33aa6bff63eec5df7b1b343758e5e17",
      "tree": "1c6265414cf259629d1cf26b936e7277357e5dc3",
      "parents": [
        "95b867862a1208a812cd2012531ea8b5424ba3fd"
      ],
      "author": {
        "name": "Johnni Winther",
        "email": "johnniwinther@google.com",
        "time": "Thu Apr 09 03:14:44 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 03:16:28 2026 -0700"
      },
      "message": "[cfe][Augmentations] Remove ExperimentalFlag.enabledVersion\n\nThis property was always identical to ExperimentalFlag.experimentEnabledVersion.\n\nChange-Id: Id02ab4ccb484c8807ac96209ddaf0a64be982a43\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/493800\nReviewed-by: Jens Johansen \u003cjensj@google.com\u003e\nCommit-Queue: Johnni Winther \u003cjohnniwinther@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/2e3107ad25b40698b8ee2d825cbe98be9f318199\n"
    },
    {
      "commit": "95b867862a1208a812cd2012531ea8b5424ba3fd",
      "tree": "3ba6a188abf705cc293d47c052a763cf1eb0ba01",
      "parents": [
        "fcb81f6aaa8ac1365468ba44d66f41c42acc7758"
      ],
      "author": {
        "name": "Johnni Winther",
        "email": "johnniwinther@google.com",
        "time": "Thu Apr 09 03:02:40 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Thu Apr 09 03:04:37 2026 -0700"
      },
      "message": "[cfe][Augmentations] Make ScannerConfiguration arguments required\n\nThis makes the arguments to `ScannerConfiguration` required and uses the current enabled-by-default state as default.\n\nFurthermore, an extension method is added for `ExperimentalFeatures` (and object already required by the parser) that creates the `ScannerConfiguration` based on the enabled features. This method is used throughout the analyzer and CFE, ensuring that the scanner is set up consistently with the parser.\n\nChange-Id: Id51456d5a547b06d0925865e35e01d9dc7d65381\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/493760\nReviewed-by: Jens Johansen \u003cjensj@google.com\u003e\nCommit-Queue: Johnni Winther \u003cjohnniwinther@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/57c326b76d7316f2f9bf1b1299fb3cd7571cf1c3\n"
    },
    {
      "commit": "fcb81f6aaa8ac1365468ba44d66f41c42acc7758",
      "tree": "7d505475e4057a9c695d5d0a8f914324de29cab4",
      "parents": [
        "caaa5deb78f8ff1ce413ecec6537c740fdc7255d"
      ],
      "author": {
        "name": "engine-flutter-autoroll",
        "email": "engine-flutter-autoroll@skia.org",
        "time": "Thu Apr 09 00:16:26 2026 -0400"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Wed Apr 08 22:31:27 2026 -0700"
      },
      "message": "Roll Skia from d2b0bd12576a to 7c46cb639dba (1 revision) (#184796)\n\nhttps://skia.googlesource.com/skia.git/+log/d2b0bd12576a..7c46cb639dba\n\n2026-04-09 skia-autoroll@skia-public.iam.gserviceaccount.com Roll\nvulkan-deps from ae85abaff72f to eba20b140bce (8 revisions)\n\nIf this roll has caused a breakage, revert this CL and stop the roller\nusing the controls here:\nhttps://autoroll.skia.org/r/skia-flutter-autoroll\nPlease CC egdaniel@google.com,jimgraham@google.com,kjlubick@google.com\non the revert to ensure that a human\nis aware of the problem.\n\nTo file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry\nTo file a bug in Flutter:\nhttps://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\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/721a6b5d3e25ede0e57f022e9c7d75492249d23e\n"
    },
    {
      "commit": "caaa5deb78f8ff1ce413ecec6537c740fdc7255d",
      "tree": "5921c81a2881d6c36b96c8f62d523d512828c10f",
      "parents": [
        "9c5ef10947c67bf3b4d3480046652487ba7ed211"
      ],
      "author": {
        "name": "engine-flutter-autoroll",
        "email": "engine-flutter-autoroll@skia.org",
        "time": "Thu Apr 09 00:12:40 2026 -0400"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Wed Apr 08 22:31:24 2026 -0700"
      },
      "message": "Roll Fuchsia GN SDK from JLBh4Z9PKsjIJcqDU... to SEfYx3xgueX3aFAY3... (#184797)\n\nIf this roll has caused a breakage, revert this CL and stop the roller\nusing the controls here:\nhttps://autoroll.skia.org/r/fuchsia-gn-sdk-flutter\nPlease CC chrome-fuchsia-engprod@google.com,jimgraham@google.com on the\nrevert to ensure that a human\nis aware of the problem.\n\nTo file a bug in Flutter:\nhttps://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\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/51f7ba2cbf6f4280004c96dec756132a5ebc9f85\n"
    },
    {
      "commit": "9c5ef10947c67bf3b4d3480046652487ba7ed211",
      "tree": "26efe1fceede14da9833e5a9d4ddb6021fbb8733",
      "parents": [
        "d6f49556056e0d10a9dba785df0c3f13525beca9"
      ],
      "author": {
        "name": "Ryan Macnak",
        "email": "rmacnak@google.com",
        "time": "Wed Apr 08 20:29:40 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Wed Apr 08 20:31:46 2026 -0700"
      },
      "message": "[vm, ffi] Fix Fuchsia ARM64 build.\n\nTEST\u003dci\nBug: https://github.com/dart-lang/sdk/issues/52579\nCq-Include-Trybots: luci.dart.try:vm-fuchsia-release-x64-try,vm-fuchsia-release-arm64-try\nChange-Id: I3e3377d0c973614b83664bfd704d5efe532d329f\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/493968\nCommit-Queue: Liam Appelbe \u003cliama@google.com\u003e\nAuto-Submit: Ryan Macnak \u003crmacnak@google.com\u003e\nReviewed-by: Liam Appelbe \u003cliama@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/a0ab33ac522e970326131e82f1cd917bcdba9533\n"
    },
    {
      "commit": "d6f49556056e0d10a9dba785df0c3f13525beca9",
      "tree": "728ef4e90bb444891d01c361e0c57ad6c0259d1f",
      "parents": [
        "3a593878dd16f1b6e44598c311534b8172a85ed1"
      ],
      "author": {
        "name": "Kate Lovett",
        "email": "katelovett@google.com",
        "time": "Wed Apr 08 20:06:21 2026 -0500"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Wed Apr 08 18:44:51 2026 -0700"
      },
      "message": "Fixed freeze flow (#184793)\n\nSimplifies the freeze workflow, reduces complexity.\nI confirmed it works (phew), which also clarified the difference between\n`pull_request` and `pull_request_target`.\n\nIf this were to use `pull_request`, authors could change the workflow in\na PR and CI would run off the version in the PR, potentially overriding\nthe freeze.\n`pull_request_target` protects against that by only running the workflow\nbased on the current version on master. Much safer.\n\nI tested this out myself, by setting it to `pull_request` and running\ndirectly from this PR:\n\n\u003cimg width\u003d\"500\" alt\u003d\"Screenshot 2026-04-08 at 7 19 31 PM\"\nsrc\u003d\"https://github.com/user-attachments/assets/a5557332-caae-417e-97be-403d51bea92d\"\n/\u003e\n\nThis confirms it works, and that we need to use `pull_request_target` so\nPRs run the source of truth from the main branch.\n\nOn a separate note: I wish we had analysis over yml files. Would have\nsaved a lot of time here.\n\n## Pre-launch Checklist\n\n- [x] I read the [Contributor Guide] and followed the process outlined\nthere for submitting PRs.\n- [x] I read the [AI contribution guidelines] and understand my\nresponsibilities, or I am not using AI tools.\n- [x] I read the [Tree Hygiene] wiki page, which explains my\nresponsibilities.\n- [x] I read and followed the [Flutter Style Guide], including [Features\nwe expect every widget to implement].\n- [x] I signed the [CLA].\n- [x] I listed at least one issue that this PR fixes in the description\nabove.\n- [x] I updated/added relevant documentation (doc comments with `///`).\n- [x] I added new tests to check the change I am making, or this PR is\n[test-exempt].\n- [x] I followed the [breaking change policy] and added [Data Driven\nFixes] where supported.\n- [x] All existing and new tests are passing.\n\nIf you need help, consider asking for advice on the #hackers-new channel\non [Discord].\n\nIf this change needs to override an active code freeze, provide a\ncomment explaining why. The code freeze workflow can be overridden by\ncode reviewers. See pinned issues for any active code freezes with\nguidance.\n\n**Note**: The Flutter team is currently trialing the use of [Gemini Code\nAssist for\nGitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).\nComments from the `gemini-code-assist` bot should not be taken as\nauthoritative feedback from the Flutter team. If you find its comments\nuseful you can update your code accordingly, but if you are unsure or\ndisagree with the feedback, please feel free to wait for a Flutter team\nmember\u0027s review for guidance on which automated comments should be\naddressed.\n\n\u003c!-- Links --\u003e\n[Contributor Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview\n[AI contribution guidelines]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#ai-contribution-guidelines\n[Tree Hygiene]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md\n[test-exempt]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests\n[Flutter Style Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md\n[Features we expect every widget to implement]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement\n[CLA]: https://cla.developers.google.com/\n[flutter/tests]: https://github.com/flutter/tests\n[breaking change policy]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes\n[Discord]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md\n[Data Driven Fixes]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/0f380cd42e9672e3c77224f35c7d3c269c519a81\n"
    },
    {
      "commit": "3a593878dd16f1b6e44598c311534b8172a85ed1",
      "tree": "cf82c568c798d63a7744dac23fb5e3922c81596f",
      "parents": [
        "935b5aa652093ce12d1b18ed6e9ebdc66f09ca42"
      ],
      "author": {
        "name": "flutter-pub-roller-bot",
        "email": "137456488+flutter-pub-roller-bot@users.noreply.github.com",
        "time": "Wed Apr 08 17:48:39 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Wed Apr 08 18:44:48 2026 -0700"
      },
      "message": "Roll pub packages (#184795)\n\nThis PR was generated by `flutter update-packages --force-upgrade`.\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/87b1ec26e3dcd734cfd1d8ebe0c47129287e6c50\n"
    },
    {
      "commit": "935b5aa652093ce12d1b18ed6e9ebdc66f09ca42",
      "tree": "c40e4383f5b8a8236f4c2529f882ee1da24c50a6",
      "parents": [
        "95ffb63eaf075547ff2072f3afab7579d5de443f"
      ],
      "author": {
        "name": "engine-flutter-autoroll",
        "email": "engine-flutter-autoroll@skia.org",
        "time": "Wed Apr 08 20:30:39 2026 -0400"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Wed Apr 08 18:11:00 2026 -0700"
      },
      "message": "Roll Skia from e9ed4fc9f154 to d2b0bd12576a (36 revisions) (#184791)\n\nRoll Skia from e9ed4fc9f154 to d2b0bd12576a (36 revisions)\n\nhttps://skia.googlesource.com/skia.git/+log/e9ed4fc9f154..d2b0bd12576a\n\n2026-04-08 thomsmit@google.com [graphite] add textureSize intrinsic\n2026-04-08\nrecipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com\nRoll recipe dependencies (trivial).\n2026-04-08 jmbetancourt@google.com [skcapture] Correct setSurfaceBase\ncall to set the base drawing canvas\n2026-04-08 sergiog@microsoft.com [rust bmp] Fix issue on rust icc\nparsing detected by fuzzer\n2026-04-08\nrecipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com\nRoll recipe dependencies (trivial).\n2026-04-08 smirnov-maxim@yandex-team.ru Fixed Graphite non-MSAA clipping\nbug\n2026-04-08 egdaniel@google.com [Graphite] Bin Uniform Buffer binding\nsizes into powers of 2.\n2026-04-08 robertphillips@google.com Update\nPrecompileContext::getPipelineLabel to, optionally, return the\nuniqueHash.\n2026-04-08 bungeman@google.com Fix SkFontDescriptor kSlant documentation\n2026-04-08 bungeman@google.com Move GrD3DDescriptorHeap::GenID out of\nheader\n2026-04-08\nrecipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com\nRoll recipe dependencies (trivial).\n2026-04-08 michaelludwig@google.com [graphite] Consolidate kClear blends\nto kSrc w/ transparent color\n2026-04-08 egdaniel@google.com Add missing optional include.\n2026-04-08 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia\nInfra from 84b209ba05f1 to 61875882dca4 (14 revisions)\n2026-04-08 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Dawn\nfrom 6e7fb3d96c0a to 09dfd1013b51 (11 revisions)\n2026-04-08 skia-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE\nfrom 395468796255 to 9b51adf4650a (8 revisions)\n2026-04-08\nrecipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com\nRoll recipe dependencies (trivial).\n2026-04-08 skia-autoroll@skia-public.iam.gserviceaccount.com Roll\nvulkan-deps from 8f5de81f5f44 to ae85abaff72f (4 revisions)\n2026-04-08 arthursonzogni@chromium.org Enable PartitionAlloc by default\n2026-04-07 nicolettep@google.com Revert \"Reland^2 \"Fix VkTestUtils\u0027s\nVulkanPreferredFeatures usage\"\"\n2026-04-07 kjlubick@google.com Release Canvaskit v0.41.1\n2026-04-07 bungeman@google.com Use SkEndianSwap32 to convert DirectWrite\ntags\n2026-04-07 thomsmit@google.com [graphite] Add polyline helper class\n2026-04-07 thomsmit@google.com [graphite] Enable textureRead in SkSL\nfrag shader\n2026-04-07 kjlubick@google.com Use dedicated AVX512 intrinsics for\nload_8888\n2026-04-07\nrecipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com\nRoll recipe dependencies (trivial).\n2026-04-07 lehoangquyen@chromium.org Graphite: Make Dawn debuggable on\nWindows\n2026-04-07 jmbetancourt@google.com Log errors during texture creation in\nGanesh Vulkan in Android.\n2026-04-07 anuszel@google.com Merge 4 release notes into\nRELEASE_NOTES.md\n2026-04-07 anuszel@google.com Update Skia milestone to 149\n2026-04-07\nlouhi-prod-1-6316342352543744@louhi-prod-1.iam.gserviceaccount.com\nUpdate fiddler-base for 2321f0a3bec5\n2026-04-07 nicolettep@google.com [graphite] Allow assignment of a max\nduration to spend purging resources\n2026-04-07 nicolettep@google.com Reland^2 \"Fix VkTestUtils\u0027s\nVulkanPreferredFeatures usage\"\n2026-04-07 drott@chromium.org [Fontations] Fix\ntest_shifted_named_instance_index expectation\n2026-04-07 kjlubick@google.com Temporarily remove Bazel from the CQ\n2026-04-07 drott@chromium.org [Fontations] Roll Fontations\n\nIf this roll has caused a breakage, revert this CL and stop the roller\nusing the controls here:\nhttps://autoroll.skia.org/r/skia-flutter-autoroll\nPlease CC egdaniel@google.com,jimgraham@google.com,kjlubick@google.com\non the revert to ensure that a human\nis aware of the problem.\n\nTo file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry\nTo file a bug in Flutter:\nhttps://github.com/flutter/flutter/issues/new/choose\n\n...\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/96cd112292d0b4d89cfcf7a30539fd12cec74c33\n"
    },
    {
      "commit": "95ffb63eaf075547ff2072f3afab7579d5de443f",
      "tree": "d1e7f508c31fc830a4de145ccb24220d88ba3ee2",
      "parents": [
        "69281d10e788d651d765bb2d1a9a149e7a43364f"
      ],
      "author": {
        "name": "Camille Simon",
        "email": "43054281+camsim99@users.noreply.github.com",
        "time": "Wed Apr 08 16:58:52 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Wed Apr 08 17:46:53 2026 -0700"
      },
      "message": "[Android] Allow sensitive content to gracefully fail when unregistering host before registering (#184789)\n\nFixes https://github.com/flutter/flutter/issues/184187 by replacing an\nassert intended to catch internal implementation details with a graceful\nfail so that unit tests aren\u0027t impacted.\n\n## Pre-launch Checklist\n\n- [x] I read the [Contributor Guide] and followed the process outlined\nthere for submitting PRs.\n- [x] I read the [AI contribution guidelines] and understand my\nresponsibilities, or I am not using AI tools.\n- [x] I read the [Tree Hygiene] wiki page, which explains my\nresponsibilities.\n- [x] I read and followed the [Flutter Style Guide], including [Features\nwe expect every widget to implement].\n- [x] I signed the [CLA].\n- [x] I listed at least one issue that this PR fixes in the description\nabove.\n- [x] I updated/added relevant documentation (doc comments with `///`).\n- [x] I added new tests to check the change I am making, or this PR is\n[test-exempt].\n- [x] I followed the [breaking change policy] and added [Data Driven\nFixes] where supported.\n- [ ] All existing and new tests are passing.\n\nIf you need help, consider asking for advice on the #hackers-new channel\non [Discord].\n\nIf this change needs to override an active code freeze, provide a\ncomment explaining why. The code freeze workflow can be overridden by\ncode reviewers. See pinned issues for any active code freezes with\nguidance.\n\n**Note**: The Flutter team is currently trialing the use of [Gemini Code\nAssist for\nGitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).\nComments from the `gemini-code-assist` bot should not be taken as\nauthoritative feedback from the Flutter team. If you find its comments\nuseful you can update your code accordingly, but if you are unsure or\ndisagree with the feedback, please feel free to wait for a Flutter team\nmember\u0027s review for guidance on which automated comments should be\naddressed.\n\n\u003c!-- Links --\u003e\n[Contributor Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview\n[AI contribution guidelines]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#ai-contribution-guidelines\n[Tree Hygiene]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md\n[test-exempt]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests\n[Flutter Style Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md\n[Features we expect every widget to implement]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement\n[CLA]: https://cla.developers.google.com/\n[flutter/tests]: https://github.com/flutter/tests\n[breaking change policy]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes\n[Discord]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md\n[Data Driven Fixes]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/ea46f69492e9a4c16b9f0169121d5063d501c722\n"
    },
    {
      "commit": "69281d10e788d651d765bb2d1a9a149e7a43364f",
      "tree": "b515b797ca89a0aa6983b343d6138a6f4a1368df",
      "parents": [
        "9e4da4629840b0f1eb2168c29486483ed9e5a135"
      ],
      "author": {
        "name": "Konstantin Shcheglov",
        "email": "scheglov@google.com",
        "time": "Wed Apr 08 17:28:26 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Wed Apr 08 17:31:49 2026 -0700"
      },
      "message": "FixCrash. Fix inferUndefinedExpressionType() to handle missing positional / named record type field.\n\nChange-Id: Ie3758d195f8f4e352880616c50b1f28a7337eeb5\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/493964\nReviewed-by: Brian Wilkerson \u003cbrianwilkerson@google.com\u003e\nCommit-Queue: Konstantin Shcheglov \u003cscheglov@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/9bec262263bd6dd9063ec35f659f289a7de4d032\n"
    },
    {
      "commit": "9e4da4629840b0f1eb2168c29486483ed9e5a135",
      "tree": "c2c82ceabe90d3414707b979e682e1f8c795a088",
      "parents": [
        "0d57a7a77f1909a5c3e1eb2444045b3e071afe4a"
      ],
      "author": {
        "name": "Kishan Rathore",
        "email": "34465683+rkishan516@users.noreply.github.com",
        "time": "Thu Apr 09 04:43:39 2026 +0530"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Wed Apr 08 17:06:52 2026 -0700"
      },
      "message": "Refactor: remove material from autocomplete_test, scrollable_restoration_test, semantics_tester_generate_test_semantics_expression_for_current_semantics_tree_test (#184615)\n\nThis PR removes Material imports from autocomplete_test,\nscrollable_restoration_test,\nsemantics_tester_generate_test_semantics_expression_for_current_semantics_tree_test.\n\npart of: https://github.com/flutter/flutter/issues/177415\n\n## Pre-launch Checklist\n\n- [x] I read the [Contributor Guide] and followed the process outlined\nthere for submitting PRs.\n- [x] I read the [Tree Hygiene] wiki page, which explains my\nresponsibilities.\n- [x] I read and followed the [Flutter Style Guide], including [Features\nwe expect every widget to implement].\n- [x] I signed the [CLA].\n- [x] I listed at least one issue that this PR fixes in the description\nabove.\n- [x] I updated/added relevant documentation (doc comments with `///`).\n- [x] I added new tests to check the change I am making, or this PR is\n[test-exempt].\n- [x] I followed the [breaking change policy] and added [Data Driven\nFixes] where supported.\n- [x] All existing and new tests are passing.\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/894e391da448e3a9ce428a84a0f46ab347c617ef\n"
    },
    {
      "commit": "0d57a7a77f1909a5c3e1eb2444045b3e071afe4a",
      "tree": "85cee9bb30e17b9c235e7dabc8a8526fd788a480",
      "parents": [
        "4eabaca1cb2fa34fc9022142336b15509bb0883e"
      ],
      "author": {
        "name": "Justin McCandless",
        "email": "jmccandless@google.com",
        "time": "Wed Apr 08 14:19:16 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Wed Apr 08 17:06:50 2026 -0700"
      },
      "message": "Warn about the use of TestSemantics (#184369)\n\nAs decided in\nhttps://github.com/flutter/flutter/pull/183790#issuecomment-4158558039,\nwe should avoid using TestSemantics. Let\u0027s communicate that for now\nuntil we can remove the class entirely.\n\nPart of https://github.com/flutter/flutter/issues/184367.\n\n---------\n\nCo-authored-by: gemini-code-assist[bot] \u003c176961590+gemini-code-assist[bot]@users.noreply.github.com\u003e\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/ef44a7c3cef6fee67fbe29d4944632d8188d3ba7\n"
    },
    {
      "commit": "4eabaca1cb2fa34fc9022142336b15509bb0883e",
      "tree": "277d29ae4302ca434fd1b6af17161731cb593182",
      "parents": [
        "eb4a182d8b1445a4ee7ef85c03f9ad97895af017"
      ],
      "author": {
        "name": "Ryan Macnak",
        "email": "rmacnak@google.com",
        "time": "Wed Apr 08 16:43:09 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Wed Apr 08 16:44:43 2026 -0700"
      },
      "message": "[vm, ffi] Remove special case for simulator FFI callback thunks.\n\nTEST\u003dci\nBug: https://dartbug.com/52579\nChange-Id: I488af082d5d9db39da38c9ff1e8ac984454bff54\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/493921\nCommit-Queue: Ryan Macnak \u003crmacnak@google.com\u003e\nReviewed-by: Liam Appelbe \u003cliama@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/68e2512ace871aa00c65ec74a849fa510c45db56\n"
    },
    {
      "commit": "eb4a182d8b1445a4ee7ef85c03f9ad97895af017",
      "tree": "0d94be45c20e59e9c78b42df132f544e036a6b33",
      "parents": [
        "69b5aeca59c94ffd71624da30153f83d7c620c50"
      ],
      "author": {
        "name": "Ryan Macnak",
        "email": "rmacnak@google.com",
        "time": "Wed Apr 08 16:43:02 2026 -0700"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Wed Apr 08 16:44:41 2026 -0700"
      },
      "message": "[vm, ffi] Remove special case for Fuchsia FFI callback thunks.\n\nTEST\u003dci\nBug: https://dartbug.com/52579\nChange-Id: I2c1ca144253bc0dbeda53321aa6fe462698095b9\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/493502\nReviewed-by: Liam Appelbe \u003cliama@google.com\u003e\nCommit-Queue: Ryan Macnak \u003crmacnak@google.com\u003e\n\nhttps://dart.googlesource.com/sdk/+/fb732a570d28b2260f9c1e5c932c88155793420c\n"
    },
    {
      "commit": "69b5aeca59c94ffd71624da30153f83d7c620c50",
      "tree": "87f02d641f630677b7a880154f2141fa2945743d",
      "parents": [
        "2e8d276fb92dd07cbe8f7e1451290481b06d04e9"
      ],
      "author": {
        "name": "Kate Lovett",
        "email": "katelovett@google.com",
        "time": "Wed Apr 08 16:01:32 2026 -0500"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Wed Apr 08 16:35:59 2026 -0700"
      },
      "message": "Change freeze flow to pull_request_target (#184785)\n\nUpdating to `pull_request_target`, `pull_request` only runs after a\nchange has landed.\n\n## Pre-launch Checklist\n\n- [x] I read the [Contributor Guide] and followed the process outlined\nthere for submitting PRs.\n- [x] I read the [AI contribution guidelines] and understand my\nresponsibilities, or I am not using AI tools.\n- [x] I read the [Tree Hygiene] wiki page, which explains my\nresponsibilities.\n- [x] I read and followed the [Flutter Style Guide], including [Features\nwe expect every widget to implement].\n- [x] I signed the [CLA].\n- [x] I listed at least one issue that this PR fixes in the description\nabove.\n- [x] I updated/added relevant documentation (doc comments with `///`).\n- [x] I added new tests to check the change I am making, or this PR is\n[test-exempt].\n- [x] I followed the [breaking change policy] and added [Data Driven\nFixes] where supported.\n- [x] All existing and new tests are passing.\n\nIf you need help, consider asking for advice on the #hackers-new channel\non [Discord].\n\nIf this change needs to override an active code freeze, provide a\ncomment explaining why. The code freeze workflow can be overridden by\ncode reviewers. See pinned issues for any active code freezes with\nguidance.\n\n**Note**: The Flutter team is currently trialing the use of [Gemini Code\nAssist for\nGitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).\nComments from the `gemini-code-assist` bot should not be taken as\nauthoritative feedback from the Flutter team. If you find its comments\nuseful you can update your code accordingly, but if you are unsure or\ndisagree with the feedback, please feel free to wait for a Flutter team\nmember\u0027s review for guidance on which automated comments should be\naddressed.\n\n\u003c!-- Links --\u003e\n[Contributor Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview\n[AI contribution guidelines]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#ai-contribution-guidelines\n[Tree Hygiene]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md\n[test-exempt]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests\n[Flutter Style Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md\n[Features we expect every widget to implement]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement\n[CLA]: https://cla.developers.google.com/\n[flutter/tests]: https://github.com/flutter/tests\n[breaking change policy]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes\n[Discord]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md\n[Data Driven Fixes]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/75c2a880f1299937ce2e6490524039e39040669a\n"
    },
    {
      "commit": "2e8d276fb92dd07cbe8f7e1451290481b06d04e9",
      "tree": "af1155b035c75024a5bd1b3ce2195b0bd1edfd93",
      "parents": [
        "5c3eb67252307cfffd653282de2a70544107ab49"
      ],
      "author": {
        "name": "Reid Baker",
        "email": "1063596+reidbaker@users.noreply.github.com",
        "time": "Wed Apr 08 16:52:25 2026 -0400"
      },
      "committer": {
        "name": "dart-internal-monorepo",
        "email": "dart-internal-monorepo@dart-ci-internal.iam.gserviceaccount.com",
        "time": "Wed Apr 08 16:35:57 2026 -0700"
      },
      "message": "Update to the beta dart version for 3.44 branch cut.  (#184770)\n\nRelated to https://github.com/flutter/flutter/issues/184769\n\n## Pre-launch Checklist\n\n- [x] I read the [Contributor Guide] and followed the process outlined\nthere for submitting PRs.\n- [x] I read the [AI contribution guidelines] and understand my\nresponsibilities, or I am not using AI tools.\n- [x] I read the [Tree Hygiene] wiki page, which explains my\nresponsibilities.\n- [x] I read and followed the [Flutter Style Guide], including [Features\nwe expect every widget to implement].\n- [x] I signed the [CLA].\n- [x] I listed at least one issue that this PR fixes in the description\nabove.\n- [ ] I updated/added relevant documentation (doc comments with `///`).\n- [x] I added new tests to check the change I am making, or this PR is\n[test-exempt].\n- [x] I followed the [breaking change policy] and added [Data Driven\nFixes] where supported.\n- [x] All existing and new tests are passing.\n\n\u003c!-- Links --\u003e\n[Contributor Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview\n[AI contribution guidelines]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#ai-contribution-guidelines\n[Tree Hygiene]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md\n[test-exempt]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests\n[Flutter Style Guide]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md\n[Features we expect every widget to implement]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement\n[CLA]: https://cla.developers.google.com/\n[flutter/tests]: https://github.com/flutter/tests\n[breaking change policy]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes\n[Discord]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md\n[Data Driven Fixes]:\nhttps://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md\nhttps://dart.googlesource.com/external/github.com/flutter/flutter/+/a7884d5cf19b5bd0da877c242fd0d669d4e97c9c\n"
    }
  ],
  "next": "5c3eb67252307cfffd653282de2a70544107ab49"
}
