Commit Graph

360 Commits

Author SHA1 Message Date
Michael Goderbauer
c9a9c627b6 Remove nasty ANSI workaround for Windows (#8839)
The problem has been fixed upstream in the Dart VM.

This simplifies our setup instructions on Windows (will update the wiki).
Furthermore, this also means that going forward there is no diffrence between PowerShell and Cmd for the Flutter experience on Windows.
2017-03-16 18:04:14 -07:00
Michael Goderbauer
2291a56842 Remove support for function keys. (#8840)
Function keys don't work great on any platform we support:
* Mac doesn't have first-class function keys.
* On Ubuntu: F1 opens the system help and F10 opens the file dialog.
* ... and Windows is a mess as well.
2017-03-16 18:00:21 -07:00
Michael Goderbauer
0550c2f021 Remove workaround for SIGINT (#8834)
It's no longer needed with the latest Dart SDK roll.
2017-03-16 15:10:20 -07:00
Michael Goderbauer
d87f19817f devicelab benchmarks run on Windows (#8814)
* devicelab benchmarks run on Windows

* fix analyzer issue

* fix test

* fix pubspec
2017-03-15 16:33:10 -07:00
John McCutchan
4c91b6e725 Stop using package:stack_trace and Chain.capture (#8803)
- [x] Don't use package:stack_trace.
- [x] Don't use Chain.capture.
- [x] Fix an instance of aggressive catching of exceptions

Related #8742
2017-03-15 15:39:01 -07:00
Alexandre Ardhuin
2166ea5b7f apply partially the upcoming unnecessary_lambdas (#8810) 2017-03-15 23:09:58 +01:00
Michael Goderbauer
15330ffbc4 Make ProcessSignals portable (#8779)
* Make ProcessSignals portable

This removes the need to wrap unsupported signals with in `if (!platform.isWindows) ..`.

It also allows us to implement a work around for breaking the Windows console when flutter is exited with Ctrl+C.

* review comments

* adding tests

* add license header
2017-03-15 11:28:14 -07:00
Todd Volkert
1b4f817b0c Make tests more hermetic. (#8765)
1. Add `PortScanner` abstraction so that we don't do actual port scanning
   in tests.
2. Don't change the real `cwd` of the isolate during tests, as it affects
   all tests, not just the current running test.

Fixes #8761
2017-03-14 10:28:56 -07:00
John McCutchan
31dc3c4722 Try all possible Android SDK locations before giving up (#8730)
Fixes #8618
2017-03-13 11:21:34 -07:00
Todd Volkert
83d411f979 Change flutter_tools tests to run via pub (#8698)
`all.dart` is no longer needed. Furthermore, it causes tests to
be skipped, or to silently fail to run anything.

Fixes #7941
2017-03-10 09:39:01 -08:00
Jakob Andersen
60c0c3d323 Revert "Eliminate CocoaPods install step (#8694)" (#8705)
* Revert "Eliminate CocoaPods install step (#8694)"

This reverts commit f4a13bc72b.

If the developer is relying on CocoaPods and hasn't done a pod install, we will do it for them. This is needed for a smooth native plugin experience, similar to what Gradle is doing on the Android side.

There's no hard dependency on CocoaPods. We only run pod install if the project uses CocoaPods, so developers are still free to use alternatives if they prefer (and if they don't want to use native plugins).

Fixes #8685
Fixes #8657
Fixes #8526

* Require CocoaPods 1.0.0 or newer.

And make sure we don't get a crash if running `pod install` fails.

* Address review feedback
2017-03-10 13:43:57 +01:00
Chris Bracken
f4a13bc72b Eliminate CocoaPods install step (#8694)
If the developer is relying on CocoaPods and hasn't done a pod install,
they'll get a build failure indicating the issue.

This also avoids a hard dependency on CocoaPods in the tool and allows
developers to customize their Xcode steps to use alternatives such as
Carthage if they prefer.
2017-03-09 17:57:45 -08:00
Todd Volkert
1ada132ee8 Add first replay test (#8628) 2017-03-09 12:58:31 -08:00
Jakob Andersen
a4883de38f Run 'pod install' before building iOS app. (#8609)
Since iOS builds are CocoaPods enabled by default, we should make sure to run `pod install` to get pods wired up before building the app.

Also added a check to `flutter doctor` to verify CocoaPods is installed.

I'm passing FLUTTER_FRAMEWORK_DIR to the `pod install` command, so we can have the app's Podfile link in Flutter.framework as a pod instead of having to copy it over in xcode_backend.sh.
2017-03-07 20:34:38 -08:00
Todd Volkert
3d079414ad Record/replay test infrastructure. (#8597)
This adds the test harness for record/replay tests.
2017-03-07 10:13:40 -08:00
John McCutchan
24eeddc053 Request the user upgrade if the Android SDK version is 24 (#8462)
* Request the user upgrade if the Android SDK version is 24

* Update android_sdk_test.dart

* Update android_sdk.dart
2017-03-06 18:20:04 -08:00
Todd Volkert
aac8762a7a Properly handle ProcessExit being thrown when exit() is called (#8592) 2017-03-06 13:23:03 -08:00
Todd Volkert
011a9026e4 Create and use a STILL_RECORDING shutdown stage (#8588) 2017-03-06 12:02:24 -08:00
Chris Bracken
7a09316cd0 Declare locals final where not reassigned (flutter_tools) (#8570) 2017-03-03 17:50:46 -08:00
Michael Goderbauer
ae1a719e03 fix FLUTTER_ANSI_TERMINAL check (#8544)
* fix FLUTTER_ANSI_TERMINAL check

should have been included in the previous PR :(

* review comments
2017-03-02 16:25:33 -08:00
Michael Goderbauer
1f7b8ae11f Enable ANSI codes in PowerShell (#8537) 2017-03-02 13:09:36 -08:00
Michael Goderbauer
99ca38e988 make use of Dart's new capability to print Unicode on Windows (#8505) 2017-03-01 13:15:48 -08:00
Todd Volkert
f60410fa9d Add --bug-report flag (#8435)
This adds support for a `--bug-report` flag, which is a recording
that:
  - includes the arguments that were passed to the command runner
  - is zipped up for easy attachment in Guthub issues
2017-02-27 15:38:47 -08:00
Jakob Andersen
7f9a53b136 Relax Android Studio version check. (#8389)
It's not just $HOME/.AndroidStudio2.2, it might also be
.AndroidStudioPreview2.3, or .AndroidStudioFooBar1.7, or whatever.

Made the Version parser less throw-happy, and relaxed the directory name
checks to allow for the above.

Fixes #8353.
2017-02-24 11:59:59 +01:00
Alexandre Ardhuin
8c043d06de fix lints for directives_ordering rule (#8382) 2017-02-23 13:37:26 -08:00
Todd Volkert
a68c979b73 Add ability to record & replay VMService connection (#8355) 2017-02-23 10:05:00 -08:00
Jakob Andersen
3676ffe477 Fix bug parsing Gradle version. (#8326)
* Fix bug parsing Gradle version.

Version from pub_semver requires versions of the format X.Y.Z. Gradle
doesn't follow semantic versioning, though, so version parsing would
fail on versions like '3.2'. Fixed by writing a custom Version class.

Also removed a check for apksigner when building Gradle-based projects.

Fixes #8298
2017-02-22 11:53:32 +01:00
Todd Volkert
0d2c9670fd Resolve TODOs to migrate from OperatingSystemUtils to Platform (#8314) 2017-02-21 15:11:49 -08:00
Michael Goderbauer
ac7954c11a Migrate from touch cmd to dart's built-in API (#8313)
This enables us to run more tests on Windows.
2017-02-21 15:11:37 -08:00
Alexandre Ardhuin
2888139c6b prefer const constructor (#8292) 2017-02-20 14:07:16 -08:00
Michael Goderbauer
071efec271 Implements WindowsStdoutLogger (#8189)
Replaces unprintable characters with alternative symbols.
2017-02-15 13:20:17 -08:00
Michael Goderbauer
5e54fd54d9 Ban package:path from Flutter Tools (#8119) 2017-02-13 17:45:50 -08:00
Todd Volkert
9c05c345c7 Enable record/replay of file system activity and platform metadata (#8104) 2017-02-13 13:59:29 -08:00
Todd Volkert
3b52c87da6 Bump deps on package:file and package:process (#8097) 2017-02-13 09:55:54 -08:00
Michael Goderbauer
cff7dc5444 Bump package:process version (#8073) 2017-02-10 16:54:51 -08:00
Devon Carew
5caeb3ff32 use the intl package (#8060) 2017-02-10 09:36:04 -08:00
xster
1cc78145fe Add logger indent option and indent nested xcode command outputs (#7867)
* Add indent option to logger and indent non-flutter nested output

* Add a missed override

* Formatting
2017-02-08 18:27:47 -08:00
Devon Carew
d89f438699 improve the logger ui a bit for elapsed times (#7960)
* improve the logger ui a bit for elapsed times

* invert param

* update daemon.dart
2017-02-08 08:25:36 -08:00
Chris Bracken
c7054b302b Improved ensureDirectoryExists error message (#7880) 2017-02-03 18:09:07 -08:00
Chris Bracken
165e96e214 Exit with error message if ensureDirectoryExists fails (#7874)
If ensureDirectoryExists fails -- e.g. because a file file of the same
name as the directory to be created exists, ensure that we exit cleanly
with a useful error message.
2017-02-03 17:34:12 -08:00
Michael Goderbauer
84de5e815d Work around for dart-lang/sdk#28599 (#7786) 2017-02-01 13:39:19 -08:00
Ian Hickson
a67c79a1c7 converge flutter run and flutter drive onto one behavior (#7688)
...for the port arguments
2017-01-26 21:47:14 -08:00
Ian Hickson
19d22c9726 Make devicelab count as a bot so we can see crash logs (#7687) 2017-01-26 20:17:40 -08:00
Ian Hickson
576b4e1179 Change --debug-port to --observatory-port (#7675)
...and add --diagnostic-port.

...and document port 0.
2017-01-26 16:42:48 -08:00
Todd Volkert
417c2f25fc Migrate flutter_tools to use package:platform (#7642) 2017-01-25 16:06:41 -08:00
xster
ee97e5639e Change file system copy folder to copy directory (#7624)
* Change file_system’s copy folder to copy director which takes into account the file system

* Address review comments.
Test with 2 different instances of file systems.
2017-01-25 11:41:48 -08:00
Michael Goderbauer
aaaf0dac19 Teach Flutter Tools about IntelliJ and Android SDK on Windows. (#7622)
Required for https://github.com/flutter/flutter/issues/138
2017-01-24 16:53:20 -08:00
Todd Volkert
9ba607862e Update to package:process v1.0.1 (#7607) 2017-01-24 10:09:29 -08:00
Todd Volkert
03d163ce88 Update tools to use package:process (#7590) 2017-01-23 09:46:38 -08:00
Ian Hickson
63aa1397a3 Increase the strictness of our requiring explicit types (#7585)
...now that we have generic methods, their types need to be specified too.
2017-01-23 01:04:31 -08:00
Ian Hickson
15a7eb3b6c Move to real generic method syntax (#7235) 2017-01-21 20:58:44 -08:00
Todd Volkert
5a3bae9eed Catch another ignorable errno in setting stdin.lineMode (#7563) 2017-01-20 14:00:12 -08:00
Todd Volkert
55beaef743 Ignore only ENOTTY when setting stdin.lineMode (#7472) 2017-01-12 16:14:37 -08:00
Devon Carew
7f2915d331 ignore exceptions from stdin.lineMode (#7439)
* ignore exceptions from stdin.lineMode

* only catch IOException
2017-01-11 10:54:42 -08:00
Todd Volkert
a0666f330e Update Process.exitCode setter to not use @override (#7434)
As of Dart SDK 1.22.0-dev.5.0, `Process.exitCode` is no longer
mutable (that SDK version picks up e5a16b1ca5).
This change allows the tools code to pass analysis in sdk versions both
before and after that change, to allow for analysis against both the host and
target sdks.
2017-01-10 21:33:04 -08:00
Todd Volkert
1ccbf8f00d Use FileSystem.pathSeparator instead of Platform.pathSeparator (#7417) 2017-01-10 13:17:20 -08:00
Todd Volkert
016b5ab0cc Force all dart:io usage to go through 'base/io.dart' (#7390)
This ensures that accidental usages of dart:io's
file API don't creep in over time.
2017-01-09 08:37:00 -08:00
Todd Volkert
8bb270342e Update flutter_tools to use package:file throughout (#7385)
This removes direct file access from within flutter_tools
in favor of using `package:file` via a `FileSystem` that's
accessed via the `ApplicationContext`.

This lays the groundwork for us to be able to easily swap
out the underlying file system when running Flutter tools,
which will be used to provide a record/replay file system,
analogous to what we have for process invocations.
2017-01-06 16:51:44 -08:00
Todd Volkert
1c43c4e24d Bump package:file version to 1.0.0 (#7371) 2017-01-05 18:42:57 -08:00
Todd Volkert
69bcfc082f Minor touch-ups in ProcessManager impls (#7196) 2016-12-08 09:51:05 -08:00
Todd Volkert
622e4396c9 Add tests for nested contexts (#7197)
This tests against the failure that was fixed in #7189
2016-12-08 09:39:32 -08:00
Todd Volkert
1155f96651 Add tests for process_manager.dart (#7178) 2016-12-07 21:03:58 -08:00
Todd Volkert
a4f2ad984d Fix context.dart to properly handle nested zones (#7189)
This fixes an infinite loop in the code that walks the parent
context chain looking for a variable.

This also includes a fix in build_info.dart whereby if the context
is set but the config is not yet set, we were trying to dereference
null.
2016-12-07 19:51:27 -08:00
Todd Volkert
7536404b20 Add --replay-from argument to Flutter tools (#7146)
This argument will enable mocking of os-layer process invocations,
where the mock behavior will come from replaying a previously-
recorded set of invocations. At the point of process invocation,
the key metadata for the invocation will be looked up in the
recording's manifest, and iff a matching record exists in the
manifest, the process will be mocked out with data derived from
the corresponding recorded process (e.g. stdout, stderr, exit code).
2016-12-06 10:09:00 -08:00
Todd Volkert
c9e7782adb Add --record-to option to flutter tools (#7136)
* Add --record-to option to flutter tools

This option will cause flutter tools to record all process
invocations that occur and serialize their stdout and stderr
to files that get added to a "recording" ZIP file. This is
part of an effort to be able to test flutter tools in a hermetic
environment.

As a side-benefit, this recording should prove an excellent
attachment to any bug report.
2016-12-02 13:39:54 -08:00
Todd Volkert
60b19b2035 Create abstraction layer for dart:io's Process commands (#7100)
With this change, they're run via instance methods on an object
obtained through the context. This will allow us to substitute
that object in tests with replay/record versions to allow us to
mock out the os-layer in tests.
2016-11-30 08:42:42 -08:00
John McCutchan
618030e044 More AppContext cleanups (#7073) 2016-11-29 11:22:48 -08:00
John McCutchan
0b737ac57b Remove default AppContext and cleanup globals (#6999) 2016-11-29 07:54:20 -08:00
Devon Carew
15ea399fdd add identifiers to progress messages (#6868) 2016-11-15 12:13:56 -08:00
Dan Rubel
34e466f1fd Refactor flutter command exit code - part 3 of 3 (#6838)
* Remove the workaround that pinned args to v0.13.6
This reverts most of the changes in commit 6331b6c8b5
* throw exception if exit code is not an integer
* rework command infrastructure to throw ToolExit when non-zero exitCode
* convert commands to return Future<Null>
* cleanup remaining commands to use throwToolExit for non-zero exit code
* remove isUnusual exception message
* add type annotations for updated args package
2016-11-14 14:21:30 -05:00
Dan Rubel
e384c0d982 Refactor flutter command exit code - part 2 (#6817)
* convert pubGet to throw ToolExit on non-zero exit code
* convert commandValidator to throw ToolExit for non-zero exit code
* convert flutter commands to throw ToolExit for non-zero exit code
* use convenience method throwToolExit
* only show "if this problem persists" for unusual exceptions
2016-11-13 22:09:03 -05:00
Dan Rubel
cccd917ac2 Refactor flutter command exit code - part 1 (#6803)
* convert flutter commands to use ToolExit for non-zero exit code
* add convenience method throwToolExit
* print ToolExit message iff not null
2016-11-11 10:42:09 -05:00
Dan Rubel
fb03b3137e Improve error message if update cache interrupted during download (#6740) 2016-11-08 08:02:06 -05:00
Ian Hickson
04e7446b2b Make the fire red on black-and-white terminals (#6748) 2016-11-07 15:48:50 -08:00
Jason Simmons
54d76518ac Continue showing status messages after a startProgress completes (#6720) 2016-11-05 22:47:33 -07:00
Devon Carew
fcfb2a5c55 Better progress (#6677)
* make showElapsedTime default to true

* support nested progresses

* improve hot reload message

* rethrow
2016-11-03 13:28:17 -07:00
John McCutchan
594c4f998a Only synchronize used Dart sources to DevFS. (#6668)
- [x] Remove the second full-sync on startup.
- [x] Always invoke the snapshotter to determine the minimal set of Dart sources used.
- [x] Only synchronize the *used* Dart sources to DevFS.
- [x] Detect syntax / file missing errors on the host and gate reloads / restarts.
2016-11-03 15:19:57 +01:00
Jason Simmons
5a9b8b77e5 Do not print the output of the package dependency tool during hot reload (#6494) 2016-10-24 16:07:29 -07:00
Wyatt Arent
0838ef7d0b logger use milliseconds instead of seconds for reporting elapsed time (#6487)
* logger use milliseconds instead of seconds for reporting elapsed time (#5400)

* Update authors (#5400)

* Remove unnecessary comment
2016-10-23 09:54:08 -07:00
Jason Simmons
022cb2d9dc Do not buffer logs in the verbose logger (#6465)
With the old policy the most recent log would not be printed until the next
log is produced (which may be indefinitely).  This change prints logs
immediately along with a time delta since the previous log.
2016-10-21 16:54:59 -07:00
Todd Volkert
904d524313 Add support for --use-application-binary on iOS (#6318)
Fixes #6283
2016-10-13 16:17:50 -07:00
Dan Rubel
e20ee045ba Flutter doctor detect IntelliJ on Mac (#6262)
* cleanup obtaining user home directory path
* refactor doctor and detect IntelliJ on Mac
* fix detect Flutter plugin for IntelliJ
2016-10-13 10:44:20 -04:00
Devon Carew
8f0f19a5e2 increase the port check iteration count (#6301) 2016-10-12 23:48:08 -07:00
Dan Rubel
7745dd73c7 improve flutter tool error message for download problems (#6238) 2016-10-06 17:49:14 -04:00
Devon Carew
d9bbd2fb53 make app ids more unique (#6113)
* make app ids more unique

* in-line the uuid class
2016-09-28 11:18:05 -07:00
Devon Carew
fa52b456ec set the FLUTTER_ROOT env var when invoking pub (#6041) 2016-09-25 19:30:44 -07:00
Dan Rubel
678da3ac2b cancel open subscription (#5824)
fixes https://github.com/flutter/flutter/issues/5788
2016-09-12 16:32:08 -04:00
Ryan Macnak
fa8dc5f88b Do not truncate commands, this inhibits reproduction. (#5607) 2016-08-26 14:48:21 -07:00
Dan Rubel
194a9ef3c9 implement flutter packages get/upgrade command (#5603)
* implement flutter packages get/upgrade command
* alias flutter pub
* refactor findProjectRoot for use by multiple commands

fixes https://github.com/flutter/flutter/issues/4994
2016-08-25 22:37:48 -04:00
Chris Bracken
b5f763b45e Support a configurable build directory (#5601)
This change adds a top-level getBuildDirectory func and funcs for
android, aot, asset, ios build products.

Developers may now add a "build-dir" mapping to their
~/.flutter_settings (JSON format) config file. Output directory is
relative to the main flutter application directory.

This change also changes the default build directory for iOS builds to a
subdirectory of the configured build directory, 'build/ios' by default.
2016-08-25 16:38:19 -07:00
Dan Rubel
5f7af56f3e modify runCommandAndStreamOutput to wait until stdout (#5596)
has been fully processed before completing the returned future.
This helps prevent tests that rely on stdout from being flaky.
2016-08-25 14:55:54 -04:00
Devon Carew
74446d78fc don't resolve symlinks as part of which (#5531)
* don't resolve symlinks as part of which

* update method dartdoc
2016-08-22 14:35:19 -07:00
Devon Carew
53dd5dbd0d print more logging info when tracing (#5419) 2016-08-17 08:19:52 -07:00
Devon Carew
24f63e2b44 show better errors for gradle build failures (#5374) 2016-08-13 12:30:14 -07:00
John McCutchan
b314fa5979 Add time to frame tracking to hot run (#5316) 2016-08-10 14:02:44 -07:00
John McCutchan
4c1dde8d67 Add a control pipe that can trigger reloads / restarts (#5282) 2016-08-09 07:11:24 -07:00
Ian Hickson
d7fb51a551 Hot reload UI polish (#5193)
* General improvoments to the loader app:
   * Show a message after 8 seconds if no connection comes in.
   * Show a progress bar as files are being uploaded.
   * Hide the spinner just before launching the application.

* General improvements to the "flutter run" UI:
   * Add "?" key as a silent alias for "h".
   * Make the help text bold so it doesn't get mixed with the logs.
   * Make "R" do a cold restart when hot reload is enabled.

* Supporting features and bug fixes:
   * Add support for string service extensions.

* Other bug fixes:
   * Expose debugDumpRenderTree() outside debug mode.
   * Logger.supportsColor was missing a getter.
   * Mention in the usage docs that --hot requires --resident.
   * Trivial style fixes.
2016-08-02 16:52:57 -07:00
Devon Carew
57b76a050f Hello services run (#4969)
* making flutter run work with gradle

* locate android studio

* add test for settings

* review comments
2016-07-19 20:00:02 -07:00
Adam Barth
10931af0d3 Simplify coverage workflow (#4725)
We now download the base coverage file automatically.
2016-06-23 16:31:25 -07:00
Ian Hickson
0d21e69b1d Fix flutter upgrade and flutter build ios (#4564)
* Fix `flutter upgrade`

* Fix builds on iOS
2016-06-14 18:16:55 -07:00
Todd Volkert
2099d3789c Pull iOS build templates from flutter tools vs engine artifacts (#4526) 2016-06-13 12:30:08 -07:00
Ian Hickson
c9bcf1074e Analyzer was confused when you deleted files (#4528)
Also, make it clear the screen between results so it's more obvious
what's going on when you have new results (especially when you have
fixed everything).
2016-06-13 12:20:03 -07:00
Devon Carew
3ba17136b7 add a restart command to the daemon protocol (#4385)
* refactor the --resident run option into a separate file

* update daemon to run --resident apps

* re-plumbing daemon start

* send app logs

* update tests

* review changes

* fix test runner

* remove PackageMap.createGlobalInstance; rely on the ctor

* review comments
2016-06-07 12:13:35 -07:00
Chinmay Garde
68ba5bfd7c Suppress verbose output from ios-deploy when not in verbose mode. (#4423) 2016-06-07 12:02:08 -07:00
Devon Carew
26076d9efd Update utils.dart (#4364) 2016-06-03 13:21:16 -07:00
Eric Seidel
4c86b73027 wip 2016-06-02 14:17:21 -07:00
Devon Carew
7c47837c27 show build progress; print app sizes (#4263)
* show build progress; print app sizes

* add todo

* review comments

* remove unused import
2016-05-29 15:07:41 -07:00
Devon Carew
ec7517766c Flutter run restart (#4105)
* working on making a faster flutter run restart

* clean up todos; fire events on isolate changes

* use the Flutter.FrameworkInitialization event

* review comments
2016-05-26 15:26:14 -07:00
Devon Carew
d6aed1e7c9 add a --quiet option to flutter_tools (#4213) 2016-05-26 13:41:29 -07:00
Todd Volkert
239a717dcc Revert "Pass the local engine config through Xcode (#4190)"
This reverts commit 8f69cccc18.
2016-05-26 11:03:08 -07:00
Devon Carew
9cfa96608c dissallow -release mode on emulators (#4204)
* dissallow -release mode on emulators

* have the help text print the default mode
2016-05-26 09:14:51 -07:00
Adam Barth
8f69cccc18 Pass the local engine config through Xcode (#4190)
This passes the information through Xcode to the `flutter build aot` call via
the environment so that it picks up the right artifacts.

Fixes #4186
2016-05-25 14:33:22 -07:00
Devon Carew
cc5d1adcfc handle an exit code from android n (#3914)
* handle an exit code from android n

* review comments
2016-05-13 16:47:30 -07:00
Devon Carew
40c0d6ea12 Consolidate observatory code (#3892)
* rename service_protocol.dart to protocol_discovery.dart

* add a wrapper around the obs. protocol

* use json-rpc in run

* consolidate obs. code; implement flutter run --benchmark

* review comments
2016-05-12 18:15:23 -07:00
Devon Carew
826936cd33 use vendored dart sdk; check the expected version of flutter (#3831)
* use vendored dart sdk; check the expected version of flutter

* search up directories looking for the flutter root
2016-05-10 16:21:30 -07:00
Devon Carew
067715e302 Send exit for flutter run --resident (#3829)
* send ext.flutter.exit

* listen for help restart, quit

* refactor into a separate class
2016-05-10 13:47:00 -07:00
Devon Carew
bd564a02af avoid sending analytics on ci systems (#3765)
* avoid sending analytics on ci systems

* review comments
2016-05-05 19:51:22 -07:00
Devon Carew
c9010c91f6 fix analysis errors (#3677)
* fix analysis errors

* review comments; fix test

* re-add an export for debugPrint
2016-05-03 09:09:00 -07:00
Devon Carew
99114cd414 show more errors on missing jarsigner (#3626) 2016-04-28 22:48:01 -07:00
Yegor
c2cccc7b3b [tools] teach flutter run to get startup trace info (#3589) 2016-04-27 17:58:20 -07:00
Devon Carew
b0dca79671 Flutter run (#3553)
* rework flutter run

* fix npe with --debug-port

* connect to obs and exit when that conneciton closes

* update todos
2016-04-27 14:43:42 -07:00
Devon Carew
ace1a64bfd don't print installing device twice (#3520) 2016-04-25 09:25:47 -07:00
Devon Carew
dd2bde1918 add a service extension for repaint rainbow (#3409)
* add a service extension for repaint rainbow

* review comments
2016-04-19 12:57:10 -07:00
Phil Quitslund
246a2cb055 Merge pull request #3375 from pq/sdk_opt
Analyze CLI option to specify a custom Dart SDK.
2016-04-18 09:44:05 -07:00
pq
26519aab23 Fixed spacing. 2016-04-18 09:25:17 -07:00
pq
4ff0e842e2 Analyze CLI option to specify a custom Dart SDK.
Handy for testing against specific local SDK builds.

(Note that the option is hidden.)
2016-04-18 09:03:31 -07:00
Devon Carew
12cac94cda Use arm deploy (#3374)
* download android-arm-deploy

* wire up --deploy to android-arm-deploy

* fix interpolation
2016-04-18 09:01:43 -07:00
Devon Carew
f132acaf1d use the new cache code to locate more artifacts (#3361)
* use the new cache code to locate more artifacts

* add todo

* review comments
2016-04-15 21:08:03 -07:00
Devon Carew
b4173e20d4 fix to showing a progress display for long tasks (#3265) 2016-04-12 08:39:24 -07:00
Devon Carew
2a33e3f0c0 make flutter upgrade less verbose (#3237)
* more terse flutter upgrade

* fix an issue when updating and the engine update code has changed

* call flutter precache; add a --no-color hidden option

* fix a lint related to getters/setters
2016-04-11 11:17:09 -07:00
Devon Carew
7ad1e38eac Fix windows crash (#3236)
* better messaging about windows support

* fix lints
2016-04-11 08:34:01 -07:00
Devon Carew
a729b02f1a move the engine download code to dart (#3180)
* move the engine download code to dart

* fix populating the bin/cache/pkg dir
2016-04-07 13:31:44 -07:00
Jason Simmons
9d022ed26d Add a command that can capture a Skia picture of a Flutter frame and send it to a file or skiaserve debugger (#3165) 2016-04-07 12:33:11 -07:00
Devon Carew
34a67329fd use --no-precompile (#3175)
* use --no-precompile

* use the flutter bin cache's sdk
2016-04-07 11:06:38 -07:00
Devon Carew
40598449ad add cache.dart to help manage the cache dir (#3168)
* add cache.dart to help manage the cache dir

* sp
2016-04-07 09:15:58 -07:00
Devon Carew
15b9e1ddb0 add a screenshot command 2016-03-25 22:01:32 -07:00
Devon Carew
2fc8e9a110 create a crash report 2016-03-25 13:29:15 -07:00
Ian Hickson
87eb34240b Port to crypto 0.9.2 2016-03-22 21:54:34 -07:00
Hixie
797e27edd3 Add @override annotations to flutter framework 2016-03-14 14:02:26 -07:00
Ian Hickson
d745e20853 Even more types 2016-03-14 09:41:54 -07:00
Devon Carew
e939b152af rename the platform constants 2016-03-12 11:08:21 -08:00
John McCutchan
8803cecea1 Refactor DeviceLogReader 2016-03-08 10:38:22 -08:00
Devon Carew
4c569195f1 clean the project names used for flutter create 2016-03-02 12:36:37 -08:00
Devon Carew
4d93c376c9 improve verbose output 2016-02-27 23:36:02 -08:00
Devon Carew
4e10bf596c improve startup time 2016-02-27 08:19:19 -08:00
Yegor Jbanov
677e63b79d decouple flutter drive from flutter start
flutter start's method of finding devices to run the app on is not suitable for flutter drive.

This commit also refactors several tool services to allow mocking in unit tests.
2016-02-26 10:18:24 -08:00
Devon Carew
37290d866e additional validation for device commands 2016-02-24 11:11:23 -08:00
yjbanov
278630e688 "flutter create" can generate a basic driver test
"flutter create" adds option `--with-driver-test` that adds
dependencies to `flutter_driver` in `pubspec.yaml` and creates
a basic driver test runnable via `flutter drive
--target=test_driver/e2e.dart`

"flutter drive" new options:

- `--keep-app-running` tells the driver to not stop the app after tests
  are done
- `--use-existing-app` tells the driver to not start a new app but use
  an already running instance
2016-02-22 17:10:31 -08:00
Devon Carew
67046f933d add the ability to start and stop device polling 2016-02-20 22:00:11 -08:00
yjbanov
a2b1bd4673 "flutter drive" command
Runs a test app and a driver test simultaneously, then stops the app.

Usage:

```
flutter drive --target=/path/to/test/app.dart
```

This command will look for `/path/to/test/app_test.dart` by
convention. We will expand into other ways of discovering tests in the
future.
2016-02-19 18:11:53 -08:00
Devon Carew
d5a6fceee5 add a summary option to the doctor class 2016-02-17 09:33:45 -08:00
Devon Carew
7ae6f7f391 make the ios development path less mandatory 2016-02-17 00:38:47 -08:00
Devon Carew
dcf0b7bae6 allow any android sdk version 2016-02-13 14:37:41 -08:00
Devon Carew
2dbceafbc6 introduce globals scoped to the app's context 2016-02-09 22:03:13 -08:00
Devon Carew
b780c07622 add --start-paused,--debug-port flags 2016-02-02 11:38:56 -08:00
Devon Carew
78e05884ed refactor flutter logs 2016-02-01 12:56:46 -08:00
Devon Carew
d631ebe597 fix a regex in the ios logs command
fixed sub-process stdout parsing; added todos
2016-01-30 22:48:28 -08:00
Devon Carew
d7fbf5302d use status(), error(), and trace() for logging
rename to printTrace(), printStatus(), and printError()
2016-01-28 12:44:17 -08:00
Ian Hickson
4fe10dbf7e Refactor listen in terms of start.
Fixes #1034, at least for start and listen.
2015-12-28 17:57:47 -08:00
Adam Barth
9662d49e12 Clean up code organization in flutter_tools
1) Moved basic utility code into base/ directory to make it clear which code
   doesn't depend on Flutter-specific knowldge.
2) Move the CommandRunner subclasses into a runner/ directory because these
   aren't commands themselves.
2015-11-28 21:16:55 -08:00