42698 Commits

Author SHA1 Message Date
engine-flutter-autoroll
0917e9dfdc
Roll Flutter Engine from 2068577e510b to 01de9dcf6bbf (1 revision) (#156274)
2068577e51...01de9dcf6b

2024-10-05 skia-flutter-autoroll@skia.org Roll Skia from 9145d1ef9638 to 702044e777a3 (1 revision) (flutter/engine#55675)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC matanl@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
2024-10-05 14:29:23 +00:00
engine-flutter-autoroll
1c1003681c
Roll Flutter Engine from 6d6bc39fe8b1 to 2068577e510b (1 revision) (#156267)
6d6bc39fe8...2068577e51

2024-10-05 skia-flutter-autoroll@skia.org Roll Dart SDK from 9aa80e32947d to 5e6945a72200 (1 revision) (flutter/engine#55674)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC matanl@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
2024-10-05 09:12:21 +00:00
engine-flutter-autoroll
3ae9063f68
Roll Flutter Engine from 92b5b318190b to 6d6bc39fe8b1 (4 revisions) (#156266)
92b5b31819...6d6bc39fe8

2024-10-05 flar@google.com Honor blur tile mode in BackdropFilter widget on Skia backend (flutter/engine#55640)
2024-10-05 jonahwilliams@google.com [Impeller] remove aiks color_filter and image_filter types. (flutter/engine#55654)
2024-10-05 skia-flutter-autoroll@skia.org Roll Dart SDK from c1c971fd1b94 to 9aa80e32947d (1 revision) (flutter/engine#55673)
2024-10-05 bdero@google.com [Flutter GPU] Add WindingOrder. (flutter/engine#55413)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC matanl@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
2024-10-05 06:32:20 +00:00
engine-flutter-autoroll
572b1d7b08
Roll Flutter Engine from fd6082ab6693 to 92b5b318190b (1 revision) (#156261)
fd6082ab66...92b5b31819

2024-10-05 jonahwilliams@google.com [Impeller] remove usage of MaxBasisLength in favor of XY variant. (flutter/engine#55670)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC matanl@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
2024-10-05 02:04:06 +00:00
engine-flutter-autoroll
6aea099475
Roll Flutter Engine from bc5f9fc80b06 to fd6082ab6693 (4 revisions) (#156258)
bc5f9fc80b...fd6082ab66

2024-10-04 skia-flutter-autoroll@skia.org Roll Dart SDK from ecba03620fc8 to c1c971fd1b94 (2 revisions) (flutter/engine#55668)
2024-10-04 john@johnmccutchan.com Add --rbe-force-local flag to force rbe task execution to happen on the local machine (flutter/engine#55635)
2024-10-04 skia-flutter-autoroll@skia.org Roll Skia from 4aff9603622d to 9145d1ef9638 (2 revisions) (flutter/engine#55665)
2024-10-04 matanlurey@users.noreply.github.com Add support for `et test //flutter/path/to/dart_test` (flutter/engine#55638)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC matanl@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
2024-10-05 00:02:41 +00:00
engine-flutter-autoroll
cbe72af9e6
Roll Flutter Engine from eece6c3ec63a to bc5f9fc80b06 (2 revisions) (#156252)
eece6c3ec6...bc5f9fc80b

2024-10-04 flar@google.com [Impeller] Use a squircle-sdf-based algorithm for fast blurs (flutter/engine#55604)
2024-10-04 skia-flutter-autoroll@skia.org Roll Skia from 59f512b47cc0 to 4aff9603622d (1 revision) (flutter/engine#55663)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC matanl@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
2024-10-04 22:53:41 +00:00
flutter-pub-roller-bot
d6725e7c01
Roll pub packages (#156254)
This PR was generated by `flutter update-packages --force-upgrade`.
2024-10-04 22:47:16 +00:00
engine-flutter-autoroll
4c9174f46d
Roll Flutter Engine from 9fa363bdde20 to eece6c3ec63a (1 revision) (#156250)
9fa363bdde...eece6c3ec6

2024-10-04 skia-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from TnSpLq0S9XT2rHGl1... to Izy4D5DB98t46Zoh9... (flutter/engine#55662)

Also rolling transitive DEPS:
  fuchsia/sdk/core/linux-amd64 from TnSpLq0S9XT2 to Izy4D5DB98t4

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC matanl@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
2024-10-04 21:13:24 +00:00
engine-flutter-autoroll
7e4a7dab75
Roll Flutter Engine from d38f5e560a98 to 9fa363bdde20 (1 revision) (#156249)
d38f5e560a...9fa363bdde

2024-10-04 skia-flutter-autoroll@skia.org Roll Skia from e8e0a8c46345 to 59f512b47cc0 (3 revisions) (flutter/engine#55660)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC matanl@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
2024-10-04 20:18:07 +00:00
Andrew Kolos
514cf62d03
remove bringup from Windows tool_integration_tests_* (#156179)
Follow up to
* https://github.com/flutter/flutter/pull/156121

Removes bringup status from these tasks.
2024-10-04 19:49:14 +00:00
engine-flutter-autoroll
04d082b180
Roll Flutter Engine from 205484009711 to d38f5e560a98 (4 revisions) (#156239)
2054840097...d38f5e560a

2024-10-04 jonahwilliams@google.com [Impeller] generate mipmaps for toImage. (flutter/engine#55655)
2024-10-04 chris@bracken.jp iOS: Migrate FlutterEngine to ARC (flutter/engine#55590)
2024-10-04 skia-flutter-autoroll@skia.org Roll Skia from 0dfa080b5d71 to e8e0a8c46345 (1 revision) (flutter/engine#55652)
2024-10-04 skia-flutter-autoroll@skia.org Roll Dart SDK from 750b6e44b765 to ecba03620fc8 (1 revision) (flutter/engine#55650)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC matanl@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
2024-10-04 19:12:56 +00:00
Qun Cheng
534adfbe02
Normalize ThemeData.cardTheme (#153254)
Following https://github.com/flutter/flutter/pull/151914, this PR is to normalize `ThemeData.cardTheme`; change the `CardTheme cardTheme` property to `CardThemeData cardTheme` in `ThemeData`. In `ThemeData()` and `ThemeData.copyWith()`, the `cardTheme` parameter type is changed to `Object?` to accept both `CardTheme` and `CardThemeData` so that we won't cause immediate breaking change and make sure rolling is smooth. Once all component themes are normalized, these `Object?` types should be changed to `xxxThemeData`.

There's no way to create a dart fix because we can't add a "@deprecated" label for `CardTheme` because `CardTheme` is a new InheritedWidget subclass now.

Addresses the "theme normalization" sub project within https://github.com/flutter/flutter/issues/91772
2024-10-04 18:59:05 +00:00
engine-flutter-autoroll
85abc1a3a4
Roll Packages from 429650f681c0 to 05bf1d482dd9 (5 revisions) (#156225)
429650f681...05bf1d482d

2024-10-04 stuartmorgan@google.com [various] Update Swift plugins for non-nullable generics (flutter/packages#7742)
2024-10-04 stuartmorgan@google.com [url_launcher] Update Android Pigeon (flutter/packages#7744)
2024-10-04 22963120+Craftplacer@users.noreply.github.com [xdg_directories] Add `stateHome` property (flutter/packages#7766)
2024-10-03 stuartmorgan@google.com [file_selector] Update Android Pigeon for non-nullable generics (flutter/packages#7781)
2024-10-03 cedvandenbosch@gmail.com [go_router] Relax subroute path requirements (allow root and child routes to have the same path forms ) (flutter/packages#7647)

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
2024-10-04 15:40:23 +00:00
engine-flutter-autoroll
195f81e025
Roll Flutter Engine from e0109f0fd5b2 to 205484009711 (1 revision) (#156216)
e0109f0fd5...2054840097

2024-10-04 skia-flutter-autoroll@skia.org Roll Dart SDK from b96383c6bddd to 750b6e44b765 (3 revisions) (flutter/engine#55649)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC matanl@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
2024-10-04 12:07:38 +00:00
flutter-pub-roller-bot
1371d9d916
Roll pub packages (#156215)
This PR was generated by `flutter update-packages --force-upgrade`.
2024-10-04 11:59:31 +00:00
engine-flutter-autoroll
e6e5ceda95
Roll Flutter Engine from c2a9fb051bd0 to e0109f0fd5b2 (1 revision) (#156213)
c2a9fb051b...e0109f0fd5

2024-10-04 skia-flutter-autoroll@skia.org Roll Skia from cef6e8423365 to 0dfa080b5d71 (4 revisions) (flutter/engine#55648)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC matanl@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
2024-10-04 11:12:23 +00:00
engine-flutter-autoroll
285b9b11ec
Roll Flutter Engine from 66d397dff87a to c2a9fb051bd0 (5 revisions) (#156206)
66d397dff8...c2a9fb051b

2024-10-04 skia-flutter-autoroll@skia.org Roll Skia from e732cdf455c8 to cef6e8423365 (1 revision) (flutter/engine#55644)
2024-10-04 jonahwilliams@google.com [Impeller] clamp render target size at max texture size. (flutter/engine#55628)
2024-10-04 skia-flutter-autoroll@skia.org Roll Skia from 379139f0bebe to e732cdf455c8 (11 revisions) (flutter/engine#55642)
2024-10-04 jonahwilliams@google.com [Impeller] remove aiks color_source. (flutter/engine#55603)
2024-10-04 skia-flutter-autoroll@skia.org Roll Dart SDK from 91d39199994c to b96383c6bddd (1 revision) (flutter/engine#55641)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC matanl@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
2024-10-04 10:08:19 +00:00
engine-flutter-autoroll
389846308a
Roll Flutter Engine from 20369c5d2b93 to 66d397dff87a (5 revisions) (#156188)
20369c5d2b...66d397dff8

2024-10-04 matanlurey@users.noreply.github.com Add missing license headers to `engine_tool`. (flutter/engine#55636)
2024-10-03 robert.ancell@canonical.com Refactor FlKeyboardHandler (flutter/engine#55601)
2024-10-03 matanlurey@users.noreply.github.com Add and use a `dart_test` rule. (flutter/engine#55630)
2024-10-03 skia-flutter-autoroll@skia.org Roll Dart SDK from 4c767e0fae21 to 91d39199994c (1 revision) (flutter/engine#55631)
2024-10-03 jonahwilliams@google.com [Impeller] ensure one AiksContext per app. (flutter/engine#55629)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC matanl@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
2024-10-04 01:52:22 +00:00
engine-flutter-autoroll
d93dadc24b
Roll Flutter Engine from de1762dbc5cc to 20369c5d2b93 (7 revisions) (#156174)
de1762dbc5...20369c5d2b

2024-10-03 chinmaygarde@google.com [Impeller] A text layout and shaping API for the standalone library. (flutter/engine#55598)
2024-10-03 matanlurey@users.noreply.github.com Refactor `et run` (and friends). (flutter/engine#55537)
2024-10-03 jason-simmons@users.noreply.github.com [Impeller] Do not cull in TextFrameDispatcher::drawDisplayList if the transform has perspective (flutter/engine#55602)
2024-10-03 chris@bracken.jp iOS: Fix IOSSurfaceNoopTest (flutter/engine#55621)
2024-10-03 98614782+auto-submit[bot]@users.noreply.github.com Reverts "[Impeller] one aiks context per app. (#55393)" (flutter/engine#55625)
2024-10-03 skia-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from YKvfbpZ38daiwJ7H0... to TnSpLq0S9XT2rHGl1... (flutter/engine#55622)
2024-10-03 jonahwilliams@google.com [Impeller] one aiks context per app. (flutter/engine#55393)

Also rolling transitive DEPS:
  fuchsia/sdk/core/linux-amd64 from YKvfbpZ38dai to TnSpLq0S9XT2

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC matanl@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
2024-10-03 22:17:26 +00:00
Nate Wilson
5bfc3d43ae
Refactor devfs_web_ddc_modules_test.dart (#155609)
This pull request adds a local function `runInTestbed()` to **devfs_web_ddc_modules_test.dart**, which wraps the `testbed.run()` method. Several whitespace adjustments have been made as well.

<br>

It's much easier to read after clicking "hide whitespace".

<br>

Relevant style guidelines:
- Prefer avoiding line breaks after assignment operators.
- If you have a newline after some opening punctuation, match it on the closing punctuation.
- Only use `=>` when everything, including the function declaration, fits on a single line.
2024-10-03 21:10:03 +00:00
Tong Mu
59e57437db
Allow arrow keys to navigate MenuAnchor independently of global shortcut definition (#155728)
This PR adjusts the implementation of handling navigational shortcuts (i.e. arrow keys) on `MenuAnchor` and `DropdownMenu`.

## Motivation
The direct outcome of this PR is to allow keyboard to enter submenus on Web: When the focus is on a `MenuAnchor` while the menu is open, pressing arrow keys should move the focus to the menu item.
* Before the PR, this works for all platforms but Web, a problem described in https://github.com/flutter/flutter/issues/119532#issuecomment-2274705565.

It is caused by the fact that `MenuAnchor` does not wrap itself with a `Shortcuts`, and therefore key events when the focus is on a `MenuAnchor` has been working only because the event falls back to the `Shortcuts` widget defined by `WidgetsApp`, whose default value happens to satisfy `MenuAnchor`'s needs - except on Web where arrow keys are defined to scroll instead of traverse. 

Instead of defining this problem as "just a patch for Web", I think it's better to define it as a problem of all platforms: `MenuAnchor`'s shortcuts should be independent of `WidgetsApp.shortcuts`. Because even if `WidgetsApp.shortcuts` is redefined as something else, people should probably still expect arrow keys to work on `MenuAnchor`.

Therefore this PR makes `MenuAnchor` produce a `Shortcuts` by itself.

### Dropdown menu
The fix above breaks `DropdownMenu`. `DropdownMenu` uses `MenuAnchor`, while defining its own shortcuts because, when filter is enabled:
* The left and right arrow keys need to move the text carets instead
* The up and down arrow keys need to "fake" directional navigation - the focus needs to stay on the text field, while some menu item is highlighted as if it is focused.

Before the PR, `DropdownMenu` defines these shortcuts out of `MenuAnchor`. In order for the `DropdownMenu`'s shortcuts to take priority, these shortcuts are moved to between `MenuAnchor` and the `Textfield`.

A test is added to verify that the left/right keys move text carets.

Below are psuedo-widget-trees after the PR:
```
MenuAnchor
 |- Shortcuts(arrows->DirectionalFocusIntent)
    |- MenuAnchor.child
    |- menu

DropdownMenu
 |- Actions(DirectionalFocusIntent->_dropdownMenuNavigation)
    |- MenuAnchor
        |- Shortcuts(arrows->DirectionalFocusIntent)
            |- Shortcuts(leftright->ExtendSelectionByCharacterIntent, updown->_dropdownMenuArrowIntent)
            |  |- TextField
            |     |- EditableText
            |        |- Actions(DirectionalFocusIntent->DirectionalFocusAction.forTextField)
            |- menu
```

## Known issues
After this PR, traversing the menu still have quite a few problems, which are left for other PRs.
2024-10-03 20:09:19 +00:00
Nate Wilson
500285d39a
Inherited Theme: zero rebuilds (#155699)
> ### Write Test, Find Bug
>
> When you fix a bug, first write a test that fails, then fix the bug and verify the test passes.

<br>

When `Theme.of(context)` is called in a `build()` method, the widget is rebuilt each frame during an `AnimatedTheme` transition.

I wanted to create a way for `RenderObject`s to be updated directly, so I wrote a test:

```dart
testWidgets('InheritedWidgets can trigger RenderObject updates', (WidgetTester tester) async {
  // ...
});
```

…and it passed.

<br><br>

As it turns out, no change is needed at all!

This PR resolves #155852 by adding the "InheritedWidgets can trigger RenderObject updates" test, to ensure that this awesome capability doesn't break in the future.
2024-10-03 19:24:06 +00:00
engine-flutter-autoroll
d39550fb52
Roll Flutter Engine from 247bc68c578e to de1762dbc5cc (4 revisions) (#156160)
247bc68c57...de1762dbc5

2024-10-03 skia-flutter-autoroll@skia.org Roll Skia from fe3cd2adeaaa to 379139f0bebe (2 revisions) (flutter/engine#55617)
2024-10-03 jason-simmons@users.noreply.github.com [Impeller] Fix handling of perspective matrices in Matrix::Translate (flutter/engine#55536)
2024-10-03 skia-flutter-autoroll@skia.org Roll Skia from 68fea8aa589b to fe3cd2adeaaa (1 revision) (flutter/engine#55613)
2024-10-03 skia-flutter-autoroll@skia.org Roll Dart SDK from 1c2e6ad84af1 to 4c767e0fae21 (1 revision) (flutter/engine#55612)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC matanl@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
2024-10-03 18:34:03 +00:00
flutter-pub-roller-bot
be792afc51
Roll pub packages (#156159)
This PR was generated by `flutter update-packages --force-upgrade`.
2024-10-03 18:32:06 +00:00
Nate Wilson
5ecf10052f
pattern-matching refactor (#154753)
This pull request aims to improve code readability, based on feedback gathered in a recent design doc.

<br>

There are two factors that hugely impact how easy it is to understand a piece of code: **verbosity** and **complexity**.

Reducing **verbosity** is important, because boilerplate makes a project more difficult to navigate. It also has a tendency to make one's eyes gloss over, and subtle typos/bugs become more likely to slip through.

Reducing **complexity** makes the code more accessible to more people. This is especially important for open-source projects like Flutter, where the code is read by those who make contributions, as well as others who read through source code as they debug their own projects.

<hr>

<br>

The following examples show how pattern-matching might affect these two factors:

<details> <summary><h3>Example 1 (GOOD)</h3> [click to expand]</summary>

```dart
if (ancestor case InheritedElement(:final InheritedTheme widget)) {
  themes.add(widget);
}
```

Without using patterns, this might expand to

```dart
if (ancestor is InheritedElement) {
  final InheritedWidget widget = ancestor.widget;
  if (widget is InheritedTheme) {
    themes.add(widget);
  }
}
```

Had `ancestor` been a non-local variable, it would need to be "converted" as well:

```dart
final Element ancestor = this.ancestor;
if (ancestor is InheritedElement) {
  final InheritedWidget inheritedWidget = ancestor.widget;
  if (widget is InheritedTheme) {
    themes.add(theme);
  }
}
```

</details>

<details> <summary><h3>Example 2 (BAD) </h3> [click to expand]</summary>

```dart
if (widget case PreferredSizeWidget(preferredSize: Size(:final double height))) {
  return height;
}
```

Assuming `widget` is a non-local variable, this would expand to:

```dart
final Widget widget = this.widget;
if (widget is PreferredSizeWidget) {
  return widget.preferredSize.height;
}
```

<br>

</details>

In both of the examples above, an `if-case` statement simultaneously verifies that an object meets the specified criteria and performs a variable assignment accordingly.

But there are some differences: Example 2 uses a more deeply-nested pattern than Example 1 but makes fewer useful checks.

**Example 1:**
- checks that `ancestor` is an `InheritedElement`
- checks that the inherited element's `widget` is an `InheritedTheme`

**Example 2:**
- checks that `widget` is a `PreferredSizeWidget`
(every `PreferredSizeWidget` has a `size` field, and every `Size` has a `height` field)

<br>

<hr>

I feel hesitant to try presenting a set of cut-and-dry rules as to which scenarios should/shouldn't use pattern-matching, since there are an abundance of different types of patterns, and an abundance of different places where they might be used.

But hopefully the conversations we've had recently will help us converge toward a common intuition of how pattern-matching can best be utilized for improved readability.

<br><br>

- resolves https://github.com/flutter/flutter/issues/152313
- Design Doc: [flutter.dev/go/dart-patterns](https://flutter.dev/go/dart-patterns)
2024-10-03 18:21:04 +00:00
Thomas Hareau
91eb8d226d
Add autocorrect and enableSuggestions to SearchDelegate (#154932)
Add `autocorrect` and `enableSuggestions` to `SearchDelegate`, so that autocompletion can be disabled in search. 

*List which issues are fixed by this PR. You must list at least one issue. An issue is not required if the PR fixes something trivial like a typo.*

* https://github.com/flutter/flutter/issues/98241

*If you had to change anything in the [flutter/tests] repo, include a link to the migration guide as per the [breaking change policy].*
2024-10-03 18:14:51 +00:00
engine-flutter-autoroll
c8c2f4651a
Roll Packages from 7c97c8809bc9 to 429650f681c0 (6 revisions) (#156155)
7c97c8809b...429650f681

2024-10-03 34871572+gmackall@users.noreply.github.com [camera, google_sign_in, espresso] Bump guava to version `33.3.1`. (flutter/packages#7773)
2024-10-03 stuartmorgan@google.com [video_player] Remove -Werror from Android build (flutter/packages#7776)
2024-10-03 echo.ellet@gmail.com [pigeon] chore(readme): deprecated command of running pigeon (flutter/packages#7761)
2024-10-02 49699333+dependabot[bot]@users.noreply.github.com [image_picker]: Bump androidx.activity:activity from 1.9.1 to 1.9.2 in /packages/image_picker/image_picker_android/android (flutter/packages#7607)
2024-10-02 43759233+kenzieschmoll@users.noreply.github.com Add percentile computations to benchmark scores (flutter/packages#7760)
2024-10-02 stuartmorgan@google.com [various] Unpin some dev dependencies (flutter/packages#7762)

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
2024-10-03 17:26:34 +00:00
Andrew Kolos
ab9efa88d6
Move some tools test ownership to Ben (#156123)
5eca44a1c4 moved some ownership of tests from @christopherfujino to @andrewkolos since Chris was no longer leading engineering efforts for the `flutter` tool. Now that @bkonyi is leading, this PR moves ownership of these test suites to him.

@bkonyi, note that this doesn't imply that you will be responsible for fixing any issues in these tests. This just means that the bot will assign flake issues to you for further triage.
2024-10-03 17:18:53 +00:00
Andrew Kolos
58e0e00c63
further shard the Windows tool_integration_tests* targets (#156121)
Helps with https://github.com/flutter/flutter/issues/155012

Will remove `bringup` statuses after this merges.
2024-10-03 17:13:28 +00:00
engine-flutter-autoroll
ec2e12ba50
Roll Flutter Engine from bd44b58e3204 to 247bc68c578e (7 revisions) (#156144)
bd44b58e32...247bc68c57

2024-10-03 skia-flutter-autoroll@skia.org Roll Dart SDK from 8b45ba3fdbfa to 1c2e6ad84af1 (1 revision) (flutter/engine#55610)
2024-10-03 skia-flutter-autoroll@skia.org Roll Skia from f074e2bd0aba to 68fea8aa589b (1 revision) (flutter/engine#55609)
2024-10-03 skia-flutter-autoroll@skia.org Roll Skia from df2e478e9f8d to f074e2bd0aba (1 revision) (flutter/engine#55608)
2024-10-03 skia-flutter-autoroll@skia.org Roll Skia from ba95ec201dfd to df2e478e9f8d (2 revisions) (flutter/engine#55607)
2024-10-03 skia-flutter-autoroll@skia.org Roll Dart SDK from 14b931c40076 to 8b45ba3fdbfa (1 revision) (flutter/engine#55606)
2024-10-03 skia-flutter-autoroll@skia.org Roll Skia from 03431ca9d337 to ba95ec201dfd (3 revisions) (flutter/engine#55599)
2024-10-03 30870216+gaaclarke@users.noreply.github.com Vectorize rrect_blur (flutter/engine#55576)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC matanl@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
2024-10-03 13:50:22 +00:00
engine-flutter-autoroll
e7c993d7f9
Roll Flutter Engine from 70232fa124d0 to bd44b58e3204 (1 revision) (#156124)
70232fa124...bd44b58e32

2024-10-02 zanderso@users.noreply.github.com Shift --no-prebuilt-dart-sdk build to linux_unopt (flutter/engine#55597)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC matanl@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
2024-10-03 01:16:28 +00:00
engine-flutter-autoroll
08f413acb6
Roll Flutter Engine from 33ac1b30ab0a to 70232fa124d0 (2 revisions) (#156122)
33ac1b30ab...70232fa124

2024-10-02 skia-flutter-autoroll@skia.org Roll Skia from 40d51ebc76db to 03431ca9d337 (4 revisions) (flutter/engine#55596)
2024-10-02 aam@google.com Add host engine build that exercises no-prebuilt-dart-sdk (flutter/engine#55589)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC matanl@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
2024-10-03 00:19:24 +00:00
Qun Cheng
64906c28a6
Update ThemeData.dialogTheme type to accept DialogThemeData (#155129)
Following https://github.com/flutter/flutter/pull/153982, this PR is to normalize `ThemeData.dialogTheme`; change the `DialogTheme dialogTheme` property to `DialogThemeData dialogTheme` in ThemeData. In `ThemeData()` and `ThemeData.copyWith()`, the dialogTheme parameter type is changed to `Object?` to accept both `DialogTheme` and `DialogThemeData` so that we won't cause immediate breaking change and make sure rolling is smooth. Once all component themes are normalized, these `Object?` types should be changed to `xxxThemeData`.

There's no way to create a dart fix because we can't add a "@deprecated" label for `DialogTheme`; `DialogTheme` is a new `InheritedWidget` subclass now.

Addresses the "theme normalization" sub project within https://github.com/flutter/flutter/issues/91772
2024-10-02 23:48:13 +00:00
engine-flutter-autoroll
07745fb41f
Roll Flutter Engine from 751ab9b3c5eb to 33ac1b30ab0a (4 revisions) (#156118)
751ab9b3c5...33ac1b30ab

2024-10-02 skia-flutter-autoroll@skia.org Roll Dart SDK from 7d0becb773d1 to 14b931c40076 (2 revisions) (flutter/engine#55594)
2024-10-02 matanlurey@users.noreply.github.com Remove all use of `gn desc` global test fixtures. (flutter/engine#55592)
2024-10-02 skia-flutter-autoroll@skia.org Roll Skia from 61bb59fcef34 to 40d51ebc76db (1 revision) (flutter/engine#55593)
2024-10-02 1961493+harryterkelsen@users.noreply.github.com Reland "[canvaskit] Further improve overlay optimization by splitting pictures" (flutter/engine#55563)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC matanl@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
2024-10-02 23:29:07 +00:00
Alexander Aprelev
661f53ddd4
Add back main() methods to benchmark benches. (#156083)
Dart performance suite needs this since it builds and launches those flutter benchmarks independently

Cf. https://github.com/flutter/flutter/pull/154446
2024-10-02 16:23:47 -07:00
flutter-pub-roller-bot
a9047e93bc
Roll pub packages (#156117)
This PR was generated by `flutter update-packages --force-upgrade`.
2024-10-02 23:01:09 +00:00
Victor Sanni
d0f2a6887e
Add mouseCursor property to CupertinoCheckbox (#151788)
Part of https://github.com/flutter/flutter/issues/58192
2024-10-02 22:47:18 +00:00
engine-flutter-autoroll
896e322fd6
Roll Flutter Engine from 3bdc1c0a30b6 to 751ab9b3c5eb (3 revisions) (#156115)
3bdc1c0a30...751ab9b3c5

2024-10-02 reidbaker@google.com Check stability against most recent cipd emulator artifact (flutter/engine#55591)
2024-10-02 skia-flutter-autoroll@skia.org Roll Skia from ce27189cef4b to 61bb59fcef34 (2 revisions) (flutter/engine#55588)
2024-10-02 jonahwilliams@google.com [impeller] merge aiks directory into impeller/display_list directory. (flutter/engine#55471)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC matanl@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
2024-10-02 22:16:15 +00:00
flutter-pub-roller-bot
4ad274720f
Roll pub packages (#156114)
This PR was generated by `flutter update-packages --force-upgrade`.
2024-10-02 21:12:16 +00:00
Ben Konyi
2c84e63ba7
[ Cocoon ] Wait for task results to be received by the task runner before shutting down the task process (#156002)
Prior to this fix, `_TaskRunner.run` would immediately cleanup the
keep-alive port once the task completed, which would result in the
isolate shutting down as soon as the task result was returned from
`ext.cocoonRunTask` callback in the form of a
`ServiceExtensionResponse`. Since the service extension response is
processed by the service isolate, it was possible for the VM to start
shutting down before the service isolate could send the task result data
back to the task runner.

This change introduces a new service extension,
`ext.cocoonTaskResultReceived`, that the task runner invokes after it
receives the task result from `ext.cocoonRunTask`, notifying the task
process that it can close the keep-alive port and shutdown.

Fixes https://github.com/flutter/flutter/issues/155475
2024-10-02 17:01:24 -04:00
Mitchell Goodwin
d877d2875e
Allow mixing route transitions in one app. (#150031)
Fixes #33799

Allows for a route to inform the route below it in the navigation stack how to animate when the topmost route enters are leaves the stack.

It does this by making a `DelegatedTransition` available for the previous route to look up and use. If available, the route lower in the stack will wrap it's transition builders with that delegated transition and use it instead of it's default secondary transition.

This is what the sample code in this PR shows an app that is able to use both a Material zoom transition and a Cupertino slide transition in one app. It also includes a custom vertical transition. Every page animates off the screen in a way to match up with the incoming page's transition. When popped, the correct transitions play in reverse.

https://github.com/user-attachments/assets/1fc910fa-8cde-4e05-898e-daad8ff4a697

The below video shows this logic making a pseudo iOS styled sheet transition.

https://github.com/flutter/flutter/assets/58190796/207163d8-d87f-48b1-aad9-7e770d1d96c5

All existing page transitions in Flutter will be overwritten by the incoming route if a `delegatedTransition` is provided. This can be opted out of through `canTransitionTo` for a new route widget. Of Flutter's existing page transitions, this PR only adds a `DelegatedTransition` for the Zoom and Cupertino transitions. The other transitions possible in Material will get delegated transitions in a later PR.
2024-10-02 20:08:11 +00:00
engine-flutter-autoroll
b6bfa6a376
Roll Flutter Engine from f20681241753 to 3bdc1c0a30b6 (5 revisions) (#156107)
f206812417...3bdc1c0a30

2024-10-02 matanlurey@users.noreply.github.com Use localized config data for `et test` tests. (flutter/engine#55573)
2024-10-02 matanlurey@users.noreply.github.com Use localized config data for `et query` tests. (flutter/engine#55572)
2024-10-02 skia-flutter-autoroll@skia.org Roll Skia from 41dc26036445 to ce27189cef4b (1 revision) (flutter/engine#55587)
2024-10-02 skia-flutter-autoroll@skia.org Roll Skia from d063b5e450db to 41dc26036445 (2 revisions) (flutter/engine#55586)
2024-10-02 chris@bracken.jp iOS: Migrate accessibility_bridge to ARC (flutter/engine#55570)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC matanl@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
2024-10-02 19:56:56 +00:00
Reid Baker
885338e762
Update Upgrading-Engine's-Android-API-version.md to reflect code move (#156108)
these files moved during https://github.com/flutter/engine/pull/55186/files
2024-10-02 19:45:09 +00:00
engine-flutter-autoroll
ab9f5e2015
Roll Packages from ebcc4f0b014c to 7c97c8809bc9 (5 revisions) (#156106)
ebcc4f0b01...7c97c8809b

2024-10-02 stuartmorgan@google.com [file_selector] Convert Linux to Pigeon (flutter/packages#7770)
2024-10-02 matanlurey@users.noreply.github.com Background/resuming `video_player` on Android sends one `initialized` event (flutter/packages#7722)
2024-10-02 43054281+camsim99@users.noreply.github.com [quick_actions_android] Update instructions for using a launcher activity with more breadcrumbs (flutter/packages#7716)
2024-10-01 43759233+kenzieschmoll@users.noreply.github.com Add flutter frame timings to benchmark metrics (flutter/packages#7759)
2024-10-01 stuartmorgan@google.com [local_auth] Update Pigeon in iOS and Android (flutter/packages#7724)

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
2024-10-02 19:22:13 +00:00
flutter-pub-roller-bot
33baedab60
Roll pub packages (#156105)
This PR was generated by `flutter update-packages --force-upgrade`.
2024-10-02 19:18:54 +00:00
PurplePolyhedron
d461426922
fix wrong test in "fixing DropdownMenu keyboard navigation" (#156084)
I accidentally submitted the wrong test in the last commit in https://github.com/flutter/flutter/pull/155252
Re-uploading the correct one.
2024-10-02 19:06:20 +00:00
Navaron Bracke
57d2a20be3
fix ReorderableList not passing in item extent builder (#155994)
This PR fixes the `ReorderableList` in `flutter/widgets.dart` not passing the item extent builder to the underlying SliverReorderableList. I double checked and the material equivalent is working as intended.

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

*If you had to change anything in the [flutter/tests] repo, include a link to the migration guide as per the [breaking change policy].*
2024-10-02 17:18:21 +00:00
auto-submit[bot]
d238834bee
Reverts "integration_test: migrate to build.gradle.kts (#154125)" (#156087)
Reverts: flutter/flutter#154125
Initiated by: bartekpacia
Reason for reverting: broke postsubmit
Original PR Author: bartekpacia

Reviewed By: {reidbaker, gmackall}

This change reverts the following previous change:
Attempt to reland #142008 half a year later.

Benefit: this will be the first plugin in Flutter repo that uses Gradle KTS for Android buildscripts. Once it works fine, we can follow up with migration of more plugins later.

[The previous error message](https://github.com/flutter/flutter/pull/142008#issuecomment-1939558432) was:

```
e: /b/s/w/ir/cache/gradle/caches/jars-8/42139b5be0c79e133a7b5c5c5d5bf731/gradle-7.3.1.jar!/com/android/build/gradle/LibraryExtension.class: Class 'com/android/build/gradle/LibraryExtension' was compiled with an incompatible version of Kotlin. The binary version of its bytecode is unknown, expected version is 1.0.3
e: /b/s/w/ir/cache/gradle/caches/jars-8/043c0d54e2c1bb39208ec4477607cdf5/gradle-api-7.3.1.jar!/com/android/build/api/dsl/LibraryVariantDimension.class: Class 'com/android/build/api/dsl/LibraryVariantDimension' was compiled with an incompatible version of Kotlin. The binary version of its bytecode is unknown, expected version is 1.0.3

FAILURE: Build failed with an exception.

* Where:
Build file '/b/s/w/ir/x/w/flutter/packages/integration_test/android/build.gradle.kts' line: 36

* What went wrong:
com.android.build.gradle.LibraryExtension.setNamespace(Ljava/lang/String;)V
```

The `integration_test` plugin now puts `com.android.tools.build:gradle:8.1.0` on its classpath since https://github.com/flutter/flutter/issues/153795.

This makes me take an optimistic bet that it won't kill the autoroller now 🤞
2024-10-02 16:34:17 +00:00
Jenn Magder
22247cd55c
Add deprecation warning for "flutter create --ios-language" (#155867)
The Objective-C  `flutter create --ios-language objc` template will be removed in https://github.com/flutter/flutter/issues/148586.

Add a deprecation warning when this flag is passed.  Add an additional warning when Objective-C is specified requesting the user's use-case.

Do not show the warning when creating the module, as Swift is not supported for it yet https://github.com/flutter/flutter/issues/23955

![Screenshot 2024-09-27 at 8 54 16 PM](https://github.com/user-attachments/assets/112be47f-a5bd-4f57-9a9d-c96c7bbc8ac3)

Part of https://github.com/flutter/flutter/issues/148586
2024-10-02 16:13:25 +00:00
Devon Carew
ff7e5f3d73
update flutter create generated projects to use package:flutter_lints 5.0.0 (#156011)
- update flutter create generated projects to use package:flutter_lints
5.0.0; this is a follow-up to publishing `package:flutter_lints` 5.0.0

- related to https://github.com/dart-lang/lints/issues/205

## 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.

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
2024-10-02 08:36:40 -07:00