Commit graph

40 commits

Author SHA1 Message Date
Alexandre Ardhuin 5169ab5974
format parameter list (#27261) 2019-02-21 09:27:07 +01:00
Jonah Williams 67cf21577f
Add basic codegen app to be used for integration testing and benchmarks (#27257) 2019-02-14 23:17:16 -08:00
Jonah Williams 537b592ed5 fix multiroot scheme (#27914) 2019-02-13 23:17:28 -05:00
xster 36c5e321a5
Print 50000$ monopoly money (#27531) 2019-02-05 15:00:51 -08:00
Alexander Aprelev 030dc3fade
Don't send accept/reject if compilation never started. (#27319)
* Don't send accept/reject if compilation never started.

Ensure that we wait for reject's response since that is async operation.

Fixes https://github.com/flutter/flutter/issues/27120.

* Fix analysis errors

* Rename flag. Ensure we raise it on first compilation too.
2019-01-31 17:43:32 -08:00
Jonah Williams c219e6f3b1
Inject KernelCompiler via KernelCompilerFactory (#27211) 2019-01-30 08:34:01 -08:00
Jonah Williams 763a8d6d9b
add support to multiroot scheme to PackageUriMapper (#27207) 2019-01-30 07:31:16 -08:00
Jonah Williams 6cf554b0c4
Make UriMapper and StdoutHandler public and add test cases (#26932) 2019-01-24 16:17:04 -08:00
Dan Field 212374f0b7
Fix tests for ANSI terminals (#23906) 2018-11-05 07:56:30 -08:00
Jacob Richman f5f70f0c99
Include .track in file names for cached dill files for builds with --track-widget-creation (#23299)
Ensure that cached dill files for builds with --track-widget-creation
always have .track. in the file name to avoid mixing transformed and
untransformed kernel files.
2018-10-23 10:09:18 -07:00
Greg Spencer 081d2a7a86
Re-land text wrapping/color PR (#22831)
This attempts to re-land #22656.

There are two changes from the original:

I turned off wrapping completely when not sending output to a terminal. Previously I had defaulted to wrapping at and arbitrary 100 chars in that case, just to keep long messages from being too long, but that turns out the be a bad idea because there are tests that are relying on the specific form of the output. It's also pretty arbitrary, and mostly people sending output to a non-terminal will want unwrapped text.

I found a better way to terminate ANSI color/bold sequences, so that they can be embedded within each other without needed quite as complex a dance with removing redundant sequences.

As part of these changes, I removed the Logger.supportsColor setter so that the one source of truth for color support is in AnsiTerminal.supportsColor.

*     Turn on line wrapping again in usage and status messages, adds ANSI color to doctor and analysis messages. (#22656)

    This turns on text wrapping for usage messages and status messages. When on a terminal, wraps to the width of the terminal. When writing to a non-terminal, wrap lines at a default column width (currently defined to be 100 chars). If --no-wrap is specified, then no wrapping occurs. If --wrap-column is specified, wraps to that column (if --wrap is on).

    Adds ANSI color to the doctor and analysis output on terminals. This is in this PR with the wrapping, since wrapping needs to know how to count visible characters in the presence of ANSI sequences. (This is just one more step towards re-implementing all of Curses for Flutter. :-)) Will not print ANSI sequences when sent to a non-terminal, or of --no-color is specified.

    Fixes ANSI color and bold sequences so that they can be combined (bold, colored text), and a small bug in indentation calculation for wrapping.

    Since wrapping is now turned on, also removed many redundant '\n's in the code.
2018-10-10 18:17:56 -07:00
Alexandre Ardhuin 2d3ff10d62
apply lint prefer_void_to_null in packages/flutter_tools (#22686) 2018-10-05 07:54:56 +02:00
Greg Spencer efcd9a8001
Simplify Gradle compiler output. (#21760)
This changes the compiler output for gradle to be less verbose and more easily read.

This only applies to compilation error messages: other gradle messages will continue to print as before.

It also fixes a small problem with the performance measurement printing (see that "7.1s" on it's own line in the original?) so that if something is expected to have multiple lines of output, it prints an initial line, and a "Done" line with the elapsed time, so that it's possible to know what the time applies to.

It also updates the spinner to be fancier, at least on platforms other than Windows (which is missing a lot of symbols in its console font).

Addresses #17307
2018-09-20 15:45:48 -07:00
Alexandre Ardhuin d927c93310
Unnecessary new (#20138)
* enable lint unnecessary_new

* fix tests

* fix tests

* fix tests
2018-09-12 08:29:29 +02:00
xster cda2c223f5
Turn on unawaited_futures in flutter_tools (#21048) 2018-08-30 20:57:44 -07:00
Ian Hickson 53b635817c
Re-enable missing_return (#20844) 2018-08-28 11:22:57 -07:00
Ian Hickson 686d8f8a22 Shim package:test to avoid matcher issues (#20602)
* Upgrade everything except matcher.
* Roll matcher (and test)
* Adjust tests that depend on flutter:test directly to depend on a shim
* Require use of package:test shim and remove other references to package:test
2018-08-14 20:33:58 -07:00
Alexander Aprelev 2828a459f6
Serialize expression compilation requests (#18618)
* Serialize compilation requests.
2018-06-21 11:13:21 -07:00
Alexander Aprelev f11c8d967c
Add compile-expression service. (#16161)
This registers compile-expression service that is used by dart vm to evaluate expressions when debugging flutter applications.
2018-06-05 13:22:13 -07:00
Chris Bracken 7ffcd3d22d
Extract KernelCompiler class (#16937)
Wraps the compile function in a class injected via the global context,
which makes it easier to mock in unit tests -- specifically tests for
AOT snapshotting, which already require pretty significant amounts of
mock inputs.
2018-04-24 14:03:41 -07:00
Alexander Aprelev e0cd42e4ad Roll engine to 76cb311d9c33720dcd19274228b39ecdbad8d9af (with rolled dart) (#16518)
* Handle error count reported by frontend.

Extend compilation result from single string to a structure(string filename and integer error count).

* Use ?.

* Include engine roll with dart sdk roll.

* parse(onError) -> tryParse

* Make '?? throw' more readable and avoid issue with analyzer

* Fix test so it mocks compiler output including errors count
2018-04-12 16:28:01 -07:00
Sam Rawlins 2329cb7ec8 Bump mockito to 3.0.0-alpha+3 (#16306)
* Bump mockito to 3.0.0-alpha+3

* Type annotation
2018-04-09 12:43:31 -07:00
Alexander Aprelev bffae21571
Again move mockito to 300plus2 (#15981)
* Revert "Revert "Move mockito to 3.0.0-alpha. (#15949)" (#15979)"

This reverts commit e59651f925.

* More thenReturn to thenAnswer when mocking Futures

* Revert "More thenReturn to thenAnswer when mocking Futures"

This reverts commit 194d2cf417 as we are reverting engine roll.

* Revert "Revert "More thenReturn to thenAnswer when mocking Futures""

This reverts commit 52c9e96b30.

* Add dependency override

* Fix issue
2018-03-28 12:07:12 -07:00
Alexander Aprelev e59651f925
Revert "Move mockito to 3.0.0-alpha. (#15949)" (#15979)
This reverts commit a7e6225820 as there are failing tests.
2018-03-27 10:38:20 -07:00
Alexander Aprelev a7e6225820
Move mockito to 3.0.0-alpha. (#15949)
* Move mockito to 3.0.0-alpha.

This is needed so it matches mockito version used internally.

* Pick up +2 for the fixes

* Fix whenReturn in fuchsia_remote_debug_protocol

* more thenReturn becomes thenAnswer

* more thenReturn becomes thenAnswer

* more thenReturn becomes thenAnswer
2018-03-27 10:05:16 -07:00
Jason Simmons 1c04f951c8
Warn about missing host build binaries when compiling with a local engine (#15626)
Fixes https://github.com/flutter/flutter/issues/15361
2018-03-19 11:29:20 -07:00
Alexander Aprelev 43284d70d9
Reland filesystem options support with fix for Windows test. (#15655)
* Revert "Revert "Reland pass filesystem options (#15622)" (#15651)"

This reverts commit 0f3eada066.

* Fix for windows failing test

* !isEmpty -> isNotEmpty
2018-03-17 12:47:40 -07:00
Alexander Aprelev 0f3eada066
Revert "Reland pass filesystem options (#15622)" (#15651)
This reverts commit bbcf55a5b0 as it breaks hot reload on Windows.
2018-03-17 08:11:52 -07:00
Alexander Aprelev bbcf55a5b0
Reland pass filesystem options (#15622)
* Revert "Revert "Pass filesystem-root, filesystem-scheme options through `flutter run, build` and gradle. (#15592)" (#15621)"

This reverts commit c663e3367d.

* Check whether filesystem-root is emtpy.

* Restore broken merge

* Fix windows test

* Adjust regex in test. Invalidate files by file path.
2018-03-17 06:49:15 -07:00
Alexander Aprelev c663e3367d
Revert "Pass filesystem-root, filesystem-scheme options through flutter run, build and gradle. (#15592)" (#15621)
This reverts commit 0f659fb10b as it
breaks bin/tasks/gradle_plugin_test.dart.
2018-03-16 12:28:30 -07:00
Alexander Aprelev 0f659fb10b
Pass filesystem-root, filesystem-scheme options through flutter run, build and gradle. (#15592)
* Pass filesystem-root, filesystem-scheme options through flutter run/build/gradle.
2018-03-16 11:16:54 -07:00
Jason Simmons 466d15433f
Use Dart 2 camel case constants (#15360) 2018-03-12 11:06:32 -07:00
Alexander Aprelev e2e3c5df05
Reland 9534082fc0 with fix for incremen… (#14040)
* Reland 9534082fc0 with fix for incremental compilation.

When in incremental mode, awaiting exitCode won't work because compiler is not expected to exit after compilation.
Instead listen for stdout stream closing and report error if outputFilename has not been received.

* Fix lints
2018-01-11 14:33:50 -08:00
Alexander Aprelev 5dc4ce85d9
Revert "Handle abnormal termination of frontend compiler. (#13982)" (#14037)
This reverts commit 9534082fc0.

Causes hot_mode_dev_cycle__preview_dart_2_benchmark test timeout.
2018-01-10 19:54:08 -08:00
Alexander Aprelev 9534082fc0
Handle abnormal termination of frontend compiler. (#13982)
* Check frontend_server exit code.

When frontend_server completes abnormally, flutter tools has to stop and let user know.

* Add tests
2018-01-10 17:51:08 -08:00
Alexander Aprelev 27c61eeb50
Explicitly report CFE output(when using --preview-dart-2) (#13936)
* Explicitly report CFE output(when using --preview-dart-2)

* Fix test so it looks at errorText

* Fix expected text
2018-01-05 18:51:35 -08:00
Alan Russian 30720bd148 Change async stubbing to use thenAnswer. (#13521)
* Change async stubbing to use thenAnswer.

Mockito now prohibits calling thenReturn with Futures and Streams. dart-lang/mockito#79

* Update all Mockito deps to 3.0.0.

* Revert "Update all Mockito deps to 3.0.0."

This reverts commit e8ab9d37c3.

I did not correctly update the mockito dep, and there's no easy way to update to 3.0 alpha right now.

* Change thenAnswer((_) => to thenAnswer((invocation) =>

* Add Invocation type to thenAnswer lambdas
2017-12-19 13:13:57 -08:00
Alexandre Ardhuin 28366002d9 enable lint prefer_foreach (#12674)
* enable lint prefer_foreach

* fix tests
2017-10-25 08:25:44 +02:00
Alexander Aprelev 35c47611b9 Recreate outputFileName completer, handle process launch errors. (#11980)
* Recreate outputFileName completer, handle process launch errors.

* Fix formatting

* Updated comment
2017-09-13 07:33:52 -07:00
Alexander Aprelev c5750cd7ea Introduce --preview-dart-2 option to run new frontend compiler in flutter tools. (#11741)
This adds --preview-dart-2 flag that enables use of Dart 2.0 Frontend in Flutter tools.
2017-08-31 13:35:55 -07:00