84512 Commits

Author SHA1 Message Date
engine-flutter-autoroll
2eec076321
Roll Dart SDK from 239174405ad0 to f8e88f6ce02a (14 revisions) (#170182)
https://dart.googlesource.com/sdk.git/+log/239174405ad0..f8e88f6ce02a

2025-06-06 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.9.0-210.0.dev
2025-06-06 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.9.0-209.0.dev
2025-06-06 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.9.0-208.0.dev
2025-06-06 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.9.0-207.0.dev
2025-06-06 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.9.0-206.0.dev
2025-06-05 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.9.0-205.0.dev
2025-06-05 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.9.0-204.0.dev
2025-06-05 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.9.0-203.0.dev
2025-06-05 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.9.0-202.0.dev
2025-06-04 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.9.0-201.0.dev
2025-06-04 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.9.0-200.0.dev
2025-06-04 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.9.0-199.0.dev
2025-06-04 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.9.0-198.0.dev
2025-06-03 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.9.0-197.0.dev

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/dart-sdk-flutter
Please CC chinmaygarde@google.com,dart-vm-team@google.com on the revert
to ensure that a human
is aware of the problem.

To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2025-06-06 23:40:24 +00:00
Koji Wakamiya
f4bd508c28
Dispose ImmutableBuffer at web_ui.instantiateImageCodecFromBuffer and web_ui.instantiateImageCodecWithSize (#161488)
fix https://github.com/flutter/flutter/issues/150016

Fixed `instantiateImageCodecFromBuffer` and
`instantiateImageCodecWithSize` and added tests.

doc

> The buffer will be disposed by this method once the codec has been
created, so the caller must relinquish ownership of the buffer when they
call this method.

*
https://api.flutter.dev/flutter/dart-ui/instantiateImageCodecFromBuffer.html
*
https://api.flutter.dev/flutter/dart-ui/instantiateImageCodecWithSize.html

ui


bd1ebf2e14/engine/src/flutter/lib/ui/painting.dart (L2484-L2504)

bd1ebf2e14/engine/src/flutter/lib/ui/painting.dart (L2541-L2558)

web_ui


bd1ebf2e14/engine/src/flutter/lib/web_ui/lib/painting.dart (L640-L679)

## Pre-launch Checklist

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

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

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md

---------

Co-authored-by: Mouad Debbar <mdebbar@google.com>
2025-06-06 23:36:16 +00:00
Hannah Jin
7769f98c33
[a11y] Semanctis flag refactor step 4: web and updateNode (#168852)
issue: https://github.com/flutter/flutter/issues/166101, overall goal is
to update semantics flag to be a struct/class to support more than 32
flags.

step 1: https://github.com/flutter/flutter/pull/167421 Update
semantics_node.h and dart:ui
step 2: https://github.com/flutter/flutter/pull/167738 Update Embedder
part to use a struct instead of a int bit mask.
step 3: https://github.com/flutter/flutter/pull/167771 Update Framework
use the SemanticsFlags class instead of bitmask
step 4 (this PR) Update web engine to use the new class and update
SemanticsUpdateBuilder.updateNode to pass a list of bools instead of
bitmask

TODO:

flutter_tester
use the SemanticsFlags class instead of bitmask


[apicheck_test.dart](https://github.com/flutter/flutter/pull/167421/files#diff-69aefaacf1041f639974044962123bfae0756ce86032ac1f26256099425d7a5a)
Add this test back

## Pre-launch Checklist

- [ ] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [ ] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [ ] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [ ] I signed the [CLA].
- [ ] I listed at least one issue that this PR fixes in the description
above.
- [ ] I updated/added relevant documentation (doc comments with `///`).
- [ ] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [ ] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [ ] All existing and new tests are passing.

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

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-06-06 23:17:20 +00:00
Zachary Anderson
14472b4aed
Reland workflow cache (#170111)
Put the Android SDK and pub cache under the workflow's workspace
directory instead of the worker's `$HOME` directory. In order to avoid
the pub cache and Android SDK being nested inside of the Flutter
checkout, this change also moves the Flutter checkout to a subdirectory
of the workspace directory called `flutter`.

---------

Co-authored-by: John "codefu" McDole <codefu@google.com>
2025-06-06 22:57:26 +00:00
zhongliugo
ea83a6a072
Fix VoiceOver tab activation by adding tappable behavior to SemanticTab (#170076)
## Description
This pull request fixes VoiceOver tab activation by adding tappable
behavior to the SemanticTab class in the Flutter web engine. The fix
ensures that tabs can be properly activated using assistive technology
commands like VoiceOver's ctrl-option-space, making tab navigation fully
accessible for screen reader users.

## Before
When using VoiceOver to navigate tabs in a Flutter web app, users were
unable to activate tabs using the standard VoiceOver activation command
(ctrl-option-space). The SemanticTab class was missing the Tappable
semantic behavior that enables assistive technology interaction, causing
screen readers to treat tabs as non-interactive elements despite having
tap handlers in the Flutter framework.

**Before behavior:**
https://tab-0605-before.web.app/
- Navigate to a tab using VoiceOver (ctrl-option-arrow)
- Attempt to activate the tab with ctrl-option-space
- Tab does not respond to activation command
- Users cannot switch between tabs using assistive technology

## After
VoiceOver and other screen reader users can now properly activate tabs
using standard assistive technology commands. Tabs respond correctly to
ctrl-option-space and other activation gestures, providing full keyboard
accessibility for tab navigation.

**After behavior:**
https://tab-0605-after.web.app/
- Navigate to a tab using VoiceOver (ctrl-option-arrow)
- Activate the tab with ctrl-option-space
- Tab switches correctly, displaying the associated tab panel
- Consistent behavior across all assistive technologies

## Changes Made
- Added `addTappable()` call to `SemanticTab` constructor in `tabs.dart`
- Added test case "tab with tap action" to verify DOM elements receive
the `flt-tappable` attribute
- Ensures tabs with `hasTap: true` are properly marked as interactive
for assistive technologies

## Testing
Added unit test that verifies:
- Tabs with tap actions receive the `flt-tappable` DOM attribute
- SemanticTab properly integrates with the existing tappable behavior
system

## Issue Fixed
This PR addresses GitHub Issue #169279, which reports that VoiceOver
doesn't allow users to click tabs in Flutter web applications.


## Pre-launch Checklist

- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.
2025-06-06 22:15:18 +00:00
Jason Simmons
8caedde6cc
Redirect the output of the "pub upgrade" command run by bin/flutter to stderr (#170174)
The dev/bots/analyze.dart script is now running "flutter pub deps
--json" to query packages in the Flutter workspace (see
https://github.com/flutter/flutter/pull/169556)

analyze.dart is capturing the stdout of that bin/flutter command and
expecting the output to contain only JSON. If the flutter_tools snapshot
needs to be rebuilt, then the output of the pub command invoked by the
rebuild should not show up in stdout.
2025-06-06 22:12:09 +00:00
Qun Cheng
39ce615530
Add landmark roles (#168931)
This PR is to add ARIA landmark roles to `SemanticsRole`: complementary,
contentInfo, main, navigation and region.

I skipped `sectionhead` because it is an abstract role based on the [MDN
docs](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Reference/Roles/sectionhead_role#:~:text=The%20structural%20sectionhead%20role%20is%20an%20abstract%20role%20for%20the%20subclass%20roles%20that%20identify%20the%20labels%20or%20summaries%20of%20the%20sections%20they%20label.%20The%20role%20must%20not%20be%20used.)
.

Fixes https://github.com/flutter/flutter/issues/162138

## Pre-launch Checklist

- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.
2025-06-06 21:51:08 +00:00
Alex Medinsh
ce058e0be0
Trigger CupertinoPicker haptics in the middle of the item (#169670)
Towards https://github.com/flutter/flutter/issues/169606

This PR only fixes the haptic behaviour of `CupertinoPicker`, which now
triggers only when passing the middle of the item. Haptic feedback is
now also not trigger when tapping on an item to scroll to.

## Pre-launch Checklist

- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.
2025-06-06 21:21:15 +00:00
engine-flutter-autoroll
631ab1729a
Roll Skia from c810c9ba87fe to 910070084066 (29 revisions) (#170165)
https://skia.googlesource.com/skia.git/+log/c810c9ba87fe..910070084066

2025-06-06 mike@reedtribe.org use SkSpan in SkMatrix API
2025-06-06 syoussefi@google.com [graphite][vulkan] Minimize graphics
pipeline key
2025-06-06 syoussefi@google.com [graphite][vulkan] Use vertex input
dynamic state
2025-06-06 mike@reedtribe.org don't define SK_SUPPORT_UNSPANNED_API: it
is in SkTypes.h
2025-06-06 mike@reedtribe.org static bounds methods
2025-06-06 syoussefi@google.com [vulkan] Fix feature checks for YCbCr's
chroma filter
2025-06-06 syoussefi@google.com [vulkan] Apply RelaxedPrecision to
texture/atomic intrinsics
2025-06-06 thomsmit@google.com Revert "[graphite] Fix clamping bug on
Intel UHD 630."
2025-06-06 skia-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE
from ef31b3ed1c0e to db9624073324 (8 revisions)
2025-06-06
recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com
Roll recipe dependencies (trivial).
2025-06-06 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia
Infra from 8b4c1b14163e to 3bbfa4528971 (9 revisions)
2025-06-06 skia-autoroll@skia-public.iam.gserviceaccount.com Roll
SwiftShader from b62ac8aa106b to 11dc1b167af4 (2 revisions)
2025-06-06 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Dawn
from f8d7c6eea2f0 to 63ca6919b752 (19 revisions)
2025-06-06 syoussefi@google.com [graphite][vulkan] Optimize
sample-count-support check
2025-06-06 skia-autoroll@skia-public.iam.gserviceaccount.com Roll skcms
from e12ef7c0da42 to 1915b4d7ccd3 (1 revision)
2025-06-05 skia-autoroll@skia-public.iam.gserviceaccount.com Roll
vulkan-deps from 0dbc05833984 to 1c3b39ad6dc0 (3 revisions)
2025-06-05 syoussefi@google.com Replace bug ids with mapped ids in the
new issue tracker
2025-06-05
recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com
Roll recipe dependencies (trivial).
2025-06-05 bungeman@google.com Revert "[graphite] Use HW blends for
kPlus on unorm texture formats"
2025-06-05 bungeman@google.com Remove support for iOS12
2025-06-05 aswolfers@google.com Revert "Support GL texture for BGRA8
format"
2025-06-05 thomsmit@google.com [graphite] Fix clamping bug on Intel UHD
630.
2025-06-05 thomsmit@google.com [graphite] Disable
DynamicVerticesPaddingTest
2025-06-05 nicolettep@google.com Recommend persistent default install
location for Android NDK
2025-06-05 danieldilan@google.com Revert "[png] Simplify extra endian
transform for SkPngEncode"
2025-06-05 danieldilan@google.com Implement drawCoverageMask for
SkBitmapDevice
2025-06-05 syoussefi@google.com Fix resource loading in Android apks
2025-06-05 borenet@google.com [infra] Add jobs for MacOS 11
2025-06-05 mike@reedtribe.org Use SkSpan in pathbuilder API

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC brettos@google.com,chinmaygarde@google.com,kjlubick@google.com
on the revert to ensure that a human
is aware of the problem.

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2025-06-06 19:49:35 +00:00
Victor Sanni
b5c1bbef58
Align persistent nav bar leading widget (#170095)
| Before | After | 
| --- | --- |
| <img width="381" alt="before leading"
src="https://github.com/user-attachments/assets/ffd22324-75a4-4ff8-a06c-87f9148c198c"
/> | <img width="381" alt="after leading"
src="https://github.com/user-attachments/assets/36a1cd49-856b-462f-b321-6a016ffed382"
/> |


Fixes [CupertinoNavigationBar leading is too
high](https://github.com/flutter/flutter/issues/18536)
2025-06-06 19:18:19 +00:00
Kevin Moore
8a41339418
[engine/web] Migrate many things to switch expressions (#170096) 2025-06-06 19:10:51 +00:00
auto-submit[bot]
c958e8313c
Reverts "Lazy paths and frame object arenas (#168996)" (#170164)
<!-- start_original_pr_link -->
Reverts: flutter/flutter#168996
<!-- end_original_pr_link -->
<!-- start_initiating_author -->
Initiated by: zanderso
<!-- end_initiating_author -->
<!-- start_revert_reason -->
Reason for reverting: Failing in post submit on
web_long_running_tests_3_5
<!-- end_revert_reason -->
<!-- start_original_pr_author -->
Original PR Author: eyebrowsoffire
<!-- end_original_pr_author -->

<!-- start_reviewers -->
Reviewed By: {mdebbar}
<!-- end_reviewers -->

<!-- start_revert_body -->
This change reverts the following previous change:
The lifecycle of `Path` objects are currently not managed by the user.
That is to say, there is no `dispose` method on path objects and
therefore no explicit way to detect when the user is done with the path
object and the native-side object can be exposed. As of right now, we
use `FinalizationRegistry` to clean up the native-side objects when the
dart-side objects are garbage collected. However, this has a number of
issues:
* Adding objects to the finalization registry actually ends up
prolonging their lifetime in V8, since the V8 garbage collector will
only collect them in a major GC and not a minor GC once they are
registered with the finalization registry. See the following Chrome bug:
https://issues.chromium.org/issues/340777103
* We can run into OOM issues where the linear memory of canvaskit/skwasm
exceeds 2GB if the collection of paths go on too long.
* Even if the paths do get collected by the GC, they often happen
infrequently enough that paths over many frames have accumulated and are
being collected all at once. This gap can often be dozens or hundreds of
frames long, and when collection does occur it is freeing a lot of paths
at once, which causes a janky frame. I have seen this take upwards of
800ms on my M1 Macbook Pro.

There are some more details in
https://github.com/flutter/flutter/issues/153678

This PR alleviates this issue by creating a `LazyPath` object. This
object is added to an arena that explicitly collects the underlying
native objects at the end of each frame. The object also tracks the API
calls made to it so that if it is actually used across a frame boundary
that we can recreate the native object if it was freed.

Running our benchmarks, this has a non-trivial performance cost to
building and using these paths (30-50% in a microbenchmark, 3-6% in a
broader full app benchmark). However, as a team we've decided that this
cost is worth it to avoid OOM issues as well as the non-deterministic
jank associated with large collections of these objects.
<!-- end_revert_body -->

Co-authored-by: auto-submit[bot] <flutter-engprod-team@google.com>
2025-06-06 17:58:16 +00:00
Daco Harkes
894fbf6d53
[native assets] Roll dependencies (#169920)
Roll to deps published today.
2025-06-06 17:30:54 +00:00
Mouad Debbar
48c6ef247d
Make DDC tests run on linux only (#170155)
I had previously allowed these tests to run on Mac and Windows
(https://github.com/flutter/flutter/pull/169860). But it turns out they
are flaky on those platforms too. So let's mark them back as linux-only.
2025-06-06 17:16:11 +00:00
Jenn Magder
d3170f4a96
Remove deprecated Objective-C iOS app create template (#169547)
Remove Objective-C template for new apps. Existing apps won't be
impacted.

Keep Objective-C templates for plugins, though their example apps will
be Swift instead. See
https://github.com/flutter/flutter/issues/148586#issuecomment-2121323676

Move `templates/app/ios-swift.tmpl` to `templates/app/ios.tmpl`.

Fixes https://github.com/flutter/flutter/issues/148586

## Pre-launch Checklist

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

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

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-06-06 16:58:09 +00:00
Jackson Gardner
a11524896e
Lazy paths and frame object arenas (#168996)
The lifecycle of `Path` objects are currently not managed by the user.
That is to say, there is no `dispose` method on path objects and
therefore no explicit way to detect when the user is done with the path
object and the native-side object can be exposed. As of right now, we
use `FinalizationRegistry` to clean up the native-side objects when the
dart-side objects are garbage collected. However, this has a number of
issues:
* Adding objects to the finalization registry actually ends up
prolonging their lifetime in V8, since the V8 garbage collector will
only collect them in a major GC and not a minor GC once they are
registered with the finalization registry. See the following Chrome bug:
https://issues.chromium.org/issues/340777103
* We can run into OOM issues where the linear memory of canvaskit/skwasm
exceeds 2GB if the collection of paths go on too long.
* Even if the paths do get collected by the GC, they often happen
infrequently enough that paths over many frames have accumulated and are
being collected all at once. This gap can often be dozens or hundreds of
frames long, and when collection does occur it is freeing a lot of paths
at once, which causes a janky frame. I have seen this take upwards of
800ms on my M1 Macbook Pro.

There are some more details in
https://github.com/flutter/flutter/issues/153678

This PR alleviates this issue by creating a `LazyPath` object. This
object is added to an arena that explicitly collects the underlying
native objects at the end of each frame. The object also tracks the API
calls made to it so that if it is actually used across a frame boundary
that we can recreate the native object if it was freed.

Running our benchmarks, this has a non-trivial performance cost to
building and using these paths (30-50% in a microbenchmark, 3-6% in a
broader full app benchmark). However, as a team we've decided that this
cost is worth it to avoid OOM issues as well as the non-deterministic
jank associated with large collections of these objects.
2025-06-06 16:27:08 +00:00
Kostia Sokolovskyi
ed275039e1
[web] Allow overriding platformViewRegistry for testing. (#170144)
Closes https://github.com/flutter/flutter/issues/170143

### Description
- Adds `debugOverridePlatformViewRegistry` function to allow
`platformViewRegistry` overriding in tests
- Adds tests for the new functionality

## Pre-launch Checklist

- [X] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [X] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [X] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [X] I signed the [CLA].
- [X] I listed at least one issue that this PR fixes in the description
above.
- [X] I updated/added relevant documentation (doc comments with `///`).
- [X] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [X] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [X] All existing and new tests are passing.

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

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-06-06 16:14:19 +00:00
engine-flutter-autoroll
4ffa9852f9
Roll Packages from ecba2dbf07ee to 974f1522ee03 (6 revisions) (#170146)
ecba2dbf07...974f1522ee

2025-06-06 robert.odrowaz@leancode.pl [camera_avfoundation]
Implementation swift migration - part 4 (flutter/packages#9219)
2025-06-05 stevenmagdy92@gmail.com [go_router_builder] Use a mixin
instead of an extension (flutter/packages#9275)
2025-06-05 stuartmorgan@google.com Roll Flutter master to 8b18dde7
(flutter/packages#9387)
2025-06-05 10687576+bparrishMines@users.noreply.github.com
[camera_android_camerax] Fixes premature garbage collection of native
objects when app is under memory pressure (flutter/packages#9287)
2025-06-05 22373191+Hari-07@users.noreply.github.com
[google_maps_flutter_platform_interface] Add a new zIndexInt param to
marker and deprecate zIndex (flutter/packages#9372)
2025-06-05 43054281+camsim99@users.noreply.github.com
[camera_android_camerax] Java style improvements (flutter/packages#9234)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages-flutter-autoroll
Please CC flutter-ecosystem@google.com on the revert to ensure that a
human
is aware of the problem.

To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2025-06-06 15:42:25 +00:00
auto-submit[bot]
09405e87d8
Reverts "Add caching to the tool test workflow (#169858)" (#170100)
<!-- start_original_pr_link -->
Reverts: flutter/flutter#169858
<!-- end_original_pr_link -->
<!-- start_initiating_author -->
Initiated by: jtmcdole
<!-- end_initiating_author -->
<!-- start_revert_reason -->
Reason for reverting: https://github.com/flutter/flutter/issues/170099

Apparently the cache isn't restored correctly?
<!-- end_revert_reason -->
<!-- start_original_pr_author -->
Original PR Author: zanderso
<!-- end_original_pr_author -->

<!-- start_reviewers -->
Reviewed By: {jtmcdole}
<!-- end_reviewers -->

<!-- start_revert_body -->
This change reverts the following previous change:
No description provided.
<!-- end_revert_body -->

Co-authored-by: auto-submit[bot] <flutter-engprod-team@google.com>
2025-06-05 23:40:26 +00:00
Koji Wakamiya
de80553174
Remove AlarmClock from BrowserImageDecoder (#161481)
PR derived from https://github.com/flutter/flutter/pull/159945.

Since `ui.Codec` is now disposed of externally, the close processing of
the resource by AlarmClock is no longer necessary. This fix works in
combination with #159945 and is stabilized by #161132.

## Pre-launch Checklist

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

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

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md

---------

Co-authored-by: Mouad Debbar <mdebbar@google.com>
2025-06-05 22:07:24 +00:00
Zachary Anderson
317be1f681
Add caching to the tool test workflow (#169858)
Co-authored-by: John "codefu" McDole <codefu@google.com>
2025-06-05 22:03:56 +00:00
Kate Lovett
cfc9e3e1be
Update triage page (#170084)
This PR reflects the rolling of go_router triage into framework triage:
- removes go_router team from triage docs
- Updates the framework triage links
- The incoming issue link was broken, pulling the wrong subset due to
`p: go_router`
  - Added PR link for framework owned PRs in flutter/packages

I am following up with the triage team to remove the team-go_router
labels and reroute them to team-framework.

## Pre-launch Checklist

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

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

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-06-05 20:31:24 +00:00
Koji Wakamiya
2c9d898e2f
[Engine][Web] Fixed fallback font loading process (#166212)
fix https://github.com/flutter/flutter/issues/165299

Fixes a problem where the drawing does not render as expected if the
value of `maxCodePointsCovered` is greater for an unsuitable language
than for a font suitable for that language.

| before | after |
| :---:  | :---: |
| <img
src="https://github.com/user-attachments/assets/137dc021-31ce-41a7-b7a9-843abd88b738"
width="300" /> | <img
src="https://github.com/user-attachments/assets/fbfcc982-623a-4fe9-87a6-bf5bd7c88ebd"
width="300" /> |

## Pre-launch Checklist

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

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

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md

---------

Co-authored-by: Mouad Debbar <mouad.debbar@gmail.com>
2025-06-05 19:58:50 +00:00
Srujan Gaddam
7f26571eb1
Add connectedApps listener before we launch the browser (#170010)
Related to https://github.com/flutter/flutter/issues/169574

There's a race condition where we currently might listen for the
connected app after the stream has already sent the app. That would make
the app wait forever. This avoids that by registering the listener
before the browser even launches to make sure that the stream can't
possibly send a connected app before we get to listen to it.

## Pre-launch Checklist

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

---------

Co-authored-by: Mouad Debbar <mouad.debbar@gmail.com>
2025-06-05 17:24:08 +00:00
flutter-pub-roller-bot
63980cb25b
Roll pub packages (#170066)
This PR was generated by `flutter update-packages --force-upgrade`.
2025-06-05 16:34:27 +00:00
Matan Lurey
4469c5e4db
Release validation: Check bin/internal/engine.version in presubmit (#170018)
Closes https://github.com/flutter/flutter/issues/170012.

Note that this won't immediately apply to 3.32, but only for future
branches from `master`.
2025-06-05 16:33:45 +00:00
engine-flutter-autoroll
92c55f06e0
Roll Skia from 14bdc9e0a8ee to c810c9ba87fe (28 revisions) (#170064)
https://skia.googlesource.com/skia.git/+log/14bdc9e0a8ee..c810c9ba87fe

2025-06-05 fmalita@google.com Fix typo in legacy SkPath::Polygon
2025-06-05 skia-autoroll@skia-public.iam.gserviceaccount.com Roll
vulkan-deps from f14d47636e83 to 0dbc05833984 (4 revisions)
2025-06-05 skia-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE
from 88ea74bfbc55 to ef31b3ed1c0e (4 revisions)
2025-06-05 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia
Infra from 1a29d4378c5a to 8b4c1b14163e (4 revisions)
2025-06-05 skia-autoroll@skia-public.iam.gserviceaccount.com Roll
SwiftShader from a8133cbb3c89 to b62ac8aa106b (2 revisions)
2025-06-05 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Dawn
from 0b7011542a20 to f8d7c6eea2f0 (19 revisions)
2025-06-05
recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com
Roll recipe dependencies (trivial).
2025-06-05
recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com
Roll recipe dependencies (trivial).
2025-06-05
recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com
Roll recipe dependencies (trivial).
2025-06-05
recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com
Roll recipe dependencies (trivial).
2025-06-05 syoussefi@google.com [graphite][vulkan] Use extended dynamic
state
2025-06-05 mike@reedtribe.org Use SkSpan in SkDevice/SkDraw drawPoints
2025-06-04 michaelludwig@google.com [graphite] Use HW blends for kPlus
on unorm texture formats
2025-06-04 kjlubick@google.com Fix IWYU enforcement on Graphite
standalone headers
2025-06-04
recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com
Roll recipe dependencies (trivial).
2025-06-04 syoussefi@google.com [vulkan] Fix minFilter vs chromaFilter
matching for YCbCr
2025-06-04 skia-autoroll@skia-public.iam.gserviceaccount.com Roll
vulkan-deps from a6136634622e to f14d47636e83 (6 revisions)
2025-06-04 mike@reedtribe.org Use SkSpan in Path API
2025-06-04 thomsmit@google.com [graphite] Add padding test for
drawPass-time vertices uploads
2025-06-04 danieldilan@google.com [png] Simplify extra endian transform
for SkPngEncode
2025-06-04 kjlubick@google.com Add missing include
2025-06-04 thomsmit@google.com [graphite] Add missing string include
2025-06-04 bungeman@google.com No longer claim support for macOS 10.15
2025-06-04 skia-autoroll@skia-public.iam.gserviceaccount.com Roll skcms
from df82c365f7be to e12ef7c0da42 (1 revision)
2025-06-04 mike@reedtribe.org Use SkSpan in SkRect::setBounds
2025-06-04 kjlubick@google.com Get CPU Recorder from all recorders
2025-06-04
recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com
Roll recipe dependencies (trivial).
2025-06-04 skia-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE
from 8c75960e034a to 88ea74bfbc55 (7 revisions)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC brettos@google.com,chinmaygarde@google.com,kjlubick@google.com
on the revert to ensure that a human
is aware of the problem.

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2025-06-05 16:29:41 +00:00
Mouad Debbar
817fa97014
Combine expression evaluation tests to reduce testing time (#169860)
Each `flutter run` invocation is expensive (time- and memory-wise). Each
invocation also launches its own Chrome instance.

This PR is attempting to minimize the number of launches by combining
tests that need the same `flutter run` configuration into a single test.
That way, we are reusing a single instance to do many checks, instead of
launching a new instance for each check.

Currently, I did this for expression evaluation tests, which cut their
runtime in half on my local machine.

This PR aims to help with issues like
https://github.com/flutter/flutter/issues/169574 and
https://github.com/flutter/flutter/issues/169304.

Closes https://github.com/flutter/flutter/issues/110879
2025-06-05 16:10:14 +00:00
engine-flutter-autoroll
736053538b
Roll Packages from 2bac766c5853 to ecba2dbf07ee (1 revision) (#170061)
2bac766c58...ecba2dbf07

2025-06-04 jessiewong401@gmail.com Bump create_all_packages_command
CompileSdk to 36 (flutter/packages#9293)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages-flutter-autoroll
Please CC flutter-ecosystem@google.com on the revert to ensure that a
human
is aware of the problem.

To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2025-06-05 15:53:21 +00:00
Jason Simmons
121caa68d6
Make ImageFilter::equals a static method and fix the name in its FFI annotation (#170023)
Fixes https://github.com/flutter/flutter/issues/169936
2025-06-05 14:41:16 +00:00
flutter-pub-roller-bot
6e738ee392
Roll pub packages (#170042)
This PR was generated by `flutter update-packages --force-upgrade`.
2025-06-05 03:53:33 +00:00
flutter-pub-roller-bot
6be019ba25
Roll pub packages (#170040)
This PR was generated by `flutter update-packages --force-upgrade`.
2025-06-05 02:03:10 +00:00
engine-flutter-autoroll
ad585c1e8d
Roll Fuchsia Linux SDK from XalPPr5CNvZXHPo6O... to Dueykg3VpLT5D_jSG... (#170035)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/fuchsia-linux-sdk-flutter
Please CC chinmaygarde@google.com,zra@google.com on the revert to ensure
that a human
is aware of the problem.

To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2025-06-05 01:57:35 +00:00
Jason Simmons
1af0c06704
Move the check for Git in the PATH into the top level Windows flutter.bat script (#169794)
The check for Git was originally in flutter.bat but was removed by
b84bfa3526
in order to improve performance.

It was later brought back in
bc4fc5ffb9.
However, that change added it to a subroutine in shared.bat. If Git is
not found then shared.bat would exit the shell process to stop retries
of the subroutine.

This PR moves the check back into flutter.bat and exits the script
without quitting the shell.

Fixes https://github.com/flutter/flutter/issues/169784
2025-06-05 00:36:07 +00:00
auto-submit[bot]
824868f5d1
Reverts "Data assets (#169273)" (#170034)
<!-- start_original_pr_link -->
Reverts: flutter/flutter#169273
<!-- end_original_pr_link -->
<!-- start_initiating_author -->
Initiated by: jason-simmons
<!-- end_initiating_author -->
<!-- start_revert_reason -->
Reason for reverting: seeing flakes of `dart_data_asset_test.dart`

CI runs for various PRs got errors in the `tool_integration_tests`
shards. The errors occurred on multiple platforms (Linux, Mac, and
Windows).

Affected PRs include: https://github.com/flutter/flutter/pull/170022,
https://github.com/flutter/flutter/pull/169995

LUCI log of an error:
https://ci.chromium.org/ui/p/flutter/builders/try/Windows%20t
<!-- end_revert_reason -->
<!-- start_original_pr_author -->
Original PR Author: mosuem
<!-- end_original_pr_author -->

<!-- start_reviewers -->
Reviewed By: {bkonyi}
<!-- end_reviewers -->

<!-- start_revert_body -->
This change reverts the following previous change:
Refiling of #164094, which itself is a rebase of #159675

This PR adds bundling support for the experimental dart data asset
feature: Dart packages with hooks can now emit data assets which the
flutter tool will bundle.

It relies on flutter's existing asset bundling mechanism (e.g. entries
in AssetManifest.json, DevFS syncing in reload/restart, ...).

The support is added under an experimental flag (similar to the existing
native assets experimental flag).

Also, kNativeAssets is removed to also bundle data assets on flutter
build bundle.

The chrome sandbox is disabled as per #165664.

## Pre-launch Checklist

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

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

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md

<!-- end_revert_body -->

Co-authored-by: auto-submit[bot] <flutter-engprod-team@google.com>
2025-06-04 23:15:26 +00:00
Camille Simon
e094c18882
Merge CHANGELOG from 3.32.2 (#170028)
Adds `CHANGELOG` updates from the 3.32.2 stable hotfix release.

## Pre-launch Checklist

- [ ] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [ ] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [ ] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [ ] I signed the [CLA].
- [ ] I listed at least one issue that this PR fixes in the description
above.
- [ ] I updated/added relevant documentation (doc comments with `///`).
- [ ] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [ ] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [ ] All existing and new tests are passing.

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

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-06-04 22:21:22 +00:00
Ben Konyi
27d9c0ff2b
[ Widget Previews ] Add support for localizations in widget previews (#169229)
This change adds a new `localizations` property to the `Preview`
annotation, which takes a callback that returns a
`PreviewLocalizationsData` object. This class contains the same
localization properties that can be provided to `WidgetsApp` and other
similar widgets.

This change also refactors much of the localization resolution logic
into a shared `LocalizationsResolver` class to allow for localization
resolution to be done in the widget preview scaffold on a per-preview
basis.

Fixes https://github.com/flutter/flutter/issues/166433
2025-06-04 20:21:20 +00:00
Ben Konyi
94e9a2ca8d
[ Tool ] Fix failed VSCode version lookup on Linux (#169949)
VSCode installations on Linux appear to place the packages.json file at
`$VSCODE_INSTALL/resources/app/package.json` rather than at the expected
`$VSCODE_INSTALL/Resources/app/package.json`, causing the VSCode version
to not be reported correctly on Linux.

Fixes https://github.com/flutter/flutter/issues/169812
2025-06-04 20:17:27 +00:00
LongCatIsLooong
d3e8dc3df9
Make _layoutBoundary a boolean 2 (#169958)
https://github.com/flutter/flutter/pull/169638, without the more risky
changes. I'll try to fix the g3 failures and land #169638 later.

## Pre-launch Checklist

- [ ] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [ ] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [ ] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [ ] I signed the [CLA].
- [ ] I listed at least one issue that this PR fixes in the description
above.
- [ ] I updated/added relevant documentation (doc comments with `///`).
- [ ] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [ ] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [ ] All existing and new tests are passing.

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

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-06-04 20:09:33 +00:00
Gray Mackall
4f31b75649
Allow setting the Gradle --project-cache-dir for Android builds (#169954)
Fixes https://github.com/flutter/flutter/issues/169824.

## Pre-launch Checklist

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

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

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md

---------

Co-authored-by: Gray Mackall <mackall@google.com>
2025-06-04 19:26:34 +00:00
Matan Lurey
13783132ee
Remove conductor, keeping everything that packages_autoroller uses. (#170001)
Towards https://github.com/flutter/flutter/issues/169780.
2025-06-04 19:11:17 +00:00
MarkZ
08cb3936a7
Explicitly disabling hot reload for non-hot-reload web debug benchmarks (#170006)
Ensures that flipping our defaults for web hot reload won't affect our
benchmarks.
2025-06-04 18:21:29 +00:00
Ben Konyi
68a920255a
[ Tool ] Do not remove version files when fetching tags on main / beta (#169994)
Fixes https://github.com/flutter/flutter/issues/142521
2025-06-04 17:35:27 +00:00
Siva
d271f270df
Manual roll of Dart from 6aeb798bdbe2 to 239174405ad0 (#169959)
https://dart.googlesource.com/sdk.git/+log/6aeb798bdbe2..239174405ad0


[2391744](https://dart.googlesource.com/sdk.git/+/239174405ad089da5f6063c8c002efbbd354b0b0)
[Version
3.9.0-196.0.dev](https://dart.googlesource.com/sdk.git/+/239174405ad089da5f6063c8c002efbbd354b0b0)
by Dart CI · 8 hours ago
[3.9.0-196.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.9.0-196.0.dev)

[3185cce](https://dart.googlesource.com/sdk.git/+/3185cce718a437a9b93fb6d0bd2ddbaaeda49494)
[Version
3.9.0-195.0.dev](https://dart.googlesource.com/sdk.git/+/3185cce718a437a9b93fb6d0bd2ddbaaeda49494)
by Dart CI · 22 hours ago
[3.9.0-195.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.9.0-195.0.dev)

[018ad19](https://dart.googlesource.com/sdk.git/+/018ad19e3efffaf7188093cad8b0868734ebfd4f)
[Elements. Make LibraryFragment not
Annotatable.](https://dart.googlesource.com/sdk.git/+/018ad19e3efffaf7188093cad8b0868734ebfd4f)
by Konstantin Shcheglov · 22 hours ago

[338a83a](https://dart.googlesource.com/sdk.git/+/338a83af8925036cbc24bd8c298d9b091513e6f6)
[Update DevTools rev to
73eadd3be6eff2ddd9c7673f855f327a80111ebb](https://dart.googlesource.com/sdk.git/+/338a83af8925036cbc24bd8c298d9b091513e6f6)
by Kenzie Davisson · 22 hours ago

[44e0d32](https://dart.googlesource.com/sdk.git/+/44e0d326a75c3ebc491c7681e1e37c842f7f2991)
[[ddc] Fix expression evaluation with
wildcards](https://dart.googlesource.com/sdk.git/+/44e0d326a75c3ebc491c7681e1e37c842f7f2991)
by Nicholas Shahan · 23 hours ago

[c008be6](https://dart.googlesource.com/sdk.git/+/c008be6c4aad70557e793254771feb0015649103)
[Elements. Remove FragmentImpl.name, pass name2 into
constructors.](https://dart.googlesource.com/sdk.git/+/c008be6c4aad70557e793254771feb0015649103)
by Konstantin Shcheglov · 23 hours ago

[e12e916](https://dart.googlesource.com/sdk.git/+/e12e9160411a79be598160d32f459f6b3a173c4c)
[Fix a bug on the diagnostic
pages](https://dart.googlesource.com/sdk.git/+/e12e9160411a79be598160d32f459f6b3a173c4c)
by Brian Wilkerson · 23 hours ago

[91ae0bf](https://dart.googlesource.com/sdk.git/+/91ae0bfbcf822535e041be22bdd929bfb1920554)
[Analyzer
DATA_VERSION++](https://dart.googlesource.com/sdk.git/+/91ae0bfbcf822535e041be22bdd929bfb1920554)
by Konstantin Shcheglov · 23 hours ago

[72ee544](https://dart.googlesource.com/sdk.git/+/72ee5445c34a0c9c6594ac9ef3ea3f84e310bdf2)
[[build] Install dartaotruntime to /usr/bin in the Debian
package.](https://dart.googlesource.com/sdk.git/+/72ee5445c34a0c9c6594ac9ef3ea3f84e310bdf2)
by Ryan Macnak · 24 hours ago

[9f0e522](https://dart.googlesource.com/sdk.git/+/9f0e5229fa1cf0769da9d84896670a2e93e229ce)
[[flow analysis] Fix layering of type promotions in
try/finally.](https://dart.googlesource.com/sdk.git/+/9f0e5229fa1cf0769da9d84896670a2e93e229ce)
by Paul Berry · 25 hours ago

[5f9c5da](https://dart.googlesource.com/sdk.git/+/5f9c5da23871fe4a232b80c91f021104755e70e0)
[[analysis_server] Dot shorthands: Find element references
tests.](https://dart.googlesource.com/sdk.git/+/5f9c5da23871fe4a232b80c91f021104755e70e0)
by Kallen Tu · 25 hours ago

[4580a03](https://dart.googlesource.com/sdk.git/+/4580a03480d62c1a178eb6563fdb8dfc813f0dc0)
[Roll dartdoc to
4ceea6b8240bf1dd9694a170368264e40c67d66b](https://dart.googlesource.com/sdk.git/+/4580a03480d62c1a178eb6563fdb8dfc813f0dc0)
by Konstantin Shcheglov · 25 hours ago

[1b310ca](https://dart.googlesource.com/sdk.git/+/1b310ca55bddb573a8287fa8f7b13dff92133a5b)
[Version
3.9.0-194.0.dev](https://dart.googlesource.com/sdk.git/+/1b310ca55bddb573a8287fa8f7b13dff92133a5b)
by Dart CI · 26 hours ago
[3.9.0-194.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.9.0-194.0.dev)

[03301c9](https://dart.googlesource.com/sdk.git/+/03301c9bfb94b59f8fbd46d504ef6f7b24be16bf)
[[vm] Support assembly output for
Windows.](https://dart.googlesource.com/sdk.git/+/03301c9bfb94b59f8fbd46d504ef6f7b24be16bf)
by Ryan Macnak · 27 hours ago

[bd9ab13](https://dart.googlesource.com/sdk.git/+/bd9ab13a38aca713f981ff397f8f4e57d2a405f2)
[Remove underused exports from
analyzer.dart](https://dart.googlesource.com/sdk.git/+/bd9ab13a38aca713f981ff397f8f4e57d2a405f2)
by Sam Rawlins · 27 hours ago

[70c4bcd](https://dart.googlesource.com/sdk.git/+/70c4bcd7cbb1a446f93bc815f67eb166f8409bc1)
[linter: Clean up dead test
code](https://dart.googlesource.com/sdk.git/+/70c4bcd7cbb1a446f93bc815f67eb166f8409bc1)
by Sam Rawlins · 27 hours ago

[86341c9](https://dart.googlesource.com/sdk.git/+/86341c9b8a192733d0d2d254651f6facd1ebc240)
[[vm/gardening] Skip isolate_group_shared_send_test on
fuchsia.](https://dart.googlesource.com/sdk.git/+/86341c9b8a192733d0d2d254651f6facd1ebc240)
by Alexander Aprelev · 27 hours ago

[9fc86d9](https://dart.googlesource.com/sdk.git/+/9fc86d963caa8523ac80a3839cd6e33168c0cb24)
[Elements. Store MetadataImpl in
ElementDirectiveImpl.](https://dart.googlesource.com/sdk.git/+/9fc86d963caa8523ac80a3839cd6e33168c0cb24)
by Konstantin Shcheglov · 27 hours ago

[a5520d0](https://dart.googlesource.com/sdk.git/+/a5520d07cb978ff02d6a956315af574f501f355c)
[analyzer: Expand BlazeWorkspacePackage.isInTestDirectory to include
'testing'](https://dart.googlesource.com/sdk.git/+/a5520d07cb978ff02d6a956315af574f501f355c)
by Sam Rawlins · 28 hours ago

[ef7e045](https://dart.googlesource.com/sdk.git/+/ef7e045bfdf3b92b72b9702e268994165954de5e)
[Elements. Remove metadata3, store MetadataImpl
directly.](https://dart.googlesource.com/sdk.git/+/ef7e045bfdf3b92b72b9702e268994165954de5e)
by Konstantin Shcheglov · 28 hours ago

[36262e7](https://dart.googlesource.com/sdk.git/+/36262e7339e6180e531b699d7ca1836b277ea286)
[Revert "[dart2wasm] Remove FunctionNode dependency from
ClosureDynamicEntryGenerator"](https://dart.googlesource.com/sdk.git/+/36262e7339e6180e531b699d7ca1836b277ea286)
by Jason Simmons · 28 hours ago

[5663697](https://dart.googlesource.com/sdk.git/+/56636971dc4e38517fa55f0cb69321355c2511af)
[[test_runner] Remove nnbd mode
options.](https://dart.googlesource.com/sdk.git/+/56636971dc4e38517fa55f0cb69321355c2511af)
by Ryan Macnak · 28 hours ago

[8711f55](https://dart.googlesource.com/sdk.git/+/8711f552fd7675b87294e4b7c6217c544ee65061)
[[deps] rev ecosystem, protobuf, test, tools, webdev,
webdriver](https://dart.googlesource.com/sdk.git/+/8711f552fd7675b87294e4b7c6217c544ee65061)
by Devon Carew · 28 hours ago

[bf6ddd2](https://dart.googlesource.com/sdk.git/+/bf6ddd25c4b19795ec75bb067b83fdc370162f3a)
[[flow analysis] Do not promote to mutual
subtypes.](https://dart.googlesource.com/sdk.git/+/bf6ddd25c4b19795ec75bb067b83fdc370162f3a)
by Paul Berry · 28 hours ago

[73a85ec](https://dart.googlesource.com/sdk.git/+/73a85ec19513c46f6e6989b41d1fb3cdc79e0f61)
[Elements. Deprecate
FragmentImpl.name](https://dart.googlesource.com/sdk.git/+/73a85ec19513c46f6e6989b41d1fb3cdc79e0f61)
by Konstantin Shcheglov · 28 hours ago

[65d0d85](https://dart.googlesource.com/sdk.git/+/65d0d8581ac434f64c77fb1aae820e77dc148cc5)
[[vm/shared] Move forward_table from Isolate to
Thread.](https://dart.googlesource.com/sdk.git/+/65d0d8581ac434f64c77fb1aae820e77dc148cc5)
by Alexander Aprelev · 29 hours ago

[af0dba8](https://dart.googlesource.com/sdk.git/+/af0dba8e60e323aebd6cdd1b71b2740be9638762)
[Version
3.9.0-193.0.dev](https://dart.googlesource.com/sdk.git/+/af0dba8e60e323aebd6cdd1b71b2740be9638762)
by Dart CI · 30 hours ago
[3.9.0-193.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.9.0-193.0.dev)

[df12659](https://dart.googlesource.com/sdk.git/+/df126594e9e3a3ab2b57e394ed8452f474e75505)
[[co19] Roll co19 to
3388e8e9073d57e6fdca6582568fdfa6f9a6bc61](https://dart.googlesource.com/sdk.git/+/df126594e9e3a3ab2b57e394ed8452f474e75505)
by Sergey G. Grekhov · 30 hours ago

[2565128](https://dart.googlesource.com/sdk.git/+/2565128cb0b7ca5e7d6eac321a7a83ba8494023b)
[[infra] Shard Mac AOT
builders.](https://dart.googlesource.com/sdk.git/+/2565128cb0b7ca5e7d6eac321a7a83ba8494023b)
by Ryan Macnak · 30 hours ago

[4fb105e](https://dart.googlesource.com/sdk.git/+/4fb105e7944ef99cae10b16c7309cee4e5c2f2e4)
[[build] Debian package
test.](https://dart.googlesource.com/sdk.git/+/4fb105e7944ef99cae10b16c7309cee4e5c2f2e4)
by Ryan Macnak · 31 hours ago

[5df7479](https://dart.googlesource.com/sdk.git/+/5df74796336e6c6be7e55c304fa6ce34da76fa96)
[Reorganize the status/diagnostic
pages](https://dart.googlesource.com/sdk.git/+/5df74796336e6c6be7e55c304fa6ce34da76fa96)
by Brian Wilkerson · 31 hours ago

[c006202](https://dart.googlesource.com/sdk.git/+/c006202dc6d314d9f7d035cef2c15ad11335d7de)
[[vm,dyn_modules] Convert function type args to instance type args when
allocating an object in constructor
tear-off](https://dart.googlesource.com/sdk.git/+/c006202dc6d314d9f7d035cef2c15ad11335d7de)
by Alexander Markov · 31 hours ago

[16cde58](https://dart.googlesource.com/sdk.git/+/16cde58fa2ba7b04fce7f0c0c532216540698797)
[Version
3.9.0-192.0.dev](https://dart.googlesource.com/sdk.git/+/16cde58fa2ba7b04fce7f0c0c532216540698797)
by Dart CI · 34 hours ago
[3.9.0-192.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.9.0-192.0.dev)

[d004127](https://dart.googlesource.com/sdk.git/+/d0041273c5800d08167231e3427e2344346e7796)
[[cfe] Implement getter-setter-error for extension
types](https://dart.googlesource.com/sdk.git/+/d0041273c5800d08167231e3427e2344346e7796)
by Chloe Stefantsova · 34 hours ago

[fd9960f](https://dart.googlesource.com/sdk.git/+/fd9960f3247980084f4e097d9453c952cc8475e5)
[[cfe] Create declarations directly in
_PropertyPreBuilder](https://dart.googlesource.com/sdk.git/+/fd9960f3247980084f4e097d9453c952cc8475e5)
by Johnni Winther · 36 hours ago

[1117dce](https://dart.googlesource.com/sdk.git/+/1117dce94d05eac5d9606e9d0f62e9ceb7c2e69e)
[[model] Mark erroneously initialized optional parameters as
such](https://dart.googlesource.com/sdk.git/+/1117dce94d05eac5d9606e9d0f62e9ceb7c2e69e)
by Chloe Stefantsova · 2 days ago

[c21beef](https://dart.googlesource.com/sdk.git/+/c21beef54e1fcaf6159aee2367a2fb995eaddf97)
[remove unused
import](https://dart.googlesource.com/sdk.git/+/c21beef54e1fcaf6159aee2367a2fb995eaddf97)
by Jake Macdonald · 2 days ago

[5d2e1ef](https://dart.googlesource.com/sdk.git/+/5d2e1ef0dcd32b143aac8b15d49250d84bd5abeb)
[Version
3.9.0-191.0.dev](https://dart.googlesource.com/sdk.git/+/5d2e1ef0dcd32b143aac8b15d49250d84bd5abeb)
by Dart CI · 2 days ago
[3.9.0-191.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.9.0-191.0.dev)

[ce6e968](https://dart.googlesource.com/sdk.git/+/ce6e9685dff28d412c05bf66f925395100fdd9ed)
[Bump the github-actions group with 2
updates](https://dart.googlesource.com/sdk.git/+/ce6e9685dff28d412c05bf66f925395100fdd9ed)
by dependabot[bot] · 2 days ago

[745b0c7](https://dart.googlesource.com/sdk.git/+/745b0c732820a45fc3a097c640c4ac60b3ef51d6)
[Version
3.9.0-190.0.dev](https://dart.googlesource.com/sdk.git/+/745b0c732820a45fc3a097c640c4ac60b3ef51d6)
by Dart CI · 4 days ago
[3.9.0-190.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.9.0-190.0.dev)

[c349670](https://dart.googlesource.com/sdk.git/+/c3496701e4ad0f8ec26050982aab860d25bbe8f3)
[Roll Fuchsia SDK from 28.20250519.5.1 to
28.20250528.4.1](https://dart.googlesource.com/sdk.git/+/c3496701e4ad0f8ec26050982aab860d25bbe8f3)
by DEPS Autoroller · 4 days ago

[a14c305](https://dart.googlesource.com/sdk.git/+/a14c3059e957c7085a762bb84d92c7df52811135)
[Roll Fuchsia Test Scripts from L6SMsr0eTyQlN6KR4... to
DG11ez0PRGu8loi2m...](https://dart.googlesource.com/sdk.git/+/a14c3059e957c7085a762bb84d92c7df52811135)
by DEPS Autoroller · 4 days ago

[3f2a696](https://dart.googlesource.com/sdk.git/+/3f2a6963fb1f3cd31cb797e8f04e335a08e75ca9)
[[dart2js] Improve algorithm for condition
targets](https://dart.googlesource.com/sdk.git/+/3f2a6963fb1f3cd31cb797e8f04e335a08e75ca9)
by Stephen Adams · 4 days ago

[bafa801](https://dart.googlesource.com/sdk.git/+/bafa80177f1a9a2cafc2b7a028595b5cfeb6229d)
[Version
3.9.0-189.0.dev](https://dart.googlesource.com/sdk.git/+/bafa80177f1a9a2cafc2b7a028595b5cfeb6229d)
by Dart CI · 4 days ago
[3.9.0-189.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.9.0-189.0.dev)

[d34f769](https://dart.googlesource.com/sdk.git/+/d34f769deb34ab5dbda0a03f17c15d7c6f18f88e)
[Roll gn from ebc8f16ca7b0 to
afd24ed11bc5](https://dart.googlesource.com/sdk.git/+/d34f769deb34ab5dbda0a03f17c15d7c6f18f88e)
by DEPS Autoroller · 4 days ago

[85ccbe6](https://dart.googlesource.com/sdk.git/+/85ccbe6d8d13c6e036446f9d9c1664e639044a41)
[[dart2js] `late final` initialized instance field getters are
idempotent](https://dart.googlesource.com/sdk.git/+/85ccbe6d8d13c6e036446f9d9c1664e639044a41)
by Stephen Adams · 4 days ago

[28fc6346](https://dart.googlesource.com/sdk.git/+/28fc6346eb4f71674441afac45797516d627feb8)
[analyzer: Move RuleContext and RuleContextUnit to public
API](https://dart.googlesource.com/sdk.git/+/28fc6346eb4f71674441afac45797516d627feb8)
by Sam Rawlins · 4 days ago

[2c0fad2](https://dart.googlesource.com/sdk.git/+/2c0fad24ffc13cc3e573410f1015676fafd565ae)
[Normalize the diagnostic
pages](https://dart.googlesource.com/sdk.git/+/2c0fad24ffc13cc3e573410f1015676fafd565ae)
by Brian Wilkerson · 4 days ago

[b45d25b](https://dart.googlesource.com/sdk.git/+/b45d25ba1e1726f316d5d753e29d6551267a0776)
[Elements. Print MethodElementImpl references in text
expectations.](https://dart.googlesource.com/sdk.git/+/b45d25ba1e1726f316d5d753e29d6551267a0776)
by Konstantin Shcheglov · 4 days ago

[63aa736](https://dart.googlesource.com/sdk.git/+/63aa736da20821f23fcadfe9dbafe49705695f64)
[Elements. Add reference to MethodElementImpl, write
it.](https://dart.googlesource.com/sdk.git/+/63aa736da20821f23fcadfe9dbafe49705695f64)
by Konstantin Shcheglov · 4 days ago

[9507d7a](https://dart.googlesource.com/sdk.git/+/9507d7a05ecf218d4e50700cb634edace930db01)
[Version
3.9.0-188.0.dev](https://dart.googlesource.com/sdk.git/+/9507d7a05ecf218d4e50700cb634edace930db01)
by Dart CI · 4 days ago
[3.9.0-188.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.9.0-188.0.dev)

[55a2089](https://dart.googlesource.com/sdk.git/+/55a2089034e757c339a5bf01845505758e4f78b0)
[Add a test for
hasPublishedDocs](https://dart.googlesource.com/sdk.git/+/55a2089034e757c339a5bf01845505758e4f78b0)
by Brian Wilkerson · 4 days ago

[2b59598](https://dart.googlesource.com/sdk.git/+/2b59598defdbbcc7e06d507ad74cf225c615d6b5)
[Display message scheduler information on the diagnostic
pages](https://dart.googlesource.com/sdk.git/+/2b59598defdbbcc7e06d507ad74cf225c615d6b5)
by Brian Wilkerson · 4 days ago

[d49cd3c](https://dart.googlesource.com/sdk.git/+/d49cd3c552afa222ed1cbbee85a8d50d725902e7)
[[dart2js] Track, rather than compute,
`isCallOnInterceptor`](https://dart.googlesource.com/sdk.git/+/d49cd3c552afa222ed1cbbee85a8d50d725902e7)
by Stephen Adams · 4 days ago

[74f74d7](https://dart.googlesource.com/sdk.git/+/74f74d71578b01495cf40a6f5d7b561787806d92)
[[analysis_server] Dot shorthands: Document highlights
tests.](https://dart.googlesource.com/sdk.git/+/74f74d71578b01495cf40a6f5d7b561787806d92)
by Kallen Tu · 4 days ago

[e724547](https://dart.googlesource.com/sdk.git/+/e7245478926551fac327ac9abbc01aad53eb74a8)
[Elements. Deprecate Annotatable.metadata2, use 'metadata'
instead.](https://dart.googlesource.com/sdk.git/+/e7245478926551fac327ac9abbc01aad53eb74a8)
by Konstantin Shcheglov · 4 days ago

[8f9cab4](https://dart.googlesource.com/sdk.git/+/8f9cab444059fa84df8eed6eb61c7727c7b70f92)
[[analysis_server] Dot shorthands: Go to type definition
tests.](https://dart.googlesource.com/sdk.git/+/8f9cab444059fa84df8eed6eb61c7727c7b70f92)
by Kallen Tu · 4 days ago

[f18bd99](https://dart.googlesource.com/sdk.git/+/f18bd99230b56cbe77e3e7742908c895c48ec93f)
[[DAS] Fixes comment references for enum
constants](https://dart.googlesource.com/sdk.git/+/f18bd99230b56cbe77e3e7742908c895c48ec93f)
by FMorschel · 4 days ago

[5a6d0cf](https://dart.googlesource.com/sdk.git/+/5a6d0cf4feb4768c0b4dae34df55dc8762d01cf5)
[Version
3.9.0-187.0.dev](https://dart.googlesource.com/sdk.git/+/5a6d0cf4feb4768c0b4dae34df55dc8762d01cf5)
by Dart CI · 4 days ago
[3.9.0-187.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.9.0-187.0.dev)

[c98a91f](https://dart.googlesource.com/sdk.git/+/c98a91f182d813b5b4a141bfa0b1093f0f7eb435)
[Elements. Rename Element2Extension.metadata to
metadataAnnotations.](https://dart.googlesource.com/sdk.git/+/c98a91f182d813b5b4a141bfa0b1093f0f7eb435)
by Konstantin Shcheglov · 4 days ago

[d2252b1](https://dart.googlesource.com/sdk.git/+/d2252b1fd6c95d4a7a2a748c3ccc14a65082d20a)
[[dyn_modules] Add option to dump detailed dynamic
interface](https://dart.googlesource.com/sdk.git/+/d2252b1fd6c95d4a7a2a748c3ccc14a65082d20a)
by Alexander Markov · 4 days ago

[70dd226](https://dart.googlesource.com/sdk.git/+/70dd22696b09ac21b5c09774434b496eda071097)
[Version
3.9.0-186.0.dev](https://dart.googlesource.com/sdk.git/+/70dd22696b09ac21b5c09774434b496eda071097)
by Dart CI · 4 days ago
[3.9.0-186.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.9.0-186.0.dev)

[804c6bb](https://dart.googlesource.com/sdk.git/+/804c6bbd84b03d79bb71ec94e3c93b5afeb6a107)
[[test_runner] Remove duplicate "allowed values" help, use
package:args's allowed value help
feature](https://dart.googlesource.com/sdk.git/+/804c6bbd84b03d79bb71ec94e3c93b5afeb6a107)
by Ömer Ağacan · 5 days ago

[111af5a](https://dart.googlesource.com/sdk.git/+/111af5a62b5d3b851b2dc561bea001c1f32d63c0)
[Version
3.9.0-185.0.dev](https://dart.googlesource.com/sdk.git/+/111af5a62b5d3b851b2dc561bea001c1f32d63c0)
by Dart CI · 5 days ago
[3.9.0-185.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.9.0-185.0.dev)

[5dec261](https://dart.googlesource.com/sdk.git/+/5dec261948add3c1cc720f0f47c7d7b499298201)
[Fix test group name for sound flow
analysis.](https://dart.googlesource.com/sdk.git/+/5dec261948add3c1cc720f0f47c7d7b499298201)
by Paul Berry · 5 days ago

[fa9712b](https://dart.googlesource.com/sdk.git/+/fa9712b13722d948852f172d5e29df6ba3bd3fb7)
[Version
3.9.0-184.0.dev](https://dart.googlesource.com/sdk.git/+/fa9712b13722d948852f172d5e29df6ba3bd3fb7)
by Dart CI · 5 days ago
[3.9.0-184.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.9.0-184.0.dev)

[0467dfc](https://dart.googlesource.com/sdk.git/+/0467dfc43458e03624d93dba35e819a462f2def9)
[Bump ai to
2a5eb30492c4231624ae954e93aa1491e4aca84f](https://dart.googlesource.com/sdk.git/+/0467dfc43458e03624d93dba35e819a462f2def9)
by Jake Macdonald · 5 days ago

[605170d](https://dart.googlesource.com/sdk.git/+/605170dae33d0de700880ee1af9386a1b7c7951b)
[Version
3.9.0-183.0.dev](https://dart.googlesource.com/sdk.git/+/605170dae33d0de700880ee1af9386a1b7c7951b)
by Dart CI · 5 days ago
[3.9.0-183.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.9.0-183.0.dev)

[09dc185](https://dart.googlesource.com/sdk.git/+/09dc185bd53ac7858222d23a2b3945afa936814e)
[Elements. Use combineSignatureTypes() for inheritance
inference.](https://dart.googlesource.com/sdk.git/+/09dc185bd53ac7858222d23a2b3945afa936814e)
by Konstantin Shcheglov · 5 days ago

[009a619](https://dart.googlesource.com/sdk.git/+/009a6194b35be6cb67d8d714fefc8ad1757639ff)
[[analysis_server] Dot shorthands: Call hierarchy changes and
tests.](https://dart.googlesource.com/sdk.git/+/009a6194b35be6cb67d8d714fefc8ad1757639ff)
by Kallen Tu · 5 days ago

[b999c90](https://dart.googlesource.com/sdk.git/+/b999c900f37abab66c04cabd9cd67560d8d5bfef)
[Version
3.9.0-182.0.dev](https://dart.googlesource.com/sdk.git/+/b999c900f37abab66c04cabd9cd67560d8d5bfef)
by Dart CI · 5 days ago
[3.9.0-182.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.9.0-182.0.dev)

[b980788](https://dart.googlesource.com/sdk.git/+/b980788bf9ab4c3bf2844b8ca3bf2d1725934b0e)
[[test_runner] Use 'line' progress indicator by default when stdout is
not a
terminal](https://dart.googlesource.com/sdk.git/+/b980788bf9ab4c3bf2844b8ca3bf2d1725934b0e)
by Ömer Ağacan · 5 days ago

[41ac971](https://dart.googlesource.com/sdk.git/+/41ac971d8a35ad3745e32d8cf423f261129f5df9)
[analyzer: rename Lint*Context
classes](https://dart.googlesource.com/sdk.git/+/41ac971d8a35ad3745e32d8cf423f261129f5df9)
by Sam Rawlins · 5 days ago

[e4cac29](https://dart.googlesource.com/sdk.git/+/e4cac2901a65ee69a3b52fde107312bca1f5c61d)
[Bump ai to
cf7d67f1e653cc9d8988ff0dc549eb7c357c3ef9](https://dart.googlesource.com/sdk.git/+/e4cac2901a65ee69a3b52fde107312bca1f5c61d)
by Jake Macdonald · 5 days ago

[b085dd5](https://dart.googlesource.com/sdk.git/+/b085dd53f405c30b90f47b619278f5596b18ac3d)
[analyzer: Simplify some FileAnalysis
usage](https://dart.googlesource.com/sdk.git/+/b085dd53f405c30b90f47b619278f5596b18ac3d)
by Sam Rawlins · 5 days ago

[1d26804](https://dart.googlesource.com/sdk.git/+/1d268045c0ed151be4c89ba68f2dc3a47b8c1cae)
[[dart2wasm] Fix param info lookup to match signature lookup
logic.](https://dart.googlesource.com/sdk.git/+/1d268045c0ed151be4c89ba68f2dc3a47b8c1cae)
by Nate Biggs · 5 days ago

[31607cc](https://dart.googlesource.com/sdk.git/+/31607cc56a0e09b60e614f8160899b723aa16915)
[Elements. Write more ElementImpl as references, not as
fragments.](https://dart.googlesource.com/sdk.git/+/31607cc56a0e09b60e614f8160899b723aa16915)
by Konstantin Shcheglov · 5 days ago

[23c6ee8](https://dart.googlesource.com/sdk.git/+/23c6ee82c84b66f691f375bfa2582df889c668c7)
[Version
3.9.0-181.0.dev](https://dart.googlesource.com/sdk.git/+/23c6ee82c84b66f691f375bfa2582df889c668c7)
by Dart CI · 6 days ago
[3.9.0-181.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.9.0-181.0.dev)

[b414df2](https://dart.googlesource.com/sdk.git/+/b414df224a0c41f820103b33a9f0e48ecca9fd5f)
[[DEPS] Update web
engines](https://dart.googlesource.com/sdk.git/+/b414df224a0c41f820103b33a9f0e48ecca9fd5f)
by Nicholas Shahan · 6 days ago

[632ae99](https://dart.googlesource.com/sdk.git/+/632ae99037de7867351917ba299e983531860e34)
[Version
3.9.0-180.0.dev](https://dart.googlesource.com/sdk.git/+/632ae99037de7867351917ba299e983531860e34)
by Dart CI · 6 days ago
[3.9.0-180.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.9.0-180.0.dev)

[25d5721](https://dart.googlesource.com/sdk.git/+/25d57216e9a5846da7100a35af2527f6de8e032d)
[Bump tools to
a0dda7e50bcd99fd3be8512cf546d872ba39e046](https://dart.googlesource.com/sdk.git/+/25d57216e9a5846da7100a35af2527f6de8e032d)
by Devon Carew · 6 days ago

[560bb8e](https://dart.googlesource.com/sdk.git/+/560bb8e0aab5e1934aec2461a03f66f3b5d55eca)
[[analysis_server] Dot shorthands: Go to definition
tests.](https://dart.googlesource.com/sdk.git/+/560bb8e0aab5e1934aec2461a03f66f3b5d55eca)
by Kallen Tu · 6 days ago

[676df8b](https://dart.googlesource.com/sdk.git/+/676df8b25813bd13a9f9aecd1cb35c66a7e2741f)
[Elements. Remove
PrefixElementImpl.](https://dart.googlesource.com/sdk.git/+/676df8b25813bd13a9f9aecd1cb35c66a7e2741f)
by Konstantin Shcheglov · 6 days ago

[eba91c50](https://dart.googlesource.com/sdk.git/+/eba91c5045d612a6cbca7b5ae4e62388a07980e4)
[analyzer: Move RuleState into the public
API](https://dart.googlesource.com/sdk.git/+/eba91c5045d612a6cbca7b5ae4e62388a07980e4)
by Sam Rawlins · 6 days ago

[25b54e2](https://dart.googlesource.com/sdk.git/+/25b54e2d82cc0d21eb2344bfa446ce4cda301edb)
[Version
3.9.0-179.0.dev](https://dart.googlesource.com/sdk.git/+/25b54e2d82cc0d21eb2344bfa446ce4cda301edb)
by Dart CI · 6 days ago
[3.9.0-179.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.9.0-179.0.dev)

[34c5794](https://dart.googlesource.com/sdk.git/+/34c5794fffcf87068990b87bee03cc05783f6a76)
[Elements. Make FragmentOrMember implement
Fragment.](https://dart.googlesource.com/sdk.git/+/34c5794fffcf87068990b87bee03cc05783f6a76)
by Konstantin Shcheglov · 6 days ago

[9d22935](https://dart.googlesource.com/sdk.git/+/9d229350636b942f068ea38adb59b213499fc541)
[Elements. Rename ElementOrMember to
FragmentOrMember.](https://dart.googlesource.com/sdk.git/+/9d229350636b942f068ea38adb59b213499fc541)
by Konstantin Shcheglov · 6 days ago

[b117e10](https://dart.googlesource.com/sdk.git/+/b117e10703df065c13c612d6cf3e6132c2e6e39e)
[Elements. Remove
InterfaceFragmentImpl.instantiateImpl()](https://dart.googlesource.com/sdk.git/+/b117e10703df065c13c612d6cf3e6132c2e6e39e)
by Konstantin Shcheglov · 6 days ago

[5af6310](https://dart.googlesource.com/sdk.git/+/5af6310f9c8faa9d4123a615e3aba4f6e2b4b9e4)
[Elements. Use named formal parameters for FragmentImpl
constructors.](https://dart.googlesource.com/sdk.git/+/5af6310f9c8faa9d4123a615e3aba4f6e2b4b9e4)
by Konstantin Shcheglov · 6 days ago

[cde11c1](https://dart.googlesource.com/sdk.git/+/cde11c1005c6711af8959f00d205c16caafec396)
[CQ. Make a couple of methods return void, remove unawaited() for
them.](https://dart.googlesource.com/sdk.git/+/cde11c1005c6711af8959f00d205c16caafec396)
by Konstantin Shcheglov · 6 days ago

[0787d1e](https://dart.googlesource.com/sdk.git/+/0787d1eeece46a2d5f139e0a1390040735e9b7e0)
[Use a more structured response type for `ConnectedApp.getVmServices`
API](https://dart.googlesource.com/sdk.git/+/0787d1eeece46a2d5f139e0a1390040735e9b7e0)
by Kenzie Davisson · 6 days ago

[ebef427](https://dart.googlesource.com/sdk.git/+/ebef427bc563a052f72b536a452d660a852a2371)
[[vm] Remove dead
VerifyCanonicalVisitor.](https://dart.googlesource.com/sdk.git/+/ebef427bc563a052f72b536a452d660a852a2371)
by Ryan Macnak · 6 days ago

[2ecc1ee](https://dart.googlesource.com/sdk.git/+/2ecc1ee8e8b951caf595be17d0e34b090634260a)
[Close open file descriptors that are not needed during process spawn or
exec.](https://dart.googlesource.com/sdk.git/+/2ecc1ee8e8b951caf595be17d0e34b090634260a)
by asiva · 6 days ago

[3959470](https://dart.googlesource.com/sdk.git/+/395947051e064efb75f6b914edfa66b95252ff33)
[[linter] Improve correction message for
discarded_futures.](https://dart.googlesource.com/sdk.git/+/395947051e064efb75f6b914edfa66b95252ff33)
by Paul Berry · 6 days ago

[1806e4c](https://dart.googlesource.com/sdk.git/+/1806e4ce65701d3165a405d90f7d32b976bac072)
[[ddc] Use direct cast methods for primitive
casts](https://dart.googlesource.com/sdk.git/+/1806e4ce65701d3165a405d90f7d32b976bac072)
by Nicholas Shahan · 6 days ago

[2b5b551](https://dart.googlesource.com/sdk.git/+/2b5b551cfbcea199714d0b46c5edd4c2cd52e644)
[Fine. Record InstanceElement.fields/getters/setters
access.](https://dart.googlesource.com/sdk.git/+/2b5b551cfbcea199714d0b46c5edd4c2cd52e644)
by Konstantin Shcheglov · 6 days ago

[3033393](https://dart.googlesource.com/sdk.git/+/3033393fe6f2f99c212ed3b6b47e1d34ba4fb1e2)
[Bump ai to
47fa2fcf476a905b316282d9351e4ed063755ead](https://dart.googlesource.com/sdk.git/+/3033393fe6f2f99c212ed3b6b47e1d34ba4fb1e2)
by Jake Macdonald · 6 days ago

[bfc8faa](https://dart.googlesource.com/sdk.git/+/bfc8faabb8278bbc689e1f78b1c26e5962776113)
[CodeGen. Document GenerateNodeProperty.
#2](https://dart.googlesource.com/sdk.git/+/bfc8faabb8278bbc689e1f78b1c26e5962776113)
by Konstantin Shcheglov · 6 days ago

[6b29fb0](https://dart.googlesource.com/sdk.git/+/6b29fb01e6492677891922388ded1ac631f02588)
[Version
3.9.0-178.0.dev](https://dart.googlesource.com/sdk.git/+/6b29fb01e6492677891922388ded1ac631f02588)
by Dart CI · 6 days ago
[3.9.0-178.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.9.0-178.0.dev)

[525b67a](https://dart.googlesource.com/sdk.git/+/525b67a9fe6e6c04fd343af1ff4cf647356b4b6e)
[Enable discarded_futures lint in analyzer and
_fe_analyzer_shared.](https://dart.googlesource.com/sdk.git/+/525b67a9fe6e6c04fd343af1ff4cf647356b4b6e)
by Paul Berry · 6 days ago

[53ecbfd](https://dart.googlesource.com/sdk.git/+/53ecbfd9991af13b134240d621c62294cdf9d919)
[[dyn_modules] Do not add dart:core as callable by
default](https://dart.googlesource.com/sdk.git/+/53ecbfd9991af13b134240d621c62294cdf9d919)
by Alexander Markov · 6 days ago

[8023313](https://dart.googlesource.com/sdk.git/+/802331361fb7358bbf9379450e40207030170af6)
[[dartfuzz] Add missing build
target.](https://dart.googlesource.com/sdk.git/+/802331361fb7358bbf9379450e40207030170af6)
by Ryan Macnak · 6 days ago

[b061f91](https://dart.googlesource.com/sdk.git/+/b061f911f9af5fa585fdedff2cf46c77089b8d43)
[[vm] Fix dynamic module
build.](https://dart.googlesource.com/sdk.git/+/b061f911f9af5fa585fdedff2cf46c77089b8d43)
by Ryan Macnak · 6 days ago

[f214457](https://dart.googlesource.com/sdk.git/+/f21445710b4efd6da8740f6af6b5251be086490d)
[[cfe] Add
Fragment.uriOffset](https://dart.googlesource.com/sdk.git/+/f21445710b4efd6da8740f6af6b5251be086490d)
by Johnni Winther · 6 days ago

[b3a04fa](https://dart.googlesource.com/sdk.git/+/b3a04fac5c22bf4732e859930a022014abfcdbc6)
[Version
3.9.0-177.0.dev](https://dart.googlesource.com/sdk.git/+/b3a04fac5c22bf4732e859930a022014abfcdbc6)
by Dart CI · 6 days ago
[3.9.0-177.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.9.0-177.0.dev)

[57b8c4b](https://dart.googlesource.com/sdk.git/+/57b8c4b93ec2cc2a8e71774aba7bfbb252821109)
[Update changelog on main with 3.8.1
entries](https://dart.googlesource.com/sdk.git/+/57b8c4b93ec2cc2a8e71774aba7bfbb252821109)
by Ivan Inozemtsev · 6 days ago

[b184889](https://dart.googlesource.com/sdk.git/+/b1848895b8069772ce64199ff9ce73b81c07ed66)
[[model] Add makAsErroneous to ConstructorDeclaration and
encodings](https://dart.googlesource.com/sdk.git/+/b1848895b8069772ce64199ff9ce73b81c07ed66)
by Chloe Stefantsova · 6 days ago

[aa0f0e1](https://dart.googlesource.com/sdk.git/+/aa0f0e1acaf2e4a9ad1ef02d57956301881546e1)
[[cfe] Remove
MemberBuilder.isConflictingSetter](https://dart.googlesource.com/sdk.git/+/aa0f0e1acaf2e4a9ad1ef02d57956301881546e1)
by Johnni Winther · 7 days ago

[0045c0e](https://dart.googlesource.com/sdk.git/+/0045c0e1c6837ee636af4f9495ef5ed570c3a4e3)
[[dart2wasm] Remove FunctionNode dependency from
ClosureDynamicEntryGenerator](https://dart.googlesource.com/sdk.git/+/0045c0e1c6837ee636af4f9495ef5ed570c3a4e3)
by Ömer Ağacan · 7 days ago

[2fc0c8b](https://dart.googlesource.com/sdk.git/+/2fc0c8bf0824ee65dcb03cb7591649189a07c823)
[[dart2wasm] Some refactorings of the
compiler](https://dart.googlesource.com/sdk.git/+/2fc0c8bf0824ee65dcb03cb7591649189a07c823)
by Martin Kustermann · 7 days ago

[adb179c](https://dart.googlesource.com/sdk.git/+/adb179ced0bebde1e15f34bf5c212e584a555144)
[Version
3.9.0-176.0.dev](https://dart.googlesource.com/sdk.git/+/adb179ced0bebde1e15f34bf5c212e584a555144)
by Dart CI · 7 days ago
[3.9.0-176.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.9.0-176.0.dev)

[ac2fc57](https://dart.googlesource.com/sdk.git/+/ac2fc57446abe56b6f94f9940c355c871385678e)
[[cfe] Combine getter/setter and final field/setter into one property
builder](https://dart.googlesource.com/sdk.git/+/ac2fc57446abe56b6f94f9940c355c871385678e)
by Johnni Winther · 7 days ago

[b5e12ec](https://dart.googlesource.com/sdk.git/+/b5e12ecafffeb27332ba761605da0e26d247fff0)
[Replace use of NodeLocator2 in
CorrectionProducer](https://dart.googlesource.com/sdk.git/+/b5e12ecafffeb27332ba761605da0e26d247fff0)
by Brian Wilkerson · 7 days ago

[4bb760d](https://dart.googlesource.com/sdk.git/+/4bb760d8375ea25d0516e7b8719c8ee4c4b71ad3)
[Version
3.9.0-175.0.dev](https://dart.googlesource.com/sdk.git/+/4bb760d8375ea25d0516e7b8719c8ee4c4b71ad3)
by Dart CI · 7 days ago
[3.9.0-175.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.9.0-175.0.dev)

[797b076](https://dart.googlesource.com/sdk.git/+/797b076edb212d1eb26b10051f0c51c603523497)
[Check for visisbility only once when adding completions for element
members.](https://dart.googlesource.com/sdk.git/+/797b076edb212d1eb26b10051f0c51c603523497)
by Keerti Parthasarathy · 7 days ago

[19992d8](https://dart.googlesource.com/sdk.git/+/19992d86c0997288f02133716c1ab94371759fc6)
[Version
3.9.0-174.0.dev](https://dart.googlesource.com/sdk.git/+/19992d86c0997288f02133716c1ab94371759fc6)
by Dart CI · 7 days ago
[3.9.0-174.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.9.0-174.0.dev)

[a4e0a0b](https://dart.googlesource.com/sdk.git/+/a4e0a0b3f8fcc362b895a801ed9125172fcff190)
[[build] Pass -Zxz to dh_builddeb instead of
dpkg-buildpackage.](https://dart.googlesource.com/sdk.git/+/a4e0a0b3f8fcc362b895a801ed9125172fcff190)
by Ryan Macnak · 7 days ago

[323b247](https://dart.googlesource.com/sdk.git/+/323b247ba96fdc4843645d7e13e34b27d00b0831)
[[build] Explicitly build the Debian package using xz
compression.](https://dart.googlesource.com/sdk.git/+/323b247ba96fdc4843645d7e13e34b27d00b0831)
by Ryan Macnak · 7 days ago

[93ddc95](https://dart.googlesource.com/sdk.git/+/93ddc95051548f11f7ae1c7733789b390188f987)
[Bump dartdoc to
8e6a95c4aba8def4ef01ccc600b3a3cfb8f3cb9e](https://dart.googlesource.com/sdk.git/+/93ddc95051548f11f7ae1c7733789b390188f987)
by Devon Carew · 7 days ago

[786b6c5](https://dart.googlesource.com/sdk.git/+/786b6c5612860740105a09d536f6801ff59f74d9)
[[dartfuzz] Extend VM flag fuzzing to dartfuzz and
iso-stress.](https://dart.googlesource.com/sdk.git/+/786b6c5612860740105a09d536f6801ff59f74d9)
by Ryan Macnak · 7 days ago

[f8f2227](https://dart.googlesource.com/sdk.git/+/f8f22279f120f4fe6577561e183cd4a5f2888ceb)
[Version
3.9.0-173.0.dev](https://dart.googlesource.com/sdk.git/+/f8f22279f120f4fe6577561e183cd4a5f2888ceb)
by Dart CI · 7 days ago
[3.9.0-173.0.dev](https://dart.googlesource.com/sdk.git/+/refs/tags/3.9.0-173.0.dev)

[012d84a](https://dart.googlesource.com/sdk.git/+/012d84a821859a29bc63239cbb6f171db8f578ea)
[Fine. Record requesting the whole
interface.](https://dart.googlesource.com/sdk.git/+/012d84a821859a29bc63239cbb6f171db8f578ea)
by Konstantin Shcheglov · 7 days ago

[e2fdf18](https://dart.googlesource.com/sdk.git/+/e2fdf18b66ba7da09f60f9d91966a86d7e38f827)
[[dart2js] Refine types based on test with late
sentinel](https://dart.googlesource.com/sdk.git/+/e2fdf18b66ba7da09f60f9d91966a86d7e38f827)
by Stephen Adams · 7 days ago

[8955223](https://dart.googlesource.com/sdk.git/+/89552236ffb3c60bd2bdcc8a1c68d3d5c441214f)
[[analyzer] Dot shorthands: Infer type parameters in constructor
tearoffs.](https://dart.googlesource.com/sdk.git/+/89552236ffb3c60bd2bdcc8a1c68d3d5c441214f)
by Kallen Tu · 7 days ago

[785b38e](https://dart.googlesource.com/sdk.git/+/785b38ed5b38b5e822f49f5c1d5a0367e3d3f7fa)
[Convert remove-dead-code to use
nodeCovering](https://dart.googlesource.com/sdk.git/+/785b38ed5b38b5e822f49f5c1d5a0367e3d3f7fa)
by Brian Wilkerson · 7 days ago

[b916392](https://dart.googlesource.com/sdk.git/+/b9163920083e1415bf925aab7bf57dc99073f50a)
[[vm] Move handle check after barrier in CompileFunction runtime
entry.](https://dart.googlesource.com/sdk.git/+/b9163920083e1415bf925aab7bf57dc99073f50a)
by Ryan Macnak · 7 days ago

[18aa7d3](https://dart.googlesource.com/sdk.git/+/18aa7d3678fd9fa8ffd4e2e8cdf23582a3c14474)
[[vm] Refactor runtime
entries.](https://dart.googlesource.com/sdk.git/+/18aa7d3678fd9fa8ffd4e2e8cdf23582a3c14474)
by Ryan Macnak · 7 days ago

[d2c0f0a](https://dart.googlesource.com/sdk.git/+/d2c0f0ae16383564d0307dfad579c2c9e0a2d82e)
[[analysis_server] Support folding try/catch/finally
blocks](https://dart.googlesource.com/sdk.git/+/d2c0f0ae16383564d0307dfad579c2c9e0a2d82e)
by Danny Tuppeny · 7 days ago

[33daa43](https://dart.googlesource.com/sdk.git/+/33daa43c861a800f0cb80a95506a1ac4127ffc64)
[CodeGen. Document
GenerateNodeProperty.](https://dart.googlesource.com/sdk.git/+/33daa43c861a800f0cb80a95506a1ac4127ffc64)
by Konstantin Shcheglov · 7 days ago

[77dd4fb3](https://dart.googlesource.com/sdk.git/+/77dd4fb3eaf086e393e73f126bd9bfe29f08d047)
[Fine. Remove library self-dependency from
'instances'.](https://dart.googlesource.com/sdk.git/+/77dd4fb3eaf086e393e73f126bd9bfe29f08d047)
by Konstantin Shcheglov · 7 days ago

[4a64532](https://dart.googlesource.com/sdk.git/+/4a64532ace049bdf6559a0330ff693326e124acc)
[Fine. Match type parameters of
InstanceItem(s).](https://dart.googlesource.com/sdk.git/+/4a64532ace049bdf6559a0330ff693326e124acc)
by Konstantin Shcheglov · 7 days ago

[5047e68](https://dart.googlesource.com/sdk.git/+/5047e6895fbc6b0e25ea07e45e6438ff15f8c476)
[[dds/dap] Handle parsing stack frames that contain dots in
paths](https://dart.googlesource.com/sdk.git/+/5047e6895fbc6b0e25ea07e45e6438ff15f8c476)
by Danny Tuppeny · 7 days ago

[d828c36](https://dart.googlesource.com/sdk.git/+/d828c36cec4da9e39a862ea786debb83eeab4320)
[Add a `dart mcp-server` command per
go/dart-mcp-server-release-plan.](https://dart.googlesource.com/sdk.git/+/d828c36cec4da9e39a862ea786debb83eeab4320)
by Jake Macdonald · 7 days ago

[f3a4e5b](https://dart.googlesource.com/sdk.git/+/f3a4e5bc548fa6d950600418b44b01421d6b73ad)
[Fine. Record InstanceElement.methods
access.](https://dart.googlesource.com/sdk.git/+/f3a4e5bc548fa6d950600418b44b01421d6b73ad)
by Konstantin Shcheglov · 7 days ago

[03515b4](https://dart.googlesource.com/sdk.git/+/03515b472e883f71e8a730da454ed5dc4e610956)
[[analyzer] Dot shorthands: Update
indexing.](https://dart.googlesource.com/sdk.git/+/03515b472e883f71e8a730da454ed5dc4e610956)
by Kallen Tu · 7 days ago

[15f49c9d](https://dart.googlesource.com/sdk.git/+/15f49c9da0f62c840c4425254870d06db69eba58)
[[deps] rev
tools](https://dart.googlesource.com/sdk.git/+/15f49c9da0f62c840c4425254870d06db69eba58)
by Danny Tuppeny · 7 days ago

[e3fe1c3](https://dart.googlesource.com/sdk.git/+/e3fe1c36f376358e012ee9b09258dab6210a99ce)
[Issue 60791. Don't add elements without names to exported
references.](https://dart.googlesource.com/sdk.git/+/e3fe1c36f376358e012ee9b09258dab6210a99ce)
by Konstantin Shcheglov · 7 days ago

[6b53073](https://dart.googlesource.com/sdk.git/+/6b53073eae118baec4fd5b9c9b6e8cf743df1587)
[Reland "[vm, gen_snapshot] Add app-aot-macho-dylib option for AOT
snapshots."](https://dart.googlesource.com/sdk.git/+/6b53073eae118baec4fd5b9c9b6e8cf743df1587)
by Tess Strickland · 7 days ago

[38ea3a8](https://dart.googlesource.com/sdk.git/+/38ea3a8f5e930ee77a0ff407cdbbec0629d22faa)
[Revert "[vm, gen_snapshot] Add app-aot-macho-dylib option for AOT
snapshots."](https://dart.googlesource.com/sdk.git/+/38ea3a8f5e930ee77a0ff407cdbbec0629d22faa)
by Tess Strickland · 8 days ago
2025-06-04 17:18:59 +00:00
engine-flutter-autoroll
1fcd888704
Roll Packages from 1765c952032c to 2bac766c5853 (4 revisions) (#169993)
1765c95203...2bac766c58

2025-06-03 r.masarovic@gmail.com [in_app_purchase_android]
GooglePlayPurchaseParam add possibility set selected offerToken
(flutter/packages#8452)
2025-06-03 github@alexv525.com [camera] 🐛 Fix toggles overflow in the
camera example (flutter/packages#9274)
2025-06-03 stuartmorgan@google.com [shared_preferences] Remove duplicate
integration test (flutter/packages#9368)
2025-06-03 sokolovskyi.konstantin@gmail.com [pointer_interceptor_web]
Fix unresponsive input above PointerInterceptor on Safari and Firefox.
(flutter/packages#9362)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages-flutter-autoroll
Please CC flutter-ecosystem@google.com on the revert to ensure that a
human
is aware of the problem.

To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2025-06-04 16:01:23 +00:00
Matan Lurey
99a5b3fb4e
Use noExitOnFailure in flutter clean. (#169966)
Closes https://github.com/flutter/flutter/issues/108978.
2025-06-04 14:47:39 +00:00
René Kilczan
0c0406a615
Resolve resolve native Flutter dependencies in Android Studio (#167332)
With this fix you can edit Flutter and native code in one Android Studio
instance. This fixes #19830

The only downside is that you need to copy the files `settings.gradle`,
`build.gradle` and `local.properteis` from the `android` folder to the
project root folder. The last one should be added to the `.gitignore`
file.

The second step is that you need to correct the path in the
`settings.gradle` at the end is:
```groovy
include ':app'
```
That needs to be replaced with:
```groovy
include ':app'
project(':app').projectDir = new File(rootDir, 'android/app/')
```

The cool thing is if you have two flutter projects or another gradle
module you can include them there too and you get the autocompletion
too.

```groovy
include ':app', ':app2', ':native-lib'
project(':app').projectDir = new File(rootDir, 'android/app/')
project(':app2').projectDir = new File(rootDir, 'app2/android/app/')
project(':native-lib').projectDir = new File(rootDir, 'example/native-lib/')
```

My assumption is that there will be some change requests and some
questions. Feel free to ask

<!--
*If you had to change anything in the [flutter/tests] repo, include a
link to the migration guide as per the [breaking change policy].*
-->
## Pre-launch Checklist

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

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

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-06-04 14:35:33 +00:00
Runrioter Wung
d966d99b68
fix: add the missing type of debug metadata (#169864)
<!--
Thanks for filing a pull request!
Reviewers are typically assigned within a week of filing a request.
To learn more about code review, see our documentation on Tree Hygiene:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
-->

Add the missing type of debug metadata

Fixes #169252, fixes #169443

## Pre-launch Checklist

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

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

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-06-04 13:24:37 +00:00
Moritz
da95aca671
Data assets (#169273)
Refiling of #164094, which itself is a rebase of #159675

This PR adds bundling support for the experimental dart data asset
feature: Dart packages with hooks can now emit data assets which the
flutter tool will bundle.

It relies on flutter's existing asset bundling mechanism (e.g. entries
in AssetManifest.json, DevFS syncing in reload/restart, ...).

The support is added under an experimental flag (similar to the existing
native assets experimental flag).

Also, kNativeAssets is removed to also bundle data assets on flutter
build bundle.

The chrome sandbox is disabled as per #165664.

## Pre-launch Checklist

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

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

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2025-06-04 10:14:20 +00:00
engine-flutter-autoroll
0064fbaf11
Roll Skia from a0d16825479f to 14bdc9e0a8ee (4 revisions) (#169969)
https://skia.googlesource.com/skia.git/+log/a0d16825479f..14bdc9e0a8ee

2025-06-04 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia
Infra from 2b4238da8672 to 1a29d4378c5a (6 revisions)
2025-06-04 skia-autoroll@skia-public.iam.gserviceaccount.com Roll
vulkan-deps from b1b8f1daa836 to a6136634622e (7 revisions)
2025-06-04 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Dawn
from 3667b9e854fa to 0b7011542a20 (28 revisions)
2025-06-04 michaelludwig@google.com [graphite] Avoid scissor rect state
changes when possible

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-flutter-autoroll
Please CC brettos@google.com,chinmaygarde@google.com,kjlubick@google.com
on the revert to ensure that a human
is aware of the problem.

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
2025-06-04 08:36:40 +00:00