118 Commits

Author SHA1 Message Date
Chinmay Garde
b164edaea8 Revert "Only suppress the sampling profiler on Mac/iOS when the engine is in …" (#2814) 2016-07-21 14:18:05 -07:00
Ryan Macnak
3a4e0a0c80 Only suppress the sampling profiler on Mac/iOS when the engine is in debug mode. Makes the profiler available when using 'flutter run --profile' for iOS. (#2804)
Don't pass the --background-compilation vm flag as it has been enabled by default for quite awhile now.
2016-07-19 10:59:49 -07:00
John McCutchan
0b1986a5c1 Fix DevFS on Android devices (#2801) 2016-07-18 12:16:57 -07:00
John McCutchan
b0d50e4860 Fix service isolate startup (#2788) 2016-07-11 10:47:26 -07:00
John McCutchan
a757125bae Avoid re-entering the message loop while reloading. Fixes on stack reloading in Flutter embedder. (#2775) 2016-06-30 07:44:54 -07:00
Chinmay Garde
78af411d47 Fix leaky descriptor in dart_init and use the correct macro to handle EINTRs on close syscall wrappers. (#2765)
* Use IGNORE_EINTR instead of HANDLE_EINTR when using the `close` syscall wrapper.
* Don't leak the file descriptor used to memory map Dart related artifacts.
2016-06-17 12:04:30 -07:00
Adam Barth
12fab2f28a Move dart:jni to //flutter/lib/jni (#2744)
This patch disentangles dart:jni from //sky/engine and moves it into
//flutter/lib/jni. Eventually dart:ui will move into a peer directory.
2016-06-11 09:15:39 -07:00
Adam Barth
633d674c48 Move tonic to //flutter/tonic (#2742)
Now that tonic doesn't depend on anything in //sky/engine anymore, we
can move the code to a location where its dependencies are clearer.
2016-06-10 22:36:38 -07:00
Todd Volkert
d289a3180c Rename app.so -> app.dylib (#2738) 2016-06-10 15:00:00 -07:00
Jason Simmons
7a49b37a74 Implement a protocol for discovering active Flutter instances on Android (#2720)
Tools can send a broadcast intent that will cause Flutter processes to
write their names and observatory ports to the log in JSON format.
2016-05-27 17:11:34 -07:00
Adam Barth
e1dacd833f Switch sdk_xcode_harness to use flutter build aot (#2706)
Switch sdk_xcode_harness to use flutter build aot

This patch moves a bunch of complexity out of FlutterApplication.xcodeproj and
into `flutter build aot`, which will make it easier for developers to create
their own FlutterApplication.xcodeproj.
2016-05-24 16:22:33 -07:00
Ryan Macnak
1b936794aa Use a duration event for "FlutterEngineMainEnter" so about:tracing will use it as time 0. (#2703) 2016-05-19 16:14:07 -07:00
Chinmay Garde
ef8c8ca497 Don't include the observatory data blob in the binary in product modes. (#2686) 2016-05-13 21:34:15 -07:00
Jason Simmons
678409b8a1 Revert "Plumb dart timeline events to mojo:tracing. (#2595)" (#2670)
This needs to be updated for the latest Mojo APIs
2016-05-10 12:05:17 -07:00
Przemysław Pietrzkiewicz
ef589f99bc Plumb dart timeline events to mojo:tracing. (#2595)
This patch:

 - makes dart traces (coming from the VM and the timeline API)
   available to mojo:tracing
 - adds --vm-complete-timeline parameter, which makes the Dart VM enable all
   categories of timeline traces from the beginning, allowing to do startup
   tracing

This is based on the equivalent support in dart content handler.

Fixes https://github.com/flutter/flutter/issues/3162.
2016-05-10 11:08:36 -07:00
Chinmay Garde
7b3ca935d5 In case the Dart VM cannot be initialized, log the reason before terminating the process. (#2668) 2016-05-09 17:30:55 -07:00
Chinmay Garde
d52d3a4448 Wire up the interpreter on iOS devices. (#2648) 2016-05-06 15:37:59 -07:00
Jason Simmons
f1a8c5468d Load the precompiled snapshot from a group of asset files on Android (#2621)
Previously the AOT snapshot was packaged as a dynamic library (similar to the
scheme used on iOS).  This change eliminates the need for a native code
toolchain when building for AOT.
2016-04-27 15:35:25 -07:00
Jason Simmons
9d19f93386 Do not create the service isolate when Dart is built in product mode (#2618) 2016-04-25 17:05:21 -07:00
Jason Simmons
b478563ea6 Support ahead-of-time compilation on Android in the engine (#2614)
This include build system changes for selecting Dart's precompiler mode
plus a way to locate and load the precompiled snapshot library from an
Android application
2016-04-25 10:45:23 -07:00
Yegor
7a919c0f58 record startup timestamp in Android; pass it to Dart timeline (#2612) 2016-04-22 13:41:38 -07:00
Jason Simmons
e6ce967fce Roll Dart and set dart_runtime_mode in the GN script (#2610) 2016-04-22 11:02:41 -07:00
Jason Simmons
48de25e19b Do not modify the set of active streams within the embedder tracing callbacks (#2600)
Dart invokes Start/StopTracing callbacks within the _setVMTimelineFlags service
method whenever the embedder timeline stream toggles on or off.  Flutter's
implementation of these callbacks was modifying the set of enabled streams,
which could override the intended behavior of _setVMTimelineFlags.

Start/StopTracing will now only control Flutter's embedder-specific log.

Also needed to change the Flutter engine's --trace-startup flag to set the
corresponding timeline stream flag on the Dart VM.
2016-04-19 10:38:22 -07:00
Jason Simmons
5704322798 Add a --deploy build option that enables Dart product mode (#2598) 2016-04-15 12:18:57 -07:00
Jason Simmons
7182341f85 Merge pull request #2579 from jason-simmons/skia_skp_capture
Add an HTTP server for exporting Flutter debug info and a request han…
2016-04-06 10:22:46 -07:00
Jason Simmons
b93e9419bd Support the JNI bridge in secondary isolates
This requires detaching from the JVM at thread shutdown using a callback
that was recently added to the Dart VM.
2016-03-28 10:03:18 -07:00
Chinmay Garde
2bde94c703 Merge pull request #2525 from chinmaygarde/master
Update Dart dependency
2016-03-18 11:29:50 -07:00
Adam Barth
410aac589b Flutter apps in Mozart should have reasonable Uri.base
Previously this value was the temp directory that we used to store the FLX
bundle. Now it's the URL given to us by MojoShell.
2016-03-18 09:53:44 -07:00
Chinmay Garde
0616669659 Update Dart dependency 2016-03-17 17:51:02 -07:00
John McCutchan
4d7272446d Auto select Observatory port on Android and iOS simulators 2016-03-17 11:43:41 -07:00
Chinmay Garde
f5f8636cc6 Merge pull request #2502 from chinmaygarde/master
Wire up the TracingController to the the Dart embedder timeline API
2016-03-16 18:17:30 -07:00
Chinmay Garde
09972ad11c Wire up the TracingController to the the Dart embedder timeline API 2016-03-16 16:08:47 -07:00
Adam Barth
693935c169 Don't dump core on startup exceptions
Instead, log the exception to the console and exit with an error code.

Fixes #2362
2016-03-15 14:06:20 -07:00
Chinmay Garde
26d5aeb2e2 Avoid importing the internal lib into the builtin since its disallowed after Dart_Precompile.
Import the library directly in dart_ui.dart.
2016-03-10 14:40:26 -08:00
Jason Simmons
0ce96c8a55 Delete DartState during isolate shutdown
This solves two problems:
* UIDartState was being deleted during destruction of DartController after the
  isolate had been shut down.  The UIDartState held persistent handles to Dart
  objects, and deleting them when the isolate no longer exists caused an
  assertion failure.
* DartStates created for secondary isolates were never being deleted

Fixes https://github.com/flutter/flutter/issues/2549
2016-03-10 10:47:46 -08:00
Chinmay Garde
446984ec33 Conditional directives are a snapshotter option. Remove the same from the embedder VM and add the flag to the precomp snapshotter. 2016-03-07 17:17:02 -08:00
Chinmay Garde
9b2e93a06b iOS: Only add the kDartConditionalDirectivesArgs flags when not using precompilation 2016-03-07 16:53:32 -08:00
Collin Jackson
22d7bc4a3a Enable conditional directives 2016-03-06 17:29:42 -08:00
Adam Barth
962597e0f5 Fix crash when running widget example
Dart_IsolateMakeRunnable was returning false, which can indicate that the
isolate was already running. This patch seems harmless, but I'll follow up to
understand more about what's happening here.

Fixes #2383
2016-03-03 16:45:00 -08:00
Chinmay Garde
b407fc48ca Dont include any of the machinery to generate a precompilation snapshot on the embedder VM 2016-03-03 14:30:32 -08:00
Chinmay Garde
88dc138126 Merge pull request #2451 from chinmaygarde/master
Ignore checked mode when running from a precompilation snapshot.
2016-03-03 11:59:42 -08:00
Chinmay Garde
6df38242ae Ignore checked mode when running from a precompilation snapshot. 2016-03-03 11:18:40 -08:00
Jason Simmons
41f93f4099 Rename DOMDartState to UIDartState 2016-03-02 10:47:30 -08:00
Jason Simmons
d474e9d2b6 Merge pull request #2439 from jason-simmons/isolate_mojo_services
Implement support for invoking Mojo services from secondary isolates
2016-03-02 10:04:03 -08:00
John McCutchan
08d1ea32b3 Allow service protocol tests to run against sky_shell 2016-03-01 09:00:30 -08:00
Jason Simmons
0ede7dded8 Implement support for invoking Mojo services from secondary isolates 2016-02-29 16:20:27 -08:00
Jason Simmons
320d8e012b Merge pull request #2421 from jason-simmons/isolate_spawn
Support spawning new Dart isolates from within a Flutter app
2016-02-24 17:24:11 -08:00
Jason Simmons
470118b0de Support spawning new Dart isolates from within a Flutter app 2016-02-24 14:59:59 -08:00
Adam Barth
09e87f5865 Enable background compilation by default
We've been enabling it in the flutter tool for a while. This patch enables by
default in general.
2016-02-24 14:55:58 -08:00
Chinmay Garde
ab145b1fa9 Update the Dart VM and wire in the extra kDataSnapshot symbol for the precompiler 2016-02-19 16:48:28 -08:00