* Enforce clang-format on all files in commit
This re-enforces clang-format across all files changed in the commit.
In c10c417, we enabled checking only for the lines changed in the diff
in order to reduce the change of merge conflicts with the shell refactor
landed in 82c5c8f.
* Reformat sources to match latest clang-format
As part of re-enabling clang-format across the codebase, reformat all
code to match the latest toolchain.
On a Linux host, we were having to convert the type of the bitmap to N32, but we weren't also fixing the channel order to RGBA, so consequently we were getting BGRA when the API was asking for RGBA. This forces the color format to be RGBA when that is what is asked for.
We weren't needing to do conversion on macOS, so macOS was always getting RGBA.
Paragraph layout breaks the text into lines, and ellipsizing (if applicable)
will truncate the last run of a line at the point where word wrap would have
occurred.
Fixes https://github.com/flutter/flutter/issues/18198
This updates the documentation for StrokeJoin and StrokeCap to contain animated diagrams that describe their function. The actual diagrams reside in the assets-for-api-docs repo.
libtxt will query Skia for a fallback typeface when it encounters a character
that is not found in the primary font. The font collection should make all
the variants of the fallback typeface's font family available to Minikin for
use in future font lookups.
Fixes https://github.com/flutter/flutter/issues/17985
* Move the handling of delegating AppDelegate callback out of FlutterAppDelegate.
Also moves the plugin registry to FlutterViewController. So each view-controller will handle its
own plugins.
This is intended to simplify including one or more Flutter views in an existing iOS app and giving
more precise control of plugin registration.
Fixes: https://github.com/flutter/flutter/issues/16539
* formatting
* Update license golden file
* Fixed type error
* FREEZE.unindexed
* Fix Header types
* Revert "FREEZE.unindexed"
This reverts commit bebb70056c9bcb90b4321bdc2873896623ed6faa.
Adds --dynamic and --interpreter flags to
tools/gn. These flags result in engines with
properties as follows:
--dynamic:
- JIT targeting native code on Android and
DBC on iOS
--interpreter
- Target DBC even if running on Android.
For example:
gn --android --dynamic --interpreter --runtime-mode release
Will generate an engine:
- Without Dart asserts
- Without Observatory
- With JIT compililation to DBC
into out/android_dynamic_release_dbc
* Remove uses of ReleaseOwnership from vulkan backend.
Flutter no longer needs to release ownership of objects to skia so this change removes the api calls.
* Remove Release call from vulkan_device.cc
* Update vulkan_application.h
* Update vulkan_application.cc
* Update vulkan_handle.h
This changes the ownership of the VkInstance and VkDevice back to the flutter's objects. I am trying to move skia into a world where GrVkBackendContext is purely a description of the vulkan context skia should use and is just passed in during GrContext creation. It shouldn't need to be ref counted or actually do work in destructor (those changes to come later). This is just a first step towards getting there.
A given character may render differently in various locales, and fonts on the
host system may be tagged with locale metadata in order to support this.
If the text renderer needs to find a fallback font for a character, it should
pass the preferred locale to Skia's font manager which can use it to find the
best matching font.
The font collection also needs to maintain different caches of fallback fonts
for each locale.
See https://github.com/flutter/flutter/pull/17879
Eliminates the declaration that only arm64 is supported in
Flutter.framework's Info.plist. This causes Xcode's app thinning tools
to remove Flutter.framework in thinned archives for armv7 devices.
Although we do have a save before this SkAutoCanvasRestore so we
can theoretically send in doSave = false, it's safer to set doSave
to true to prevent future breakage.
As discussed with mtklein@google.com and reed@google.com, saving
canvas is very cheap in Skia so this should have no performance
impact. Skia is also considering remove doSave argument from
SkAutoCanvasRestore and always save the canvas.
saveLayer is slow so we should avoid it as much as possible. If
there are artifacts without saveLayer, then we should report that
to Skia for the fix instead of slowing the performance with
saveLayer.
This PQ makes average rasterizer time drop from 25ms to 18ms in
flutter_gallery transitions perf test on a Nexus 5X.
This partially fixesflutter/flutter#13736 .
We probably still need some work in the opacity layer to squize
all the performance improvements.
* Roll dart to f981f097602ca434ce0a36b1f704723cad105fb6
Changes since the last roll
```
f981f09760 Revert "Clone annotations when cloning nodes that have them"
b4699ae795 Improve type parameter and type argument recovery
544863fe68 Remove the no-op rewriter tests
4d271519a1 [VM Bigint] Fix arm64 intrinsic for _estimateQuotientDigit (loop missing jump back). Add regression test. Fix arm64 disassembler (was printing "unknow" instructions). Make decoding stricter in arm64 simulator. This fix addresses https://github.com/a14n/dart-rational/issues/19
57d256377c [fuchsia] Update for port API change
c09e0121f7 Observatory strong mode fixes: add explicit downcasts to button onClick callbacks.
a5bf688622 Observatory strong mode fix: Avoid a String/Uri type mismatch.
1b0c2f4507 Observatory strong mode fix: Add VM.target getter.
210d175cc0 Observatory strong mode fix: Fix a callback parameter type using an explicit downcast.
08d0dcb4b0 Observatory strong mode fixes: specify some list literal types.
462e350a6a Observatory strong mode fixes: Change types of InstanceMock/Instance members.
6ed3b162d6 Added feature specification for upper/lower bounds of top/bottom types
abed87be08 Make BodyBuilder.handleCatchBlock use FormalParameters as catchParameters.
5016f11c08 [fasta] Make lists of type arguments growable
48e8b4cdbb Make Forest.forStatement take the conditionStatement rather than extracting the rightSeparator
2d527801b2 Observatory strong mode fixes: fix several type annotations.
0125a5a235 Observatory strong mode fixes: Fix callback parameter types using implicit casts.
c85b2fc7be Observatory strong mode fixes: Fix an int/double type mismatch
3fb22040cb Observatory strong mode fixes: make iteration types more specific.
2165d2d797 Observatory strong mode fixes: safe uses of dynamic and covariant.
6a34939ba7 Use bottom type for Link constants
20831b1d6f Move ErroneousExpressionGenerator
8e25851870 Split LargeIntAccessGenerator
7b3c3991ea Observatory strong mode fixes: add implicit downcasts.
de0e35829d Discover available files before searching in known files.
d17859ca11 Observatory strong mode fixes: make callback parameter types more general.
ca7d545df8 Follow up on initial fix-all fixes PR, https://dart-review.googlesource.com/c/sdk/+/56220, adding some assertions and a test.
922f9697a0 [VM] Fix for issue 32901 - Isolate.resolvePackageUri has inconsistent behavior when called from a script launched via relative path.
9c70462e3c [vm] Roll boringssl to 189270cd190267f5bd60cfe8f8ce7a61d07ba6f4
785f36853f Last changes to make dart2js strong mode clean when compiling itself!
993b4caf0e Make the change to ContextRoot non-breaking.
30ad3f66ce Set DDK to run on Dart-2 VM
379232a097 Convert remaining IdentifierContext consts
819b212318 Issue 33228. Fix Dart2 error in outline computer.
ec19ebd684 [vm] Fix feature detection of DBC32 versus DBC64 in snapshots with code.
00a5197542 More changes to make dart2js dart 2 strong mode clean.
2d8bf7751e CHANGELOG for invariant generic bounds
de545b4079 Revert "[mirrors] Add IsolateMirror.loadUri."
1be13871bb [ VM ] Addressed additional comments from CL 56461.
5cc3736644 [vm/frontend-server] Include errors count into compile expression response.
891efdca59 Fix status file for analyzer.
ad4cfa0260 [mirrors] Add IsolateMirror.loadUri.
a64bbbf6b3 Bump to watcher 0.9.7+8.
eb19be5ff8 [vm/tool] Teach precompiler2 script to build ELF binaries.
7c43cfad9f [vm] Mark superclasses of interfaces implemented.
2f7874ab99 [ VM ] Updated include path for typed_data_utils.h which was causing Flutter build to fail.
3c6907ed0d [vm/kernel/aot] Approximate numerous invocations per selector in TFA
75a75263d3 Clone annotations when cloning nodes that have them
d3da30c152 Report errors on non-synthetic tokens
351d70674d Initial new union of Dart Analysis Fixes, the initial fix is to remove all unused imports in a file.
e8bb129816 Adjusted setter conflict specification, cf. #33077
0a042a270f Fix a bug in the async transformation of let expressions
6fc0c1fa4f [vm/kernel] Only create zone handles when necessary (e.g. in IR instructions, LocalVariable).
735f7bdcec Updated for expected FF failure.
02bcbc12fa [vm/kernel] Fix partial instantiation implementation in StreamingConstantEvaluator.
8d4a1ccaf6 Split ReadOnlyAccessGenerator
ee9e1c1571 Split TypeUseGenerator
9ec756b31c Split DeferredAccessGenerator
163807ad40 Split LoadLibraryGenerator
51fa5c1662 Correctly transform async functions with FutureOr return types
bca70073ae [vm/kernel] Move kernel2kenrel "constants" transformation before TFA
1d8a72cacd Split StaticAccessGenerator
2d46ebd6a5 Fix Dart 2 runtime errors in the front end
89514bd8cf Cleanup library_loader.
21b65a9732 Remove unused typedef code
18407141b7 Split deferred load entity computation by class, member and local function
b84f18e392 [VM] Mark seemingly consistently failing test on windows
d07b9aa0e0 Add explicit type args on generators
b3862d5a92 Split SuperIndexedAccessGenerator
0ec82e24ce Avoid late creation of entities.
1d59ab22ce Fix#29014, make function type parameters invariant.
4d7bbb53ab Use AbstractValue in ClosedWorld
89f37416fe Fix windows bot breakage for package:build tests.
9b44fc39c8 Deprecate chaseDependencies option.
05f96af05a [ VM ] Fix failing non-UTF8 path test on MacOS
c541cda216 [ VM ] Fixed issue where error code was being clobbered by call to Dart_TypedDataReleaseData on Windows, resulting in OSError returning a 0 error instead of the true error code.
a00dae2260 Update test_parseAwaitExpression_inSync
9cd0e808db Convert more identifier contexts
552680b7f0 First round of changes to dart2js to make it strong mode clean.
cc4fe66de8 Replace parseTypeVariables with computeTypeParam
c3b6df5eb7 Update dartdoc and dependencies to v0.19.1.
3ab7cf0590 Revert "[dart:io] Revert recent non-utf8 path handling"
7c59fe6332 Flip dartfmt to run in Dart 2 mode.
ade600c4b3 Update constructor identifier context
e35ed9c749 [ VM / Build ] Added '--no-include-kernel-service' to build.py. By default, the kernel service is now included in all build modes, including product mode. Providing '--no-include-kernel-service' will build the specified configuration without the kernel service.
e5eee0d57a Add Forest support for labeled statements
83e29023f4 Add schema-based file system
8f4c9bcf15 Add single-root file system.
1567b442dd Add Forest support for catch clauses
9816fce289 Fixed to use catchError instead of try/catch.
88d847ea3e [release] Prepare CHANGELOG.md for 2.0.0-dev.58.0
2a5724c75c New package:build workspace before we support it at the language level
4f5db3aef2 Update pub DEP – includes Dart2 type fixes
0a9697596e Add Forest support for for statements
4fb0c60938 [vm/kernel] Set active class when evaluating Dart annotations
8427d53a4d Extra precedence level in parser to distinguish postfix operators and selectors
1ce9b2541b Replace call to parseTypeVariablesOpt with computeTypeParam
f7e09684b6 Split IndexedAccessGenerator and ThisIndexedAccessGenerator
9f3cd54d3b Remove UnhandledListener
98fcc338ca Fix diet_listener.dart imports
3a5454a691 Split SuperPropertyAccessGenerator
e0144d51bb [VM] Add UNREACHABLE() to AOT constant evaluator in the VM
fa6fd26892 Remove unused IdentifierContext instance
cbe76eeea0 [release] Prepare changelog for 2.0.0-dev.57.0
e62f37f396 Tighten failure and success of test.
a80dfa12d7 Revert "Add colons"
443c23c091 Remove subpackage_relationships_test.dart
7583fb882a [vm] Refactor state bits to free up two bits on Function.
0271003c33 Extract parseFunctionLiteral from parseType
b8cb785aed Improve formal parameter identifier recovery
9f1097948a [fasta] Add and use a type-inference-specific interface of BodyBuilder
3960cacc89 Make peek return null when the stack is empty
3582e30d8e [VM] Remove unused _Random._A field in Dart sources and make constant in C++ code instead
f8cca09ce3 [VM] Do not invoke the empty StackOverflowError/OutOfMemoryError constructors
39bccc125d Split NullAwarePropertyAccessGenerator
29253c57ed Add colons
fc95fd920b Move generators out of body_builder
39516de753 Split ThisPropertyAccessGenerator
2d79c356e0 Start creating common superclass for generators
2a7188523e Fixed status
cf87b84f7d Support Promise to Future for both DDC and dart2js.
6d8f473d4f [ VM / Hot Reload ] Updated kernel_service and hot reload behavior to run as long as the compiler returns valid kernel.
f4f79acb61 Improve annotation identifier recovery
3bdd173175 Call computeType rather than parseType
2c8c05f877 [dart2js] merge generator body into empty entry function
96cfc632bb [infra] Use a less specific browser version that works across platforms
3ac2a3fe19 Address comment from 55981
8c0f5747a0 Add build_integration package and move multi_root_file_system there.
ba0da68563 Update status for new test
3f6c87d5ac [vm/compiler] Do not use Constant(#null) to reserve space on the expression stack.
a756248065 Add Forest support for assert statements and initializers
a9ab8f4e7d [GN] Hack around Dart 2 application_snapshot deps issue
298129c3a4 Improve part of identifier recovery
371c8e4b87 Append version and CRC32 to data in FileByteStore.
6cc0d9770f Skip expressions by parsing them with a no-op listener.
3ccd5a06f5 [js_runtime] Fix for 'o is FutureOr<T>' with function type T
d34fe65afa Revert "New package:build workspace before we support it at the language level."
580e486386 Make CastStreamSubscription.onData handle a null callback
2a8eb8089d [infra] Specify chrome version used by builds running on the test matrix
eeec6466b6 Convert the command-line analyzer to a dart 2 snapshot.
89df6b785d Issue 33181. Use RefactoringWorkspace in rename refactoring to determine when element being renamed is outside the workspace.
85ddeb990a [release] Prepare changelog for 2.0.0-dev.56.0
7ff8adcec9 Fix an incorrect dart:mirrors test
08d466bfad [kernel] Treat TypeParameter.defaultType as a child in visit methods
330dcb19da Rename remaining generators
2c9d8924e3 [fasta] Make explicit Object in bound a constraint during type inference
5924c35640 Prepare to remove expression_generator_impl.dart
c771e4d132 DDC: disallow ignore option on Stream cast failures
e191d4feb5 Simplify errors on invalid arguments
7ab9ea0e4e Change return type of Fangorn.parenthesizedCondition
09582b46ea Remove FastaAccessor and Accessor
a738567968 Convert ContextAccessor to ContextAwareGenerator
bbdf560ee7 Convert UnresolvedAccessor to UnresolvedNameGenerator
b5c6143d74 Convert IncompleteSend to IncompleteSendGenerator
63ff7ee922 [vm/interpreter] Support closures in bytecode. Support reordered bytecode metadata sections. For now, read but ignore exceptions table in bytecode metadata.
e1cabfd1d4 [dart2js] 'Fix' error in registrations
49d5ca3bb4 Switch to BigInt for ConstantValue.
9696c9dcd0 Change analysis_server tests to use /project/test.dart as the test file.
e71bd048e5 [vm, kernel] Fix async stack code traversal in dart2.
714697efbb [vm/kernel/bytecode] Write constant pool before bytecode and exceptions table
80b48195b1 [frontend-server] Serialize compiled expression procedure into the file.
68b19b4ff4 [vm/kernel/bytecode] Add invocation kind to StaticICData constant
929b79e865 [dart2js] Don't insert redundant checks
4cf51e6c1a Give (the old) ContextRoot path.Context to work with paths.
bea580c3a4 Disallow ignore on any explicit cast failures
1cf871a4d2 Improve import/export combinator identifier recovery
79a0ef60e0 Fix for 'Convert to final field' quick assist when no return type.
bbb8905075 Observatory strong mode fixes: specify type argument to .map when not inferable.
841a91b3a0 Observatory strong mode fixes: Add abstract Location.toUserString to Location.
fc206a7589 Add Kill isolate service request.
aad3270ab8 Observatory strong mode fixes: fix C-style parameter declarations.
ea4d10915c Observatory strong mode fixes: make return types more specific.
0f506ba3ae Added period to comment for consistency.
5ab4294074 [vm] Allow for creating a CoreJIT snapshot from a kernel file.
d5b99860e4 [frontend-server] Introduce compile-expression command.
ac8971a98a New package:build workspace before we support it at the language level.
99eb2195c8 Add Forest support for break and continue statements
4d3ebab589 [vm] Fix error message when an API function is called without a current isolate.
c31b9a461d [vm/kernel] Reference constants in Dill by offset into constants table.
0ff6c20c66 Add Forest support for return statements
85fbc71f22 More test framework cleanup
6202749429 [vm/kernel/bytecode] Support try-catch-finally in bytecode generator
78cc8a13a2 Improve type parameter recovery
3e7eef12d4 Remove reference to token.previous
5b4d67b22e Compute runtime completions in the context file itsef.
720b6c963c Improve some tests and fix a Dart 2 error
ff76905aeb [dart2js] Don't try to generate stubs for generator bodies
4610daa1c1 Convert ThisAccessor to ThisAccessGenerator
cb9bf910f9 Test that fasta_codes_generated.dart is up to date
eec11ebe4a Convert ErrorAccessor to ErroneousExpressionGenerator
a155d6c9e5 Update dependencies on async, collection, http_throttle packages
ce1dc86620 Adjust status file.
21fbf7d767 fix#33103, switch dartdevk to use Kernel nSM stubs
5632b1cb47 Adjust status file for precompiled target (see issue 33168)
41468e7c03 [VM] bypass some app_jit tests which have issues with mismatched VM options between the snapshot version and the invoked dart process.
c38bca632d [fuchsia] Fix bad state error on namespace cleanup
b911f78ee2 Use AbstractValue/AbstractValueDomain in function_set.dart
c9ea44bd8f Use the static type from the identifier element is local completions.
715ba58048 Remove reference to token.previous
4edb23cfc1 Bump to linter 0.1.51.
2ff2af7921 Allow running pub with --preview-dart-2
7aacf7e188 [ VM / dart:io ] Fixed memory leak in SecurityContext on MacOS.
ada23cde0b Add deferred test for local functions
f1f660fe1e Small cleanup
9f6e8a3a96 Move DDC to Dart 2 snapshot
be5b189c19 Exclude synthetic import prefixes from runtime completion.
7ac05a120a Add Forest support for do statements
029e1394f7 Make type promotion conditional depending on which builder is being used
817965f49d Runtime completion support for constructors, for loops, and function expressions.
02e47a9731 [VM] Fix for issue 32188 (cannot use `pub` with --preview-dart-2)
```
* Update license. Fix to license script to accommodate boringssl additional build-time license
* Revert changes to pubspec.lock
* Roll to buildroot with boringssl fix
* Update license
Reverts flutter/engine#5376
It was causing failures of the sort:
$ flutter test --local-engine=host_debug_unopt test/cupertino/scrollbar_paint_test.dart
00:06 +0: - Paints iOS spec
══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════
The following TestFailure object was thrown running a test:
Expected: Object or closure painting: 'a rounded rectangle with Color(0x99777777),
RRect.fromLTRBR(795.0, 4.0, 797.5, 86.0, 1.3)'
Actual: ?:<exactly one widget with type "CupertinoScrollbar" (ignoring offstage widgets):
CupertinoScrollbar(state: _CupertinoScrollbarState#c371a(tickers: tracking 1 ticker))>
Which: threw the following exception:
'': error: native function 'Canvas_translate' (3 arguments) cannot be found
This allows the stable header to be referenced from a known location. Also reduces the visibility of the framework target so that it is automatically built on the mac.