216 Commits

Author SHA1 Message Date
Jonah Williams
48d6e1f891
Custom accessibility (local context) action support for iOS and Android. (#5597) 2018-07-11 10:27:50 -07:00
Chris Bracken
fed2ea458e
Revert "Remove vmservice_io.main from entry points. (#5625)" (#5711)
This caused failures in Flutter microbenchmarks.

See: flutter/flutter#19096 and flutter/flutter#19210

This reverts commit 4466d61a993fdbde2cb092b4da9bbef33d1962fe.
2018-07-10 16:57:23 -07:00
sjindel-google
4466d61a99 Remove vmservice_io.main from entry points. (#5625) 2018-06-29 13:10:12 +02:00
Jason Simmons
0f8386b998
Add Dart entry points accessed from native code for decodeImageFromPixels (#5613) 2018-06-25 16:05:07 -07:00
Ryan Macnak
ab1b0db966
No-copy kernel loading. (#5580)
Required by https://dart-review.googlesource.com/c/sdk/+/60202
2018-06-21 15:44:04 -07:00
Jason Simmons
efd6663344
Maintain a FontCollection for each engine instance instead of a process-wide singleton (#5521) 2018-06-13 14:28:21 -07:00
Ben Konyi
8d8d91bfc3
IsolateNameServer reland (#5519)
* Reland "Added IsolateNameServer functionality (#5410)"

This reverts commit c3976b3c7183f479717bffed3f640fb92afbd3dc.

* Fixed issue with isolate_name_server_test which caused test to timeout

* Disabled thread_annotations on Android as they aren't supported in the
NDK headers for std::mutex. Readded thread annotations to
IsolateNameServer.
2018-06-13 11:57:10 -07:00
Ben Konyi
c3976b3c71
Revert "Added IsolateNameServer functionality (#5410)" (#5516)
This reverts commit 61a2d129cfc8c52cf1ff59b03bccf67d9b07af63.
2018-06-12 17:03:13 -07:00
Ben Konyi
61a2d129cf
Added IsolateNameServer functionality (#5410)
* Added IsolateNameServer functionality, which allows for the association
of string names with isolate SendPort ids that can be used to establish
inter-isolate communications.
2018-06-12 15:50:48 -07:00
Chris Bracken
be02d0cf09
Revert "Eliminate support for Dart 1 (#5504)" (#5505)
Broke runtime_unittests, which are still running directly from source.

This reverts commit 0ea93c3a3e40426fd222ba22c2f60756c8a32097.
2018-06-11 18:12:10 -07:00
Chris Bracken
0ea93c3a3e
Eliminate support for Dart 1 (#5504)
Eliminates support for running directly from sources or script snapshots. In
debug mode, we run from a kernel snapshot; in profile and release modes, we
link in AOT-compiled code.

Renames --dart-non-checked-mode to --disable-dart-asserts since checked mode
does not make sense in Dart 2.
2018-06-11 17:00:43 -07:00
Zachary Anderson
a09b4fdcb7
Adds dynamic, interpreter configs to tools/gn (#5446)
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
2018-06-05 14:52:52 -07:00
Alexander Aprelev
a83b37d35a
Roll dart to a5e41681e55d1e74684bfff530218db556d77ee8 (#5467)
* Roll dart to a5e41681e55d1e74684bfff530218db556d77ee8.

* Update license
2018-06-05 08:35:44 -07:00
Jason Simmons
78f46bd427
Log an error and cancel DartVM init if the VM/isolate snapshots are invalid (#5449)
See https://github.com/flutter/flutter/issues/18101
2018-06-01 17:34:25 -07:00
Alexander Markov
0470f1c8cc
Remove --limit-ints-to-64-bits Dart VM option (#5442) 2018-06-01 11:05:38 -07:00
Chinmay Garde
5441ee79ff
Allow embedders to specify a custom advisory URI and entrypoint. (#5408)
The Fuchsia embedder wants to specify the application name in the field for the advisory URI. This allows embedders to specify whatever they want.
2018-05-29 15:10:12 -07:00
Ben Konyi
bbbd930283
Removed sync_async flag from engine which was causing snapshot errors. (#5367)
Will be reenabled when sync-async is on by default in flutter/flutter.
2018-05-24 17:34:25 -07:00
Ryan Macnak
fb709e25e3
[fuchsia] Plumbing for sharing between AOT snapshots. (#5351) 2018-05-24 13:24:14 -07:00
Ryan Macnak
86d96fd0ce
Reapply "Don't link the core snapshot in the Android engine." (#5353)
Add back the core snapshot to runtime_unittests and embedder_unittests.
2018-05-23 17:09:51 -07:00
Ryan Macnak
2e9ff1f09a
Revert "Don't link the core snapshot in the Android engine. (#5348)" (#5352)
This reverts commit e0d4c4641386b8a81c7e9c3bc1a32172d81a785d.
2018-05-23 16:11:57 -07:00
Ryan Macnak
e0d4c46413
Don't link the core snapshot in the Android engine. (#5348)
Allows one to use a different core snapshot without a custom engine build by just packaging a different one in the APK.
2018-05-23 15:56:28 -07:00
Martin Kustermann
812423da5e
Restore functionality to run from .so file on Android (#5278)
Flutter AOT builds can be done on Android using .so files (instead of
separate instruction/data snapshots) using the `--build-shared-library`
flag.

Running from .so files stopped working after the engine refactoring in
58e84c8bf0, which this CL restores.

Issue https://github.com/flutter/flutter/issues/17236
2018-05-23 10:11:44 +02:00
Alexander Aprelev
45ebf1d4a6
Disable kernel-based expression evaluation. (#5290)
This should be reverted once dartbug.com/33087 is fixed.
2018-05-17 14:09:45 -07:00
Chinmay Garde
0167f9f908
Remove dart_vm_entry_points_fuchsia.txt as it has been moved to //topaz (#5291) 2018-05-17 13:41:36 -07:00
Ryan Macnak
30c649dd74
[fuchsia] Teach engine how to set up an isolate from a list of kernel files. (#5210) 2018-05-16 10:09:53 -07:00
Alexander Aprelev
bbfe593500
Enable flutter service protocol rpcs to run on UI isolate. (#5263)
With this change if flutter tools provides isolateId parameter, then VM will run the handler on that isolate. If no isolateId is provided, VM will continue running handlers as if they were registered wit Dart_RegisterRootServiceRequestCallback.

This goes towards fixing https://github.com/flutter/flutter/issues/17434
2018-05-16 07:29:20 -07:00
Ryan Macnak
e32e390328
Roll Dart to a5c11d7d0329432ca37e35bb249b20f60aa0aa31. (#5269)
Update engine for removal of Dart_ReadKernelBinary and refactored build targets.
2018-05-15 16:13:21 -07:00
Ryan Macnak
63fdebf209
Revert "Roll Dart to a5c11d7d0329432ca37e35bb249b20f60aa0aa31. (#5259)" (#5266)
This reverts commit 755dbeef4ac38f41e380f37ce17ffba2f7492c0a.
2018-05-15 13:26:51 -07:00
Ryan Macnak
755dbeef4a
Roll Dart to a5c11d7d0329432ca37e35bb249b20f60aa0aa31. (#5259)
Update engine for removal of Dart_ReadKernelBinary and refactored build targets.
2018-05-15 12:57:01 -07:00
Jason Simmons
4a4cff96d4
Remove Blink code (#5218)
Fixes https://github.com/flutter/flutter/issues/12212
2018-05-10 15:57:29 -07:00
Chinmay Garde
d97b6d859a
Allow explicit specification of the isolate snapshot. (#5193)
The mobile shells all use the same isolate snapshot. This is also the snapshot used by the service isolate. This works towards a world where the isolate snapshot is no longer a member variable of the DartVM instance. Instead, all snapshots must be specified in the run configuration. For now, the new `Shell::Create` overload will only be used by Fuchsia till I refactor `dart_vm.cc`.

There are no API updates to the mobile shells.
2018-05-07 17:28:31 -07:00
Alexander Aprelev
f5c7cb366a Roll dart to b298fc6d8f6a0e1aa841dbbdda26663d6012a79a. (#5155)
* Roll dart to b298fc6d8f6a0e1aa841dbbdda26663d6012a79a.

Changes since last roll:
```
b298fc6d8f Revert "[kernel] Change dill representation of doubles"
9a7e1f64a2 Revert "Revert "Fix incorrect handling of NSM forwarders and pull all logic into CFE.""
cbca4006f8 fix #30907, add library constants for all SDK libraries
61c226b4ea Only create Goma's analyzer on Linux.
24dd9b4176 Revert "Fix incorrect handling of NSM forwarders and pull all logic into CFE."
bed71b7776 Migrate and clean up the prefix negative tests.
1fcd896ed9 [VM] Avoid deadlock by allowing us to run kernel isolate from a script snapshot, fixes all dartk-sim* builders
0bc6e7217a Update expression compilation expectations.
9038b8f45f CFE support for compiling individual expressions in a context.
7d5025e814 Fix incorrect handling of NSM forwarders and pull all logic into CFE.
e2247e5e00 Put the '@' outside the revision variables.
9381424204 Fix presubmit on Windows. Dart executable is not called .bat
2a8c3515b2 Avoid strong+checked mode: strong mode supersedes checked mode
b7698dcbce Update status for Windows
8baa82413b [infra] Remove --no-preview-dart-2 flag from gardening tools
47e9039512 Don't encode strings up front; don't toString uris
4a0ac85cc3 Update co19 status
ce7329849d Fix build breakages - use platform independent path specification is test so that   it works on windows - skip test for precompiled and dartk builds as the test uses   spawnUri which is not supported in these modes
ee6351a147 [VM] Set up package config value when invoking the front end for compilation, this should fix issue 32950 "(Isolate.spawnUri() ignores packageConfig argument in Dart 2 mode.'
d1286a367e Strong mode update for swarm
fd27cc3435 Don't store bytes in the file cache.
73abd61304 Re-land "Clean up the use of deprecated API in the analyzer_plugin package".
607f4f5769 [vm] Get more helpful errors from Dart_SetVMFlags and Dart_MakeIsolateRunnable.
f044637c8b [infra] Upgrade checked in SDKs to 2.0.0-dev.52.0
dcf10816aa [infra] Add script that updates checked in SDKs
f8bea2a7e6 dart2js: Register inlined native methods for dump info
7fe8659613 dump-info: Use relative paths for library canonicalUri...
dcf4886500 [frontend-server] Add verbose option.
5087ffa481 [release] Move DDC sync-async flip to correct section in the release notes
fe7056ebaa [release] Update changelog for 2.0.0-dev.52.0
```

* Pick up another revert to fix https://github.com/flutter/flutter/issues/17214 and few more dart commits landed since:

```
4c9b712052 Revert "Don't encode strings up front; don't toString uris"
a1fbf62742 [build] Place 'extern "C"' before __attribute__, as required by gcc.
258c5172df [vm] Remove dart_mirrors_api.h.
384c55c29e Update dartdoc & dependencies to v0.19.0.
```

* fix licenses
2018-05-02 18:42:14 -07:00
Ryan Macnak
2812ea3ed3
Define Uri.base as CWD to match the standalone Dart VM. (#5137)
Bug: https://github.com/flutter/flutter/issues/17118
2018-05-01 09:30:30 -07:00
Ryan Macnak
bb9b84ffb8
Roll Dart to 0cc70c4a7c448078dd2aea8e45c56bc50fbbb31c. (#5133) 2018-04-30 13:57:32 -07:00
Alexander Aprelev
895c965ce0
Set file modified callback. (#5096)
This fixes dart1 hot reload regression caused by 58e84c8bf.
2018-04-26 08:43:28 -07:00
Ryan Macnak
78f8a0f45a
[fuchsia] Changes for running Dart 2 on flutter_runner. (#5080)
- Remove assumption that we're in Dart 2 mode only if there's a platform kernel.
 - Load core snapshots from the package instead of linking them in.
2018-04-25 13:31:13 -07:00
Jason Simmons
2970c099f7
Use the default microtask scheduler on all isolates except the UI isolate (#5068)
See https://github.com/flutter/flutter/issues/16846
2018-04-23 15:02:19 -07:00
Chinmay Garde
09d05a3891
Prepare and run child isolates on a VM managed (i.e. no UI) task runner. (#5054) 2018-04-19 19:17:11 -07:00
Chinmay Garde
22e138126f
Allow runtime unit-test to perform dynamic symbol resolution for Dart snapshots. (#5044) 2018-04-18 17:55:39 -07:00
Jason Simmons
7a6b77999f
Remove the weak pointer factory from the service isolate's DartIsolate object (#5041)
The WeakPtrFactory must be deleted on the thread where it was created.
However, the service isolate is created and destroyed on threads from
the Dart thread pool, and the creating thread may not be the same as
the destroying thread.
2018-04-18 13:02:19 -07:00
Chinmay Garde
a0804f3738
Simplify weak pointer factories and allow vending weak pointers on multiple threads. (#5029) 2018-04-18 11:07:16 -07:00
Chinmay Garde
00911b2a85
Don't send platform messages to isolates that are not running. (#5031)
Isolates may be launched and awaiting snapshot association. We don't
want to send such isolates any messages before their "main" method is
called. In such cases, the engine may intercept and store certain
launch specific information.
2018-04-17 17:10:17 -07:00
Chinmay Garde
0c09bf03d1
In the service protocol, if no view is specified to flush tasks on, pick the first one. (#5028) 2018-04-17 12:07:00 -07:00
Chinmay Garde
1bc0e1bb9a
On windows, refer to Dart snapshot directly executable. (#5024) 2018-04-16 22:02:19 -07:00
Chinmay Garde
570231b7ab
Specify the packages file path when running engine dart tests. (#5005) 2018-04-13 16:17:38 -07:00
Chinmay Garde
4e0fbb6f01
If the test specifies a .dill file, dont make the engine interpret is as source. (#5002) 2018-04-13 15:07:28 -07:00
Chinmay Garde
58e84c8bf0
Re-land "Support multiple shells in a single process. (#4932)" (#4998)
* Re-land "Support multiple shells in a single process. (#4932)"

This reverts commit 723c7d01439da4261bc836075fb55651ce9e7f03.
2018-04-13 13:48:15 -07:00
Vyacheslav Egorov
723c7d0143
Revert "Re-land "Support multiple shells in a single process. (#4932)" (#4977)" (#4981)
This reverts commit a3327bff86800b3e654a2988fa7e6049edeb679c.
2018-04-12 18:28:55 +02:00
Chinmay Garde
a3327bff86
Re-land "Support multiple shells in a single process. (#4932)" (#4977)
This reverts commit 9199b40f2a2a6e448cd251de44e020ec3b75002d.
2018-04-11 15:41:23 -07:00
Chinmay Garde
9199b40f2a
Revert "Support multiple shells in a single process. (#4932)" (#4964)
This reverts commit 6baff4c821350bbcb64e7d029574b567f3801a1a.
2018-04-10 15:28:43 -07:00