17 Commits

Author SHA1 Message Date
Alexander Aprelev
fbd384329b
Turn off smart minimal IKG compilation (#4383) 2017-11-21 16:09:41 -08:00
Martin Kustermann
a5ab58352e
Make frontend_server depend on dart/pkg/* files (#4369)
It speeds up local development workflow when doing changes to the front end
when ninja automatically rebuilds the frontend_server.dart.snapshot.
2017-11-16 15:34:23 +01:00
Alexander Aprelev
59f7f5038d Roll dart to pick up fix for diagnostic server (#4266)
* Roll dart to pick up fix for diagnostic server

* Fix runUnaryGuarded, runBinaryGuarded calls

* Revert changes to runUnaryGuarded, runBinaryGuarded as they seem to be local-only, perhaps dependent on version of analyzer

* Update third_party license hash. No changes to licenses
2017-10-23 16:02:24 -07:00
P.Y. Laligand
6fcb45991d Move //dart to //third_party/dart. (#4245) 2017-10-19 01:20:38 -07:00
Alexander Aprelev
974e68a1bf Make sure we await for the file writing to complete before reporting that compilation is done. (#4210) 2017-10-12 13:39:19 -07:00
Alexander Aprelev
11cac67ff9 Add an option to link platform.dill into app kernel file (#4204) 2017-10-12 10:11:47 -07:00
Alexander Aprelev
f737d49ca2 Add an option to specify file byte store location (#4201) 2017-10-11 17:33:22 -07:00
Alexander Aprelev
74e58f66d4 Add reset method to reset incremental compiler. (#4187)
* Add reset method to reset incremental compiler.

This is needed to support Flutter app restart request.

* Indent constructor calls
2017-10-09 14:58:27 -07:00
Alexander Markov
0dba2fe78d Roll Dart to 9ee73fe322ce3875a6b1f16ba16d64b11c680e90 (#4176)
* Switch from FlutterFastaTarget to FlutterTarget as FlutterFastaTarget was removed.
2017-10-04 16:28:30 -07:00
Alexander Aprelev
dd65308ce4 Switch from FlutterTarget to FlutterFastaTarget (#4169) 2017-10-03 13:57:18 -07:00
Alexander Aprelev
0f79a0cc1a Capture all aspects of messages from compiler (#4118)
* Capture all aspects of messages from compiler

* Make static
2017-09-15 16:04:58 -07:00
Alexander Aprelev
be87a63f2d Use MemoryByteStore for incremental compilation (#4077) 2017-09-08 13:06:34 -07:00
Alexander Aprelev
5aabbe131a Return generated kernel filename on incremental compilation results. (#4069) 2017-09-06 15:13:25 -07:00
Alexander Aprelev
c2f762606f Use BinaryPrinter instead of KernelSerializer to accommodate IKG (#4058)
* Use BinaryPrinter instead of KernelSerializer to accomodate IKG

* Close sink opened with openWrite
2017-09-05 10:14:59 -07:00
Alexander Aprelev
364bfa0e6a Fix frontend_server problem with _filename not being set in compile. (#3998)
* Fix problem with _filename not being set. Add tests for that(and add mockito to mock IKG).

* Initialize KernelSerializer, Fix indentation

* Style nits and reworded comment
2017-08-22 11:19:24 -07:00
Alexander Aprelev
c4ac5fe97a Missed one feedback item from https://github.com/flutter/engine/pull/3982 (#3996) 2017-08-21 17:41:16 -07:00
Alexander Aprelev
fe0e123b12 Introduce frontend_server that flutter tools will use for compilation. (#3982)
* Introduce frontend_server that allows for interactive and batch modes.

Example of batch mode:
```
$ dart $HOME/p/f/t11/flutter/engine/src/flutter/frontend_server/bin/server.dart --sdk-root=$HOME/p/f/t11/flutter/engine/src/out/android_debug/flutter_patched_sdk --platform-kernel-dill=$HOME/p/f/t11/flutter/engine/src/out/android_debug/flutter_patched_sdk/platform.dill $HOME/p/f/t11/flutter/flutter/examples/flutter_gallery/lib/main.dart

out: result 79256789-598c-4909-a9e4-0ef36d4c26ba
out: 'State&TickerProviderStateMixin^#U0^' is exported from both 'package:flutter/src/widgets/animated_cross_fade.dart' and 'package:flutter/src/widgets/animated_list.dart'.
...
out: Superclass has no method named 'hitTest'.
out: 79256789-598c-4909-a9e4-0ef36d4c26ba $HOME/p/f/t11/flutter/flutter/examples/flutter_gallery/lib/main.dart.dill
$
```

Example of interactive mode - communication via stdin/stdout:
```
$ dart $HOME/p/f/t11/flutter/engine/src/flutter/frontend_server/bin/server.dart --sdk-root=$HOME/p/f/t11/flutter/engine/src/out/android_debug/flutter_patched_sdk --platform-kernel-dill=$HOME/p/f/t11/flutter/engine/src/out/android_debug/flutter_patched_sdk/platform.dill --incremental

out: Frontend server is ready.
in: compile abc.dart
out: result fd99c0f9-12bb-4083-818e-2521d454fdc8
out: fd99c0f9-12bb-4083-818e-2521d454fdc8 abc.dart.dill
in: accept
in: recompile kuka
in: 123.dart
in: 456.dart
in: kuka
out: result d12f8d05-6c79-44f7-a775-1d3469e1be53
in: quit
$
```

* Add test. Cleanup dependencies.

* One more test with mocks

* Remove platform-kernel option. Refactored CompilerOptions. Clean up comments.

* Update license

* Use Uri.base.resolve consistently. Ensure folder path for sdk root. Fix test.

* Fix main_dart for frontend_server build target

* Reintroduce .packages file, add README.md, revert changes to licenses_flutter

* Run analyzer on frontend-server. Update .packages deps so tests can be run too.

* Add analyzer options file

* Clean up dependencies

* Add frontend_server files to license file back

* Fix comment in analysis_options.yaml

* Run frontend_server tests in travis

* Update licenses

* Change a+x permission on travis/test.sh

* pub get before pub run test

* Fix path to when

* Clarify accept/reject instructions

* Formatting, fixed docs, style

* Update license script to skip .travis.yml, when/example. Update license file.

* Update style nits

* Fix license

* Trim license extracted text. Fix licenses

* Update licenses_third_party signature

* Few more tests

* Update dart license

* Update dart license

* Style changes. Fix return value for Future<Null>
2017-08-21 12:55:17 -07:00