29204 Commits

Author SHA1 Message Date
gaaclarke
4ffade7c5b Started filtering out close line segments in rrect polylines. (flutter/engine#55929)
fixes https://github.com/flutter/flutter/issues/156422

tests: AiksTest.GradientOvalStrokeMaskBlurSigmaZero

This filtering needs to happen somewheres.  I opted for putting it inside of the AddLinearComponent instead of where it was affected me in the test: 45237cc63f/impeller/geometry/path_builder.cc (L180)

This seems preferable.  A tiny line segment should never matter.  The rub is that its only happening here.  We might want to do this in other places as well.  It's equally unimportant to have a tiny curve.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-10-18 21:54:04 +00:00
Chinmay Garde
cf27a7a314 [Impeller] libImpeller: Allow custom font registrations. (flutter/engine#55934)
Fixes https://github.com/flutter/flutter/issues/156361

cc @lyceel. A bit of miscommunication on the priority of this one. I
thought the default font factories were sufficient for the next release.
But it turns out that was not true on the board which is a custom
platform.

In any case, this should unblock custom font registrations. See the
`CanCreateParagraphsWithCustomFont` case for an example. If you don't
provide the family name alias for the custom font, the name will be read
from the font data. This example uses the custom "WhatTheFlutter" custom
font family in "wtf.otf".

<img width="1136" alt="Screenshot 2024-10-17 at 1 26 36 PM"
src="https://github.com/user-attachments/assets/dbbef2fd-f854-4330-8c82-fc8378489769">
2024-10-18 14:46:58 -07:00
Chris Bracken
1839704803 Re-reland "iOS: Migrate FlutterEngine to ARC" (flutter/engine#55962)
This reverts commit 0a9ed4763365f84be6f92f23abf13c778593715c.
This relands commit 530a9f896c3547fd5e27539e9049fae392d61e73.
That commit was a reland of a2ac734e10115547d8c8ef34610ea6172e3cc98b.

Migrates `FlutterEngine` from manual reference counting to ARC. Migrates properties from `retain` to strong and `assign` to `weak` (where referencing an Obj-C object).

This has the following change from the previous patch:
* startProfiler was updated to eliminate the self-capture in https://github.com/flutter/engine/pull/55957 which prevents the possibility of dealloc on the profiling thread.

No semantic changes, therefore no changes to tests.

Issue: https://github.com/flutter/flutter/issues/137801
Issue: https://github.com/flutter/flutter/issues/156177

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-10-18 21:10:22 +00:00
Chinmay Garde
961bddda02 [Impeller] libImpeller: Add a README. (flutter/engine#55940) 2024-10-18 20:26:15 +00:00
Chris Bracken
d41e5c15d8 iOS: Eliminate needless profiler metrics ivar (flutter/engine#55957)
iOS profiling is implemented in ProfileMetricsIOS, which has a default constructor, no member fields, and no superclass. i.e. it's roughly zero cost to create and holds no state. There's therefore no reason to make it an ivar on FlutterEngine.

Further, making it an ivar on FlutterEngine means that the profiling sampler lambda needs to capture self which, in the case where all other FlutterEngine references go out of scope during sampling, means that the last FlutterEngine reference exists on a profiling thread, and when the sampling lambda block completes, the engine is dealloc'ed.

The engine *must* be deallocated on the platform (main in Apple terminology) thread because FlutterEngine holds a reference to a PlatformViewsController, which owns a WeakPtrFactory. WeakPtrFactory's dtor asserts that it executes on the thread on which it was created, in this case, the platform thread. Further, the engine holds direct and indirect references to other UIKit objects such as `UITextInput` in FlutterTextInputPlugin, which must be dealloc'ed on the main thread.

Since there's no need for ProfileMetricsIOS to be tied to the engine, we now create it on the fly in the sampler.

No test changes because no semantic changes.

Uncovered by ARC migration.

Issue: https://github.com/flutter/flutter/issues/137801
Issue: https://github.com/flutter/flutter/issues/156177

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-10-18 19:51:04 +00:00
auto-submit[bot]
3089ce059c Reverts "[Impeller] one descriptor pool per frame. (#55939)" (flutter/engine#55959)
Reverts: flutter/engine#55939
Initiated by: jonahwilliams
Reason for reverting: failing on scenario test
Original PR Author: jonahwilliams

Reviewed By: {matanlurey}

This change reverts the following previous change:
Creating descriptor pools is expensive, no need to have more than one per frame.

The lifecycle of the descriptor pool is exactly the same as the cmd pool, which indicates that we can probably do some consolidation/refactoring in the future.

Fixes https://github.com/flutter/flutter/issues/157115
2024-10-18 19:23:46 +00:00
Chris Bracken
0a9ed47633 Revert "Reland "iOS: Migrate FlutterEngine to ARC" (#55937)" (flutter/engine#55954)
There are still a couple closures where on engine shutdown, the last
live reference to FlutterEngine may be on a thread other than the
platform thread.

Specifically, the profiling data capture callback can result in the last
live reference to a FlutterEngine being on a profiling thread, resulting
in an assertion failure in the destructor of the PlatformViewsController
held by FlutterEngine, because PlatformViewsController holds a
WeakPtrFactory whose destructor asserts that it be on the platform
thread.

See:

f0f29ce37f/shell/platform/darwin/ios/framework/Source/FlutterEngine.mm (L511-L515)

Backtrace of such a crash:
```
=================================================================
Main Thread Checker: UI API called on a background thread: -[UIView removeFromSuperview]
PID: 46919, TID: 333147, Thread name: FlutterEngine.166.profiler, Queue name: com.apple.root.default-qos.overcommit, QoS: 0
Backtrace:
4   libios_test_flutter.dylib           0x000000014b658aed -[FlutterTextInputPlugin dealloc] + 27
5   libobjc.A.dylib                     0x00007ff800055228 _ZN11objc_object17sidetable_releaseEbb + 204
6   libios_test_flutter.dylib           0x000000014b63df5a -[FlutterEngine .cxx_destruct] + 135
7   libobjc.A.dylib                     0x00007ff800035766 _ZL27object_cxxDestructFromClassP11objc_objectP10objc_class + 83
8   libobjc.A.dylib                     0x00007ff80004ddfc objc_destructInstance + 61
9   CoreFoundation                      0x00007ff8004a286b -[NSObject(NSObject) __dealloc_zombie] + 159
10  libios_test_flutter.dylib           0x000000014b635fea -[FlutterEngine dealloc] + 334
11  libobjc.A.dylib                     0x00007ff800055228 _ZN11objc_object17sidetable_releaseEbb + 204
12  libios_test_flutter.dylib           0x000000014b63eda9 _ZNSt3_fl10__function6__funcIZ30-[FlutterEngine startProfiler]E3$_0NS_9allocatorIS2_EEFN7flutter13ProfileSampleEvEEclEv + 69
13  libios_test_flutter.dylib           0x000000014bcd8eaa _ZNSt3_fl10__function6__funcIZNK7flutter16SamplingProfiler16SampleRepeatedlyEN3fml9TimeDeltaEE3$_0NS_9allocatorIS6_EEFvvEEclEv + 40
14  libios_test_flutter.dylib           0x000000014b868786 _ZN3fml15MessageLoopImpl10FlushTasksENS_9FlushTypeE + 156
15  libios_test_flutter.dylib           0x000000014b86ecca _ZN3fml17MessageLoopDarwin11OnTimerFireEP16__CFRunLoopTimerPS0_ + 26
16  CoreFoundation                      0x00007ff8003ea4a5 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 20
17  CoreFoundation                      0x00007ff8003ea032 __CFRunLoopDoTimer + 801
18  CoreFoundation                      0x00007ff8003e97b6 __CFRunLoopDoTimers + 243
19  CoreFoundation                      0x00007ff8003e4028 __CFRunLoopRun + 2108
20  CoreFoundation                      0x00007ff8003e3409 CFRunLoopRunSpecific + 557
21  libios_test_flutter.dylib           0x000000014b86ee07 _ZN3fml17MessageLoopDarwin3RunEv + 65
22  libios_test_flutter.dylib           0x000000014b8686a4 _ZN3fml15MessageLoopImpl5DoRunEv + 22
23  libios_test_flutter.dylib           0x000000014b86dce5 _ZNSt3_fl10__function6__funcIZN3fml6ThreadC1ERKNS_8functionIFvRKNS3_12ThreadConfigEEEES7_E3$_0NS_9allocatorISC_EEFvvEEclEv + 135
24  libios_test_flutter.dylib           0x000000014b86da87 _ZZN3fml12ThreadHandleC1EONSt3_fl8functionIFvvEEEEN3$_08__invokeEPv + 27
25  libsystem_pthread.dylib             0x000000010d6a818b _pthread_start + 99
26  libsystem_pthread.dylib             0x000000010d6a3ae3 thread_start + 15
2024-10-18 09:31:27.549111-0700 IosUnitTests[46919:333147] [reports] Main Thread Checker: UI API called on a background thread: -[UIView removeFromSuperview]
PID: 46919, TID: 333147, Thread name: FlutterEngine.166.profiler, Queue name: com.apple.root.default-qos.overcommit, QoS: 0
Backtrace:
4   libios_test_flutter.dylib           0x000000014b658aed -[FlutterTextInputPlugin dealloc] + 27
5   libobjc.A.dylib                     0x00007ff800055228 _ZN11objc_object17sidetable_releaseEbb + 204
6   libios_test_flutter.dylib           0x000000014b63df5a -[FlutterEngine .cxx_destruct] + 135
7   libobjc.A.dylib                     0x00007ff800035766 _ZL27object_cxxDestructFromClassP11objc_objectP10objc_class + 83
8   libobjc.A.dylib                     0x00007ff80004ddfc objc_destructInstance + 61
9   CoreFoundation                      0x00007ff8004a286b -[NSObject(NSObject) __dealloc_zombie] + 159
10  libios_test_flutter.dylib           0x000000014b635fea -[FlutterEngine dealloc] + 334
11  libobjc.A.dylib                     0x00007ff800055228 _ZN11objc_object17sidetable_releaseEbb + 204
12  libios_test_flutter.dylib           0x000000014b63eda9 _ZNSt3_fl10__function6__funcIZ30-[FlutterEngine startProfiler]E3$_0NS_9allocatorIS2_EEFN7flutter13ProfileSampleEvEEclEv + 69
13  libios_test_flutter.dylib           0x000000014bcd8eaa _ZNSt3_fl10__function6__funcIZNK7flutter16SamplingProfiler16SampleRepeatedlyEN3fml9TimeDeltaEE3$_0NS_9allocatorIS6_EEFvvEEclEv + 40
14  libios_test_flutter.dylib           0x000000014b868786 _ZN3fml15MessageLoopImpl10FlushTasksENS_9FlushTypeE + 156
15  libios_test_flutter.dylib           0x000000014b86ecca _ZN3fml17MessageLoopDarwin11OnTimerFireEP16__CFRunLoopTimerPS0_ + 26
16  CoreFoundation                      0x00007ff8003ea4a5 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 20
17  CoreFoundation                      0x00007ff8003ea032 __CFRunLoopDoTimer + 801
18  CoreFoundation                      0x00007ff8003e97b6 __CFRunLoopDoTimers + 243
19  CoreFoundation                      0x00007ff8003e4028 __CFRunLoopRun + 2108
20  CoreFoundation                      0x00007ff8003e3409 CFRunLoopRunSpecific + 557
21  libios_test_flutter.dylib           0x000000014b86ee07 _ZN3fml17MessageLoopDarwin3RunEv + 65
22  libios_test_flutter.dylib           0x000000014b8686a4 _ZN3fml15MessageLoopImpl5DoRunEv + 22
23  libios_test_flutter.dylib           0x000000014b86dce5 _ZNSt3_fl10__function6__funcIZN3fml6ThreadC1ERKNS_8functionIFvRKNS3_12ThreadConfigEEEES7_E3$_0NS_9allocatorISC_EEFvvEEclEv + 135
24  libios_test_flutter.dylib           0x000000014b86da87 _ZZN3fml12ThreadHandleC1EONSt3_fl8functionIFvvEEEEN3$_08__invokeEPv + 27
25  libsystem_pthread.dylib             0x000000010d6a818b _pthread_start + 99
26  libsystem_pthread.dylib             0x000000010d6a3ae3 thread_start + 15
IosUnitTests(47009,0x10ec76240) malloc: enabling scribbling to detect mods to free blocks
IosUnitTests(47009) MallocStackLogging: could not tag MSL-related memory as no_footprint, so those pages will be included in process footprint - (null)
IosUnitTests(47009) MallocStackLogging: stack logs being written to /private/tmp/stack-logs.47009.1057b6000.IosUnitTests.0o4HgN.index
IosUnitTests(47009) MallocStackLogging: recording malloc and VM allocation stacks to disk using standard recorder
IosUnitTests(47009) MallocStackLogging: process 46919 no longer exists, stack logs deleted from /tmp/stack-logs.46919.10d1fc000.IosUnitTests.kFionm.index
```

This reverts commit 530a9f896c3547fd5e27539e9049fae392d61e73.

## 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] and the [C++,
Objective-C, Java style guides].
- [X] I listed at least one issue that this PR fixes in the description
above.
- [X] I added new tests to check the change I am making or feature I am
adding, or the PR is [test-exempt]. See [testing the engine] for
instructions on writing and running engine tests.
- [X] I updated/added relevant documentation (doc comments with `///`).
- [X] I signed the [CLA].
- [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/wiki/Tree-hygiene#overview
[Tree Hygiene]: https://github.com/flutter/flutter/wiki/Tree-hygiene
[test-exempt]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo
[C++, Objective-C, Java style guides]:
https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
[testing the engine]:
https://github.com/flutter/flutter/wiki/Testing-the-engine
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#handling-breaking-changes
[Discord]: https://github.com/flutter/flutter/wiki/Chat
2024-10-18 11:36:30 -07:00
skia-flutter-autoroll
cf61b19161 Roll Dart SDK from 993d3069f42e to a51df90298ca (7 revisions) (flutter/engine#55951)
https://dart.googlesource.com/sdk.git/+log/993d3069f42e..a51df90298ca

2024-10-18 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-41.0.dev
2024-10-18 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-40.0.dev
2024-10-18 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-39.0.dev
2024-10-18 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-38.0.dev
2024-10-17 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-37.0.dev
2024-10-17 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-36.0.dev
2024-10-17 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-35.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-engine
Please CC dart-vm-team@google.com,jonahwilliams@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter Engine: 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-18 18:04:14 +00:00
Jonah Williams
e7f4870f84 [engine] add back opt out for merged threads. (flutter/engine#55952)
Add back opt out for merged threads for customer money.
2024-10-18 17:51:49 +00:00
Jonah Williams
e203f1d40b [Impeller] one descriptor pool per frame. (flutter/engine#55939)
Creating descriptor pools is expensive, no need to have more than one per frame.

The lifecycle of the descriptor pool is exactly the same as the cmd pool, which indicates that we can probably do some consolidation/refactoring in the future.

Fixes https://github.com/flutter/flutter/issues/157115
2024-10-18 17:50:08 +00:00
Jonah Williams
f0f29ce37f [Impeller] add mechanism for sharing bdf inputs. (flutter/engine#55701)
Introduces a mechanism to allow backdrop filters to 1) share backdrop inputs and 2) fuse filter applications for faster blurs.

This is a proposed solution to https://github.com/flutter/flutter/issues/131568

Implemented:
* Developer can specify a "backdrop id" which indicates that a backdrop layer should share the input texture and potentially cached filter for a layer.
* Removes second save layer for each backdrop filter
* Removes save layer trace event for backdrop filter
* Can fuse backdrop filters if there is more than one identical filter

TBD:
* Adjust heruristic to avoid applying bdf filter to entire screen

Suggestions: applying a bdf should be a distinct operation from a save layer in the DL builder/dispatcher. The saveLayer implmenentation in the impeller dispatcher is super convoluted because it needs to handle both.

### Video

Video starts with normal bdf then I hot reload to specify that the bdfs share inputs/filters. This is running on a pixel 8 pro

Change to the macrobenchmark app is just:
```dart
  Widget build(BuildContext context) {
    Widget addBlur(Widget child, bool shouldBlur) {
      if (shouldBlur) {
        return ClipRect(
          child: BackdropFilter(
            filter: ImageFilter.blur(sigmaX: 5, sigmaY: 5),
            backdropId: 1, // Added ID
            child: child,
          ),
        );
      } else {
        return child;
      }
    }
```

https://github.com/user-attachments/assets/22707f97-5825-43f1-91b4-1a02a43437f5

Requires framework changes in https://github.com/jonahwilliams/flutter/pull/new/backdrop_id
2024-10-18 15:38:34 +00:00
Jason Simmons
c6cbbc775c On a merged UI/platform thread, immediately execute platform message handlers and then run microtasks (flutter/engine#55933)
Shell::OnPlatformViewDispatchPlatformMessage is called on the platform thread and must invoke the message handler on the UI thread.  If the platform and UI threads are merged, then the handler can be run immediately.  The shell can then post an empty task to the UI thread to make the UI message loop run the task observer that drains the microtask queue.

Fixes https://github.com/flutter/flutter/issues/156595
2024-10-18 14:01:28 +00:00
Jonah Williams
7a2227ddc8 [Impeller] simpler labels for render target textures and cmd buffers. (flutter/engine#55936)
Avoid Sprintf'ing labels for textures/cmd buffers/render passes. For the render target textures, defer combined label construction until we know the label will be used.
2024-10-18 04:01:50 +00:00
Jonah Williams
ccaa49bdb4 [Impeller] use render pass to transition attachments to eGeneral instead of barriers. (flutter/engine#55930)
From local testing:

1. This is slightly faster
2. This still renders correctly even on old phones (S10)
3. This is validation error clean.

---------------

The vk RenderPass has a built in mechanism to transition the attachments between layout states. Since we expect the images to be in eGeneral layout, we can configure the render pass to do an eUnderfined -> eGeneral  transition. eUnderfined means "we don't care what was here before". This is OK because we're about to clear the texture anyway.

Since the RenderPass is doing the transition, we don't need an explicit barrier. All we have to do is update our own state tracking mechanism that the image attachments should behave as if they were in eGeneral layout  - because they are once the render pass is started.
2024-10-18 03:58:23 +00:00
Robert Ancell
aca239fe59 Move redispatch_event from FlKeyboardViewDelegate to FlKeyboardManager (flutter/engine#55941)
Events can only be redispatched using gdk_event_put which is not
dependent on the view.

Ideally the tests would mock gdk_event_put, but I wasn't able to get it
working so I've added fl_keyboard_manager_set_redispatch_handler for
now.
2024-10-18 14:34:52 +13:00
Robert Ancell
a54730d091 Remove FlKeyResponder and use the two responder classes directly. (flutter/engine#55925)
We only ever have two classes and implementation, so reduce complexity
by removing the parent class and related code.
2024-10-18 13:19:47 +13:00
Chris Bracken
530a9f896c Reland "iOS: Migrate FlutterEngine to ARC" (flutter/engine#55937)
This reverts commit 773c37ab825da3b2870f1c8e9ccc74b84bcd3899.
This relands commit a2ac734e10115547d8c8ef34610ea6172e3cc98b.

Migrates `FlutterEngine` from manual reference counting to ARC. Migrates properties from `retain` to strong and `assign` to `weak` (where referencing an Obj-C object).

Includes two additional fixes on top of the original:
* In `waitForFirstFrame:callback:` we ensure FlutterEngine isn't released on a background thread, but instead is always freed on the platform thread.
* In `testViewControllerIsReleased` we call loadView prior to calling `viewDidLoad`. `viewDidLoad` calls `[FlutterEngine attachView]` which calls `[PlatformViewIOS::attachView]` which asserts that the view is loaded.

No semantic changes, therefore no changes to tests.

Issue: https://github.com/flutter/flutter/issues/137801
Issue: https://github.com/flutter/flutter/issues/156177

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-10-17 23:48:05 +00:00
Brandon DeRosier
518ada1675 [Flutter GPU] Remove Command/VertexBuffer usage from Flutter GPU. (flutter/engine#55893)
Resolves https://github.com/flutter/flutter/issues/156764.
Resolves https://github.com/flutter/flutter/issues/155335.

- Remove Command/VertexBuffer from Flutter GPU.
- Separate vertex/index count into `impeller::RenderPass::SetElementCount(size_t count)` & accurately document its behavior.
- Make Flutter GPU uniform/texture bindings re-assignable.
- Remove unnecessary templates.
2024-10-17 22:39:19 +00:00
Yegor
4a93a6a08b Introduce SemanticsFlag.hasSelectedState to the engine API (flutter/engine#55780)
Introduce `SemanticsFlag.hasSelectedState` to the engine API. At this point the flag is not backed by any engine functionality. See also: https://github.com/flutter/flutter/issues/66673#issuecomment-2402903402

| ⚠️ WARNING           |
|:----------------------------|
| Submit _AFTER_ https://github.com/flutter/flutter/pull/157017 and https://github.com/flutter/flutter/pull/157061 land in the framework     |

A step towards https://github.com/flutter/flutter/issues/66673
2024-10-17 22:01:34 +00:00
Zachary Anderson
92b630aa1e Add back unnecessary_parenthesis lint (flutter/engine#55931)
Follow-up from https://github.com/flutter/engine/pull/55927
2024-10-17 13:27:46 -07:00
skia-flutter-autoroll
45237cc63f Manual roll Dart SDK from d916a5f69a48 to 993d3069f42e (35 revisions) (flutter/engine#55927)
Manual roll Dart SDK from d916a5f69a48 to 993d3069f42e (35 revisions)

Manual roll requested by zra@google.com

https://dart.googlesource.com/sdk.git/+log/d916a5f69a48..993d3069f42e

2024-10-17 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-34.0.dev
2024-10-17 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-33.0.dev
2024-10-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-32.0.dev
2024-10-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-31.0.dev
2024-10-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-30.0.dev
2024-10-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-29.0.dev
2024-10-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-28.0.dev
2024-10-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-27.0.dev
2024-10-15 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-26.0.dev
2024-10-15 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-25.0.dev
2024-10-15 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-24.0.dev
2024-10-15 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-23.0.dev
2024-10-14 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-22.0.dev
2024-10-14 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-21.0.dev
2024-10-14 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-20.0.dev
2024-10-12 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-19.0.dev
2024-10-12 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-18.0.dev
2024-10-12 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-17.0.dev
2024-10-12 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-16.0.dev
2024-10-11 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-15.0.dev
2024-10-11 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-14.0.dev
2024-10-11 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-13.0.dev
2024-10-11 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-12.0.dev
2024-10-10 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-11.0.dev
2024-10-10 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-10.0.dev
2024-10-10 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-9.0.dev
2024-10-10 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-8.0.dev
2024-10-10 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-7.0.dev
2024-10-09 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-6.0.dev
2024-10-09 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-5.0.dev
2024-10-09 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-4.0.dev
2024-10-09 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-3.0.dev
2024-10-09 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-2.0.dev
2024-10-09 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-1.0.dev
2024-10-08 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com
Version 3.7.0-0.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-engine
Please CC
dart-vm-team@google.com,jonahwilliams@google.com,zra@google.com on the
revert to ensure that a human
is aware of the problem.

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

...

---------

Co-authored-by: Zachary Anderson <zanderso@users.noreply.github.com>
2024-10-17 10:21:39 -07:00
Jonah Williams
243ea95602 [Impeller] make labeling APIs exclusively use std::string_view. (flutter/engine#55918)
Many of our labeling APIs accepted a std::string. When provided with a string literal (const char*), this would force the allocation of a new std::string object and a copy of the original char*. std::string_view is a view of either a std::string, or a const char* (or other), which allows an API that doesn not need to store the string to accept both without a copy. Of course, we can't store a std::string_view, as that doesn't provide memory ownership - so many of the GLES implementations will still copy the string_view into a string locally.

Also updates several of the debug labelling functions to no-op in release mode and removes some expensive interpolations that aren't super necessary.
2024-10-17 16:54:03 +00:00
gaaclarke
92923c20fd Started using a specific python for yapf (flutter/engine#55905)
fixes https://github.com/flutter/flutter/issues/156993

## 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] and the [C++,
Objective-C, Java style guides].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I added new tests to check the change I am making or feature I am
adding, or the PR is [test-exempt]. See [testing the engine] for
instructions on writing and running engine tests.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I signed the [CLA].
- [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/wiki/Tree-hygiene#overview
[Tree Hygiene]: https://github.com/flutter/flutter/wiki/Tree-hygiene
[test-exempt]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo
[C++, Objective-C, Java style guides]:
https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
[testing the engine]:
https://github.com/flutter/flutter/wiki/Testing-the-engine
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#handling-breaking-changes
[Discord]: https://github.com/flutter/flutter/wiki/Chat
2024-10-17 08:08:18 -07:00
skia-flutter-autoroll
edced9a571 Roll Fuchsia Linux SDK from OTfEfbaoT9c0HcprI... to 9F_NaKPd2twhbPwP7... (flutter/engine#55926)
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-engine
Please CC jonahwilliams@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-17 04:19:18 +00:00
Jonah Williams
d3ed232dab [Impeller] flood input coverage with destructive color filter. (flutter/engine#55758)
Fixes https://github.com/flutter/flutter/issues/126389
Fixes https://github.com/flutter/flutter/issues/137090
Fixes https://github.com/flutter/flutter/issues/154035

If this bit is set, the output of a color filter should flood to the input of a filter to parent clip. We're not checking this right now and so all color filter content is treated as bounded.

This needs to flood the input as the image filter (which occurs afterwards) should process the flooded input.
2024-10-17 02:30:01 +00:00
Brandon DeRosier
b90e88b20f [Impeller] Correct glBlitFramebuffer emulation todo. (flutter/engine#55919) 2024-10-17 01:20:17 +00:00
Jonah Williams
5c6ab792a2 [Impeller] fix memory leak during gif upload. (flutter/engine#55920)
Fixes https://github.com/flutter/flutter/issues/156728

Need to periodically flush the TLS command buffer pools in multiframe codec just like single frame codec.
2024-10-17 01:17:59 +00:00
auto-submit[bot]
a8961f9449 Reverts "[fuchsia] Remove pm use in build_fuchsia_artifacts (#55832)" (flutter/engine#55922)
Reverts: flutter/engine#55832
Initiated by: zijiehe-google-com
Reason for reverting: may break roller.
Original PR Author: zijiehe-google-com

Reviewed By: {jrwang}

This change reverts the following previous change:
This change removes the in-house built pm-based build rules in favor of the high level fuchsia_component / fuchsia_package in the gn-sdk.

Also the use of pm in build_fuchsia_artifacts.py is removed as the placements of the binaries changed.
https://github.com/flutter/engine/pull/55445 was a previous attempt and it generates [a malformatted cipd](https://chrome-infra-packages.appspot.com/p/flutter/fuchsia/+/vU1Op26qgO5XYs9S8AqQMvBwgITD9hq3-2dIu2H5-iwC).

Bug: http://b/353729557, http://b/368608542

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-10-17 01:12:46 +00:00
auto-submit[bot]
599de28a39 Reverts "update the repo references for package:file (#55906)" (flutter/engine#55916)
Reverts: flutter/engine#55906
Initiated by: zanderso
Reason for reverting: b/373907578
Original PR Author: devoncarew

Reviewed By: {zanderso}

This change reverts the following previous change:
The SoT repository for `package:file` has changed from google/file.dart to dart-lang/tools; this PR updates the DEPS file and the hard-coded paths in the two pubspec.yaml files.

- https://github.com/dart-lang/tools/issues/674

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-10-16 21:46:47 +00:00
skia-flutter-autoroll
a595b44bfb Roll Skia from 09917e06158b to 3a081993e2a7 (3 revisions) (flutter/engine#55911)
https://skia.googlesource.com/skia.git/+log/09917e06158b..3a081993e2a7

2024-10-16 jmbetancourt@google.com [jetski] ensure we call ALOOPER_POLL_CALLBACK at least once
2024-10-16 robertphillips@google.com [graphite] Add Test-Ubuntu18-...-Release-All-TSAN_Graphite_*_Vulkan jobs
2024-10-16 skia-autoroll@skia-public.iam.gserviceaccount.com Manual roll Dawn from 0b31a6ca843a to 65fa98d50f6d (2 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 brianosman@google.com,fmalita@google.com,jonahwilliams@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
2024-10-16 21:17:58 +00:00
auto-submit[bot]
0e1b2a9058 Reverts "Manual roll Dart SDK from d916a5f69a48 to 2bf0f2b8d391 (24 revisions) (#55884)" (flutter/engine#55915)
Reverts: flutter/engine#55884
Initiated by: zanderso
Reason for reverting: b/373907578
Original PR Author: a-siva

Reviewed By: {srawlins, zanderso}

This change reverts the following previous change:
Manual roll requested by [asiva@google.com](mailto:asiva@google.com)

https://dart.googlesource.com/sdk.git/+log/d916a5f69a48..2bf0f2b8d391

2024-10-15 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-23.0.dev
2024-10-14 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-22.0.dev
2024-10-14 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-21.0.dev
2024-10-14 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-20.0.dev
2024-10-12 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-19.0.dev
2024-10-12 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-18.0.dev
2024-10-12 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-17.0.dev
2024-10-12 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-16.0.dev
2024-10-11 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-15.0.dev
2024-10-11 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-14.0.dev
2024-10-11 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-13.0.dev
2024-10-11 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-12.0.dev
2024-10-10 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-11.0.dev
2024-10-10 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-10.0.dev
2024-10-10 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-9.0.dev
2024-10-10 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-8.0.dev
2024-10-10 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-7.0.dev
2024-10-09 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-6.0.dev
2024-10-09 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-5.0.dev
2024-10-09 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-4.0.dev
2024-10-09 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-3.0.dev
2024-10-09 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-2.0.dev
2024-10-09 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-1.0.dev
2024-10-08 [dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com) Version 3.7.0-0.0.dev
2024-10-16 21:13:46 +00:00
auto-submit[bot]
e1889cda13 Reverts "Manual roll Dart SDK from 2bf0f2b8d391 to 7fce3544047c (4 revisions) (#55896)" (flutter/engine#55914)
Reverts: flutter/engine#55896
Initiated by: zanderso
Reason for reverting: b/373907578
Original PR Author: skia-flutter-autoroll

Reviewed By: {fluttergithubbot}

This change reverts the following previous change:

Manual roll requested by asiva@google.com

https://dart.googlesource.com/sdk.git/+log/2bf0f2b8d391..7fce3544047c

2024-10-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-27.0.dev
2024-10-15 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-26.0.dev
2024-10-15 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-25.0.dev
2024-10-15 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-24.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-engine
Please CC asiva@google.com,dart-vm-team@google.com,jonahwilliams@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter Engine: 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-16 21:05:47 +00:00
auto-submit[bot]
cdd0c3aef0 Reverts "Roll Dart SDK from 7fce3544047c to 148b7c530657 (3 revisions) (#55903)" (flutter/engine#55913)
Reverts: flutter/engine#55903
Initiated by: zanderso
Reason for reverting: b/373907578
Original PR Author: skia-flutter-autoroll

Reviewed By: {fluttergithubbot}

This change reverts the following previous change:

https://dart.googlesource.com/sdk.git/+log/7fce3544047c..148b7c530657

2024-10-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-30.0.dev
2024-10-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-29.0.dev
2024-10-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-28.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-engine
Please CC dart-vm-team@google.com,jonahwilliams@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter Engine: 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-16 21:00:47 +00:00
Devon Carew
ff569a9bdc update the repo references for package:file (flutter/engine#55906)
The SoT repository for `package:file` has changed from google/file.dart
to dart-lang/tools; this PR updates the DEPS file and the hard-coded
paths in the two pubspec.yaml files.

- https://github.com/dart-lang/tools/issues/674

## 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] and the [C++,
Objective-C, Java style guides].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [ ] I added new tests to check the change I am making or feature I am
adding, or the PR is [test-exempt]. See [testing the engine] for
instructions on writing and running engine tests.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I signed the [CLA].
- [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/wiki/Tree-hygiene#overview
[Tree Hygiene]: https://github.com/flutter/flutter/wiki/Tree-hygiene
[test-exempt]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo
[C++, Objective-C, Java style guides]:
https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
[testing the engine]:
https://github.com/flutter/flutter/wiki/Testing-the-engine
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#handling-breaking-changes
[Discord]: https://github.com/flutter/flutter/wiki/Chat
2024-10-16 13:23:03 -07:00
Harlen Batagelo
8737cce879 Handle out-of-order add/remove pointer events (flutter/engine#55740)
Fixes [#146251](https://github.com/flutter/flutter/issues/146251).

On Windows, a "pointer add" event to a new view is sometimes sent before the "pointer remove" event from the old view. When `PointerDataPacketConverter` handles the add event, it asserts that the device's pointer state has been cleared. Since the pointer state is cleared only when the remove event is processed, the assertion fails if the events arrive out of order.

The solution proposed here is to synthesize a remove event if an add event is received while the pointer state hasn't been cleared (i.e., if the pointer is added without being removed from the previous view).

To avoid duplicate remove events, the view ID is now tracked in `PointerState`. If the original "remove" arrives after the synthesized one, the state's view ID will differ from the pointer data's view ID, allowing it to be safely ignored.

When synthesizing the remove event, it's possible that the old view has already been destroyed, meaning no remove event will be received later. For example, this occurs when a window is destroyed while the pointer is inside it. However, the framework expects an "add" event to always follow a "remove" event, and "remove" events with invalid views are ignored. To meet the framework's expectations, the view ID of the "add" event will be used for the "remove" event if the old view has been destroyed.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-10-16 20:19:49 +00:00
gaaclarke
b69edd9e6a Starts looking for the bdf fast path in relation to the snapshot_entity's transform (flutter/engine#55890)
fixes https://github.com/flutter/flutter/issues/156871

testing: performance change covered by existing benchmarks.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-10-16 20:13:25 +00:00
skia-flutter-autoroll
4182d5c6a4 Roll Skia from 69d9d593a095 to 09917e06158b (1 revision) (flutter/engine#55907)
https://skia.googlesource.com/skia.git/+log/69d9d593a095..09917e06158b

2024-10-16 robertphillips@google.com [graphite] Address Precompile thread-safety by creating extra ResourceProviders

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 brianosman@google.com,fmalita@google.com,jonahwilliams@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
2024-10-16 19:39:05 +00:00
zijiehe@
ccea3b80cc [fuchsia] Remove pm use in build_fuchsia_artifacts (flutter/engine#55832)
This change removes the in-house built pm-based build rules in favor of the high level fuchsia_component / fuchsia_package in the gn-sdk.

Also the use of pm in build_fuchsia_artifacts.py is removed as the placements of the binaries changed.
https://github.com/flutter/engine/pull/55445 was a previous attempt and it generates [a malformatted cipd](https://chrome-infra-packages.appspot.com/p/flutter/fuchsia/+/vU1Op26qgO5XYs9S8AqQMvBwgITD9hq3-2dIu2H5-iwC).

Bug: http://b/353729557, http://b/368608542

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
2024-10-16 17:55:12 +00:00
skia-flutter-autoroll
04df92beb2 Roll Skia from 68f21f903bd9 to 69d9d593a095 (2 revisions) (flutter/engine#55904)
https://skia.googlesource.com/skia.git/+log/68f21f903bd9..69d9d593a095

2024-10-16 fmalita@google.com Roll Dawn from f3c7cc5c580e to 0b31a6ca843a (62 revisions)
2024-10-16 jvanverth@google.com Revert "[graphite] Adjust rrect clipping to better match Ganesh."

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 brianosman@google.com,fmalita@google.com,jonahwilliams@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
2024-10-16 17:44:11 +00:00
skia-flutter-autoroll
0c7599c5f0 Roll Dart SDK from 7fce3544047c to 148b7c530657 (3 revisions) (flutter/engine#55903)
https://dart.googlesource.com/sdk.git/+log/7fce3544047c..148b7c530657

2024-10-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-30.0.dev
2024-10-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-29.0.dev
2024-10-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-28.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-engine
Please CC dart-vm-team@google.com,jonahwilliams@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter Engine: 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-16 17:03:05 +00:00
skia-flutter-autoroll
6f745dee63 Roll Skia from 1b0702f842d4 to 68f21f903bd9 (2 revisions) (flutter/engine#55902)
https://skia.googlesource.com/skia.git/+log/1b0702f842d4..68f21f903bd9

2024-10-16 jvanverth@google.com [graphite] Disable use of Shape for arcs in Chrome.
2024-10-16 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from d04c1f676c96 to ad31dd1cb898 (3 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 brianosman@google.com,fmalita@google.com,jonahwilliams@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
2024-10-16 15:50:13 +00:00
skia-flutter-autoroll
8978675824 Roll Skia from 09cdacf52bad to 1b0702f842d4 (2 revisions) (flutter/engine#55900)
https://skia.googlesource.com/skia.git/+log/09cdacf52bad..1b0702f842d4

2024-10-16 skia-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 576b5ef40a9b to 0dbe85f31776 (8 revisions)
2024-10-16 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from 5a6102d3459e to 78ae0bf49048 (2 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 brianosman@google.com,fmalita@google.com,jonahwilliams@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
2024-10-16 09:15:37 +00:00
skia-flutter-autoroll
e4dd49ad4c Roll Skia from 8073f7b8bc89 to 09cdacf52bad (2 revisions) (flutter/engine#55898)
https://skia.googlesource.com/skia.git/+log/8073f7b8bc89..09cdacf52bad

2024-10-16 skia-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 7a9a492a38b7 to 74b783dffb9b (1 revision)
2024-10-16 skia-autoroll@skia-public.iam.gserviceaccount.com Roll skcms from f96615e73170 to 2c7a7bff0512 (1 revision)

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 brianosman@google.com,fmalita@google.com,jonahwilliams@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
2024-10-16 06:19:39 +00:00
skia-flutter-autoroll
b981c42f6c Roll Skia from 539ab9d39812 to 8073f7b8bc89 (2 revisions) (flutter/engine#55895)
https://skia.googlesource.com/skia.git/+log/539ab9d39812..8073f7b8bc89

2024-10-15 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from a993e01ad888 to d04c1f676c96 (3 revisions)
2024-10-15 aperez@igalia.com Avoid usage of the clang::musttail attribute on ppc64le

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 brianosman@google.com,fmalita@google.com,jonahwilliams@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
2024-10-16 02:58:20 +00:00
skia-flutter-autoroll
cce28372be Manual roll Dart SDK from 2bf0f2b8d391 to 7fce3544047c (4 revisions) (flutter/engine#55896)
Manual roll requested by asiva@google.com

https://dart.googlesource.com/sdk.git/+log/2bf0f2b8d391..7fce3544047c

2024-10-16 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-27.0.dev
2024-10-15 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-26.0.dev
2024-10-15 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-25.0.dev
2024-10-15 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.7.0-24.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-engine
Please CC asiva@google.com,dart-vm-team@google.com,jonahwilliams@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter Engine: 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-16 02:48:12 +00:00
skia-flutter-autoroll
f65e1b24f2 Roll Fuchsia Linux SDK from T2Cq00sVabK2fCW9r... to OTfEfbaoT9c0HcprI... (flutter/engine#55894)
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-engine
Please CC jonahwilliams@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-16 01:53:52 +00:00
Robert Ancell
2ccc210029 Remove obsolete fl_keyboard_view_delegate_get_messenger (flutter/engine#54857)
This is unnecessary - we already have the messenger.
2024-10-16 14:53:27 +13:00
Siva
f19aaeb32d Manual roll Dart SDK from d916a5f69a48 to 2bf0f2b8d391 (24 revisions) (flutter/engine#55884)
Manual roll requested by [asiva@google.com](mailto:asiva@google.com)

https://dart.googlesource.com/sdk.git/+log/d916a5f69a48..2bf0f2b8d391

2024-10-15
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-23.0.dev
2024-10-14
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-22.0.dev
2024-10-14
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-21.0.dev
2024-10-14
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-20.0.dev
2024-10-12
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-19.0.dev
2024-10-12
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-18.0.dev
2024-10-12
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-17.0.dev
2024-10-12
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-16.0.dev
2024-10-11
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-15.0.dev
2024-10-11
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-14.0.dev
2024-10-11
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-13.0.dev
2024-10-11
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-12.0.dev
2024-10-10
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-11.0.dev
2024-10-10
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-10.0.dev
2024-10-10
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-9.0.dev
2024-10-10
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-8.0.dev
2024-10-10
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-7.0.dev
2024-10-09
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-6.0.dev
2024-10-09
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-5.0.dev
2024-10-09
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-4.0.dev
2024-10-09
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-3.0.dev
2024-10-09
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-2.0.dev
2024-10-09
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-1.0.dev
2024-10-08
[dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com](mailto:dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com)
Version 3.7.0-0.0.dev

---------

Co-authored-by: skia-flutter-autoroll <skia-flutter-autoroll@skia.org>
2024-10-15 18:37:05 -07:00
Chinmay Garde
0157e502c4 [Impeller] libImpeller: Initialize the base paragraph style lazily. (flutter/engine#55891)
Thanks to the @lyceel for the failing test case.
<img width="1136" alt="Screenshot 2024-10-15 at 4 01 27 PM" src="https://github.com/user-attachments/assets/eeecba1d-eecb-4f29-878f-caf4c674a836">
2024-10-16 00:35:12 +00:00
Robert Ancell
6203c3e0f3 Split FlKeyboardManager out of FlKeyboardHandler (flutter/engine#55892)
They continue to share a FlKeyboardViewDelegate, but this will be split
too in a later change as part of moving these classes from FlView to
FlEngine.
2024-10-16 13:26:42 +13:00