13931 Commits

Author SHA1 Message Date
linxuebin
538ae021ea Increase thread priority before engine init (flutter/engine#20922)
We get huge ANRs in not pure flutter app.
We found that 0.15% of the engine initialization took more than 10 seconds, every 10 million starts.
2020-09-09 14:07:34 -07:00
Chris Bracken
6e37e9cd8f Check for dart2js on felt startup (flutter/engine#21046)
This adds a check for the presence of dart2js in the engine build.

Felt relies on an engine build with `--full-dart-sdk` set. Previously,
we checked for the presence of pub, but not for the presence of
web-specific tooling such as dart2js that felt relies on. Pub is built
as part of the default Dart SDK build when `--full-dart-sdk` is not set,
so its presence is insufficient to prove that other required tooling is
present.

Without this check, we get the following error on run:

    Unhandled exception:
    ProcessException: No such file or directory
      Command: /Users/cbracken/src/flutter/engine/src/out/host_debug_unopt/dart-sdk/bin/dart2js --no-minify --disable-inlining --enable-asserts --enable-experiment=non-nullable --no-sound-null-safety -O2 -o test/paragraph_builder_test.dart.browser_test.dart.js test/paragraph_builder_test.dart
2020-09-09 14:04:52 -07:00
skia-flutter-autoroll
d26ab6747e Roll Fuchsia Mac SDK from Phn3nF_BJ... to K1oZWWtBn... (flutter/engine#21051) 2020-09-09 14:00:02 -07:00
skia-flutter-autoroll
f0a53b024e Roll Skia from 81606b5d9774 to 215d2b0fa42d (4 revisions) (flutter/engine#21045) 2020-09-09 11:40:01 -07:00
Zachary Anderson
5ef8d060bc Revert "Enable lazy-async-stacks by-default in all modes (Take 3) (#20895)" (flutter/engine#21043)
This reverts commit 4200d23617a13ae4e477483ad43493dd36e4d00b.
2020-09-09 09:25:17 -07:00
skia-flutter-autoroll
4552a0e6e7 Roll Skia from 81c6d6eeb4cf to 81606b5d9774 (5 revisions) (flutter/engine#21041) 2020-09-09 09:00:02 -07:00
skia-flutter-autoroll
ccb20ec036 Roll Dart SDK from ffbfa2000435 to 2e838b7b4503 (2 revisions) (flutter/engine#21039) 2020-09-09 07:05:01 -07:00
skia-flutter-autoroll
238af219d1 Roll Skia from f9d5940fef55 to 81c6d6eeb4cf (1 revision) (flutter/engine#21038) 2020-09-09 06:20:02 -07:00
skia-flutter-autoroll
e7788a3d32 Roll Skia from 445c8ebcb710 to f9d5940fef55 (3 revisions) (flutter/engine#21037) 2020-09-09 04:20:02 -07:00
skia-flutter-autoroll
7778484f8a Roll Fuchsia Linux SDK from coVjRTWSf... to eBus_y4DN... (flutter/engine#21035) 2020-09-09 01:05:02 -07:00
skia-flutter-autoroll
7a382080c3 Roll Fuchsia Mac SDK from TyNHQXzNU... to Phn3nF_BJ... (flutter/engine#21034) 2020-09-09 00:55:02 -07:00
skia-flutter-autoroll
6bc5db984d Roll Skia from b8ae7fa12aa0 to 445c8ebcb710 (1 revision) (flutter/engine#21032) 2020-09-08 23:05:01 -07:00
skia-flutter-autoroll
d3e738dda5 Roll Dart SDK from a2c9cae4dcd8 to ffbfa2000435 (1 revision) (flutter/engine#21031) 2020-09-08 20:55:01 -07:00
skia-flutter-autoroll
d181e00502 Roll Skia from 04b9443274cf to b8ae7fa12aa0 (1 revision) (flutter/engine#21030) 2020-09-08 17:15:01 -07:00
Chris Bracken
753abd9f14 Update web lerpDouble to match C++ behaviour (flutter/engine#21010)
This updates the web_ui implementation of lerpDouble to match the
behaviour of the C++ engine implementation in dart:ui.

Specifically this covers the following changes:
* #20871: stricter handling of NaN and infinity
* #20879: Improve the precision of lerpDouble

lerpDouble: stricter handling of NaN and infinity (#20871)
----------------------------------------------------------

Previously, the behaviour of lerpDouble with respect to NaN and infinity
was relatively complex and difficult to reason about. This patch
simplifies the behaviour with respect to those conditions and adds
documentation and tests.

In general, if `a == b` or both values are null, infinite, or NaN, `a`
is returned. Otherwise we require `a` and `b` and `t` to be finite or
null and the result of the linear interpolation is returned.

Improve the precision of lerpDouble (#20879)
--------------------------------------------

Reduces errors caused by the loss of floating point precision when the
two extrema of the lerp differ significantly in magnitude. Previously,
we used the calculation:

    a + (b - a) * t

When the difference in magnitude between `a` and `b` exceeds the
precision representable by double-precision floating point math, `b - a`
results in the larger-magnitude value of `a` or `b`. The error between
the value produced and the correct value is then scaled by t.

A simple example of the impact can be seen when `a` is significantly
larger in magnitude than `b`. In that case, `b - a` results in `a` and
when `t` is 1.0, the resulting value is `a - (a) * 1.0 == 0`.

The patch transforms the computation to the mathematically-equivalent
expression:

    a * (1.0 - t) + b * t

By scaling each value independently, the behaviour is more accurate.
From the point of view of performance, this adds an extra
multiplication, but multiplication is relatively cheap and the behaviour
is significantly better.

This patch also adds a `precisionErrorTolerance` constant to
test_utils.dart and migrates existing tests to use `closeTo()` for
testing.

The tests themselves *do* currently use values that have an exact
floating-point representation, but we should allow for flexibility in
future implementation changes.
2020-09-08 16:04:11 -07:00
skia-flutter-autoroll
c89bbbb3a3 Roll Skia from cf1a4f50121f to 04b9443274cf (2 revisions) (flutter/engine#21028) 2020-09-08 15:55:02 -07:00
skia-flutter-autoroll
e22ed319d9 Roll Dart SDK from 33b6c95936e0 to a2c9cae4dcd8 (1 revision) (flutter/engine#21027) 2020-09-08 15:00:02 -07:00
Gary Qian
681701684f Android 30r3 (flutter/engine#21025) 2020-09-08 14:51:50 -07:00
skia-flutter-autoroll
a190378926 Roll Skia from c0d3495e1ee2 to cf1a4f50121f (6 revisions) (flutter/engine#21026) 2020-09-08 14:35:01 -07:00
Chinmay Garde
521395b84f Avoid crashing and display error if the process cannot be prepared for JIT mode Dart VM. (flutter/engine#20980) 2020-09-08 13:41:31 -07:00
skia-flutter-autoroll
85d0e3e305 Roll Skia from cd54c8385c31 to c0d3495e1ee2 (12 revisions) (flutter/engine#21024) 2020-09-08 13:15:02 -07:00
skia-flutter-autoroll
b6842d72e0 Roll Dart SDK from b88c06c314f4 to 33b6c95936e0 (2 revisions) (flutter/engine#21023)
https://dart.googlesource.com/sdk.git/+log/b88c06c314f4..33b6c95936e0

2020-09-08 dart-luci-ci-builder@dart-ci.iam.gserviceaccount.com Version 2.10.0-103.0.dev
2020-09-08 dart-luci-ci-builder@dart-ci.iam.gserviceaccount.com Version 2.10.0-102.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 on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md
2020-09-08 12:59:55 -07:00
skia-flutter-autoroll
7c7d0d3017 Roll Skia from 611a52108b01 to cd54c8385c31 (2 revisions) (flutter/engine#21021) 2020-09-08 11:55:01 -07:00
skia-flutter-autoroll
72be52c60c Roll Fuchsia Mac SDK from tUwahggJ8... to TyNHQXzNU... (flutter/engine#21019) 2020-09-08 11:50:01 -07:00
skia-flutter-autoroll
a8c186c1de Roll Fuchsia Linux SDK from Ta3F40BV6... to coVjRTWSf... (flutter/engine#21018) 2020-09-08 11:45:01 -07:00
xster
baaa1a6688 Tweak the mdns error message (flutter/engine#20991) 2020-09-08 10:54:42 -07:00
skia-flutter-autoroll
26b9c9cd0a Roll Dart SDK from f745f9447ddf to b88c06c314f4 (1 revision) (flutter/engine#21016) 2020-09-07 14:20:01 -07:00
skia-flutter-autoroll
bf9fbf9218 Roll Fuchsia Linux SDK from gfAt63Ezd... to Ta3F40BV6... (flutter/engine#21015) 2020-09-07 06:15:01 -07:00
skia-flutter-autoroll
648861325f Roll Dart SDK from e59935669cb0 to f745f9447ddf (1 revision) (flutter/engine#21014) 2020-09-07 06:10:01 -07:00
skia-flutter-autoroll
44a971d04c Roll Fuchsia Mac SDK from 9pfHLZEFU... to tUwahggJ8... (flutter/engine#21013) 2020-09-07 06:00:02 -07:00
Clement Skau
4200d23617 Enable lazy-async-stacks by-default in all modes (Take 3) (flutter/engine#20895)
Lazy async stacks were already enabled by-default in AOT mode in [0] - which made the
gen_snapshot invocations use "--lazy-async-stacks --no-causal-async-stacks".

This change does the same with the engine defaults, which makes this be enabled
by-default in JIT mode as well.

See go/dart-10x-faster-async for more information.

This is a re-land: A fix for what we believe to have caused the last revert has landed upstream in Dart in dart-lang/sdk@0004589

[0] flutter/flutter@3478232
2020-09-07 10:55:48 +02:00
skia-flutter-autoroll
f7046897e3 Roll Skia from d0fe7d37d678 to 611a52108b01 (2 revisions) (flutter/engine#21012) 2020-09-07 00:20:01 -07:00
skia-flutter-autoroll
a82a4e3a81 Roll Skia from a73a84f9b8e3 to d0fe7d37d678 (1 revision) (flutter/engine#21011) 2020-09-06 23:00:02 -07:00
skia-flutter-autoroll
255a29e636 Roll Dart SDK from f3a9ca88b664 to e59935669cb0 (1 revision) (flutter/engine#21008) 2020-09-06 17:05:03 -07:00
skia-flutter-autoroll
4cbef8efc2 Roll Skia from d91cd6b5ee2b to a73a84f9b8e3 (1 revision) (flutter/engine#21007) 2020-09-06 17:00:01 -07:00
skia-flutter-autoroll
f52956c5ea Roll Fuchsia Mac SDK from sih5f60Gt... to 9pfHLZEFU... (flutter/engine#21006) 2020-09-06 16:55:02 -07:00
skia-flutter-autoroll
3b8f799d4d Roll Fuchsia Linux SDK from A0PKwETay... to gfAt63Ezd... (flutter/engine#21005) 2020-09-06 16:50:04 -07:00
skia-flutter-autoroll
1a8a9207c8 Roll Skia from 6763a713f957 to d91cd6b5ee2b (3 revisions) (flutter/engine#20989) 2020-09-04 15:30:02 -07:00
skia-flutter-autoroll
5a13eedab9 Roll Fuchsia Mac SDK from EN2ycWLxi... to sih5f60Gt... (flutter/engine#20999) 2020-09-04 15:15:01 -07:00
skia-flutter-autoroll
30bd4b0931 Roll Dart SDK from 0f0cff3922ad to f3a9ca88b664 (1 revision) (flutter/engine#21000) 2020-09-04 12:45:01 -07:00
Jim Graham
6022f32281 adjust blur radius for HTML to match CanvasKit (flutter/engine#20840)
* adjust blur radius for HTML to match CanvasKit

* switch to new goldens for new blur radius logic
2020-09-04 12:10:48 -07:00
skia-flutter-autoroll
9d3b0f48c9 Roll Fuchsia Linux SDK from 81O8Kg_Rw... to A0PKwETay... (flutter/engine#20998) 2020-09-04 09:15:01 -07:00
Gary Qian
cd4ac5d0a3 [Android R] Sync keyboard animation with view insets vs Android 11/R/API 30 WindowInsetsAnimation (flutter/engine#20843) 2020-09-04 02:06:30 -07:00
skia-flutter-autoroll
096df61607 Roll Dart SDK from 016e8880f0ab to 0f0cff3922ad (7 revisions) (flutter/engine#20990) 2020-09-04 00:30:01 -07:00
Jim Graham
3370791867 improve sensitivity of BackdropFilter web tests (flutter/engine#20915) 2020-09-03 21:47:41 -07:00
skia-flutter-autoroll
5efac82f8d Roll Fuchsia Mac SDK from gOI3W1UNU... to EN2ycWLxi... (flutter/engine#20985) 2020-09-03 21:45:01 -07:00
Siva
857b8eac52 Manual roll of Dart b29f228f62...016e8880f0 (flutter/engine#20967)
dart-lang/sdk@016e8880f0 Version 2.10.0-90.0.dev
dart-lang/sdk@34f636ce1d Revert "[vm/io] Fix FileSystemWatcher enum name typo."
dart-lang/sdk@7a02118a41 [vm/fuchsia]: Safely shutdown the async message loop.
dart-lang/sdk@334d368146 [analyzer_plugin] Remove unused dart:async imports
dart-lang/sdk@047c0f860a [Analyzer] Support analyzing open files without open workspaces
dart-lang/sdk@f846d0e7ea [analyzer_cli] Remove unused dart:async imports
dart-lang/sdk@ba372d6e8a [dartdev] Remove unused dart:async import
dart-lang/sdk@30cfb228c0 [nnbd_migration] Remove unused dart:async imports
dart-lang/sdk@1134a0f17c [analysis_server] Remove unused dart:async imports
dart-lang/sdk@3317d47c7d [_fe_analyzer_shared] Remove unused dart:async import
dart-lang/sdk@0a036db596 [vm/io] Fix FileSystemWatcher enum name typo.
dart-lang/sdk@000f3135a5 [analyzer] Remove unused dart:async imports
dart-lang/sdk@7817aa1796 [dartfix] Remove unused dart:async imports
dart-lang/sdk@0144087619 Version 2.10.0-89.0.dev
dart-lang/sdk@42dfb9d304 Add `generateCallGraphWithDominators` method to generate a `CallGraph` from a precompiler trace.
dart-lang/sdk@01024dfa5a Issue 43200. Report ASSIGNMENT_TO_FINAL when 'final late' has an initializer.
dart-lang/sdk@ab16d79af9 Revert "Flow analysis changes to fix mixed-mode unsoundness loophole."
dart-lang/sdk@7363adca67 [infra] Update checked-in SDKs to 2.10.0-79.0.dev
dart-lang/sdk@d833f2f65c Flow analysis changes to fix mixed-mode unsoundness loophole.
dart-lang/sdk@33e4a6bc2a Revert "[vm] Have Read/WriteStream use (S)LEB128 for variable-length encoding."
dart-lang/sdk@d9dc24b53e Version 2.10.0-88.0.dev
dart-lang/sdk@7130dd4d3d [cfe] Report error on non-void setter return type
dart-lang/sdk@a7cb764aa4 [tests/ffi] Reinstate deleted test
dart-lang/sdk@39689eb07c [co19] Roll co19 to 9c07e26d67665de7972ba6f7e87369933a978545
dart-lang/sdk@1f92293fd5 Revert "[dart:html] Add 'creates' type description to JS calls"
dart-lang/sdk@e44cf969c6 Fix creates value for getStats
dart-lang/sdk@15201ebe5f Version 2.10.0-87.0.dev
dart-lang/sdk@eb8dfee107 [CFE] Clean up duplicate entries in spell checker lists
2020-09-03 20:50:59 -07:00
Jason Simmons
f0520a07ab Update test Dart code to pass the latest Dart analyzer rules (flutter/engine#20986) 2020-09-03 18:09:05 -07:00
xster
ed15a009fe Let FlutterActivity/Fragment/FragmentActivity have an app bundle path override instead of eager resolving during construction (flutter/engine#20769) 2020-09-03 17:31:30 -07:00
Emmanuel Garcia
5ad2cb4d55 Don't use GetTaskQueueId() in rasterizer as it breaks Fuchsia (flutter/engine#20983) 2020-09-03 16:40:01 -07:00