Commit Graph

566 Commits

Author SHA1 Message Date
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
pq
543f705adb Cleanup empty statements.
The new `empty_statements` lint (in the next DEV roll), flags these empty statements.  Harmless, except the one in `basic.dart` that fixes a real-life bug. :)
2016-06-28 13:42:22 -07:00
Adam Barth
41d6303570 Improve test coverage for material.dart (#4776)
Previously these widget had zero test coverage. Also, improve the
coverage tooling Mac.
2016-06-28 08:48:48 -07:00
Devon Carew
6cdfd86ad1 send the reload source command for ios simulators (#4731)
* send the reload source command for ios simulators

* review changes

* rewrite w/ a completer
2016-06-24 10:26:43 -07:00
Devon Carew
aa364a082d don't rewrite the console in non-ansi mode (#4735) 2016-06-24 09:56:04 -07:00
Adam Barth
46da9e8498 Add a simple way of merging coverage data (#4726)
`flutter test` now has a `--merge-coverage` flag that can be used to merge
coverage data from previous runs, enabling faster iteration cycles.
2016-06-23 18:02:55 -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
Todd Volkert
e91f3eef46 Don't uninstall before installing in flutter run (#4699)
#4672
2016-06-22 15:43:57 -07:00
Adam Barth
b094fa6dd3 Add support for --coverage to flutter test (#4679)
We need https://github.com/dart-lang/coverage/issues/100 to be fixed before
this will be useful.

Fixes #2342
2016-06-22 12:22:01 -07:00
Jason Simmons
c823acc345 Pass a package map to gen_snapshot instead of a packages symlink directory (#4666) 2016-06-21 13:47:24 -07:00
Ian Hickson
e502e9c8f8 ImageIcon (#4649)
Anywhere that accepted IconData now accepts either an Icon or an
ImageIcon.

Places that used to take an IconData in an `icon` argument, notably
IconButton and DrawerItem, now take a Widget in that slot. You can wrap
the value that used to be passed in in an Icon constructor to get the
same result.

Icon itself now takes the icon as a positional argument, for brevity.

ThemeData now has an iconTheme as well as a primaryIconTheme, the same
way it has had a textTheme and primaryTextTheme for a while.

IconTheme.of() always returns a value now (though that value itself may
have nulls in it). It defaults to the ThemeData.iconTheme.

IconThemeData.fallback() is a new method that returns an icon theme data
structure with all fields filled in.

IconTheme.merge() is a new constructor that takes a context and creates
a widget that mixes in the new values with the inherited values.

Most places that introduced an IconTheme widget now use IconTheme.merge.

IconThemeData.merge and IconThemeData.copyWith act in a way analogous to
the similarly-named members of TextStyle.

ImageIcon is introduced. It acts like Icon but takes an ImageProvider
instead of an IconData.

Also: Fix the analyzer to actually check the stocks app.
2016-06-20 21:04:45 -07:00
Adam Barth
2ce57eb3ce Fix paths again (#4589)
I got confused about the sdk_ext directory.
2016-06-16 09:37:10 -07:00
Adam Barth
fc77bfe630 Attempt to fix AOT build (#4587)
I moved dart_ui.dart to an new path and forgot to update this reference.
2016-06-16 09:05:04 -07:00
Devon Carew
fc47909e9f send application files to the observatory's devfs (#4572)
* send application files to the observatory's devfs

* update comment
2016-06-15 09:29:23 -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
Ian Hickson
294376fb01 fix reentrant locking in pub upgrade (#4556) 2016-06-14 12:39:20 -07:00
Ian Hickson
f92f71feb9 Lock flutter tool while updating artifacts (#4476)
This prevents multiple simultaneous runs of the analyzer from stomping
over each other (e.g. multiple runs of 'update-packages'). Certain
long-lived commands (like analyze, run, logs) are exempted once they've
done enough work to be safe from most stomping action.

This still doesn't make us entirely safe from craziness, e.g. if you're
half way through an 'update-packages' run and you call 'git pull', who
knows what state you'll end up in. But there's only so much one can do.

Fixes https://github.com/flutter/flutter/issues/2762
2016-06-14 10:16:08 -07:00
Ian Hickson
2cdda9e679 Provide a way to save the analyzer results to disk (#4541) 2016-06-13 13:29:10 -07:00
Devon Carew
b6c3ae37f6 send supportsRestart flag when starting an app (#4513)
* send supportsRestart flag when starting an app

* remove unused imports

* review comments
2016-06-13 13:16:20 -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
Todd Volkert
d2ee6f7838 Rename app.so -> app.dylib (#4522) 2016-06-10 16:57:21 -07:00
Devon Carew
1ff3a2a039 show progress while running the analysis server (#4525) 2016-06-10 16:39:43 -07:00
Jason Simmons
484c36f145 Set the android:debuggable flag when building an APK in debug mode (#4523)
See https://github.com/flutter/flutter/issues/4438
2016-06-10 16:06:12 -07:00
Devon Carew
b5c8f2a43f print stack traces from the analysis server (#4507) 2016-06-10 06:48:16 -07:00
Devon Carew
fcd68c8a21 Support route (#4470)
* support --route in flutter run --resident

* also for the daemon app.start command
2016-06-08 13:44:54 -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
Devon Carew
6c96e1a320 use the --resident option on flutter run by default (#4386) 2016-06-06 10:29:27 -07:00
Phil Quitslund
6d2d495369 Merge pull request #4348 from pq/fix_4091
Fix flutter analyze defaults when files are specified (#4091).
2016-06-06 10:00:55 -07:00
Chinmay Garde
8756a094a9 Add a FLUTTER_MODE variable to the generated Xcconfig and fix snapshot generation on all targets. (#4362)
Get rid of the DART_EXPERIMENTAL_INTERPRETER_FLAG.
2016-06-03 13:55:57 -07:00
pq
ce82bc1b15 Check for user specified args. 2016-06-03 12:52:43 -07:00
pq
305af8b873 Fix flutter analyze defaults when files are specified (#4091).
Disables current package and current directory analysis when files are specified.

Fixes: https://github.com/flutter/flutter/issues/4091.
2016-06-03 09:24:54 -07:00
Jason Simmons
00c7734c8b Tools daemon handlers for discovering apps and forwarding device ports (#4324) 2016-06-02 14:00:27 -07:00
Adam Barth
612a097d1f Add --target support to flutter build ios (#4318)
Fixes #4298
2016-06-02 08:57:13 -07:00
Devon Carew
9e9dfc3d2d fix a race condition with isolate notification (#4286)
* fix a race condition with isolate notification

* return a future
2016-06-01 15:17:04 -07:00
Jason Simmons
49c4064132 Add Dart IO entry points to the snapshotter command line (#4257) 2016-05-31 10:51:28 -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
49affc4098 make the drive output prettier (#4260) 2016-05-27 22:36:07 -07:00
Devon Carew
111392d7c9 run pub get (w/ symlinks) for flutter drive (#4259)
* run pub get (w/ symlinks) for flutter drive

* review comments
2016-05-27 21:42:46 -07:00
Chinmay Garde
989a530350 Don't avoid linking with libSystem to work around issue in dyld. (#4241) 2016-05-27 11:24:10 -07:00
Todd Volkert
51d4ab3324 Fix install for iOS simulator, and add ability to uninstall (#4223) 2016-05-27 11:05:10 -07:00
Yegor
f544abd016 modernize flutter drive w.r.t. debug/profile/release options (#4217)
* modernize `flutter drive` w.r.t. debug/profil/release options

* make error message prettier
2016-05-27 10:02:36 -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
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
Jason Simmons
5aa9a7fc53 Forward the observatory (but not the diagnostic server) when in profile mode (#4183) 2016-05-25 15:21:11 -07:00
Todd Volkert
0da58802cf Fix aot compiler and linker args 2016-05-25 14:32:57 -07:00
Adam Barth
e8e9d4633c Workaround https://github.com/dart-lang/sdk/issues/26362 (#4171)
When building AOT, we now run `pub get` instead of printing an error telling
the user to run `pub get`. We can remove this code once the bug reference above
is fixed (should be a couple days).
2016-05-24 16:29:13 -07:00
Adam Barth
2d726fc0c5 Build app.so instead of app.a on iOS (#4168)
The app.a wasn't getting pulled into the main executable because we weren't
referencing any of its symbols. Instead, create a dylib that can be packaged
with the application and loaded at runtime.
2016-05-24 15:49:53 -07:00
Adam Barth
e8a47b6d49 Add --interpreter to flutter build aot (#4159)
This patch teaches flutter build aot to build `app.a` for use with the Dart
interpreter.
2016-05-24 12:06:53 -07:00
Adam Barth
cb7a690815 Let flutter build aot select a target platform (#4154)
Currently only android-arm and ios are supported target platforms.
2016-05-24 11:21:07 -07:00
Adam Barth
f33596aacb Teach flutter to build app.a (#4141)
On iOS, we use Xcode to build a static library that contains the precompiled
code. This code is currently unused, but it will be used by the new Xcode
harness to factor out as much complexity as possible into the flutter tool.
2016-05-24 09:49:31 -07:00
Devon Carew
4764550f9f fail flutter analyze when there are errors (#4117) 2016-05-23 14:39:42 -07:00
Chinmay Garde
66fee3a622 Wire up ios-profile and ios-release. Switching between debug, profile and release starts the build process from scratch. (#4063) 2016-05-23 12:58:42 -07:00
Devon Carew
4962656b1d remove old command aliases (#4103) 2016-05-23 12:06:49 -07:00
Ian Hickson
10c861d6e9 Track number of pending dartdocs too (#4088) 2016-05-20 16:47:44 -07:00
Ian Hickson
94636bd206 Cleanup based on new lints (#4052) 2016-05-20 14:08:46 -07:00
Devon Carew
95f838b072 Update trace.dart (#4055) 2016-05-19 14:06:40 -07:00
Eric Seidel
880f2f785e flutter test now works on mac as well as linux
@chinmaygarde
2016-05-19 13:10:15 -07:00
Devon Carew
a48b063a10 rebuild when the build type changes (#4032)
* rebuild when the build type changes

* handle local engine builds

* also check the timestamp
2016-05-19 12:49:40 -07:00
Ian Hickson
f284c1a049 Fix tests (#3977)
Also, make sure that broken tests actually break the bots.

And add a test to make sure that keeps happening.
2016-05-17 12:45:37 -07:00
Jason Simmons
c192a7e4ca Replace the checked flag in DebuggingOptions with the build mode (#3901)
This also fixes some related problems affecting "flutter run":
  * FLXes built during AndroidDevice.startApp need to match the build mode
  * APKs should always be rebuilt if the build mode uses AOT compilation
2016-05-17 12:38:25 -07:00
Collin Jackson
b4313b04b0 Merge pull request #3946 from collinjackson/apk
Make flutter run generate identical apks to flutter build apk
2016-05-17 07:30:10 -07:00
Collin Jackson
a312db482d remove the add-files argument to flutter run 2016-05-16 18:33:59 -07:00
Chinmay Garde
0e8f26dd6c Use the correct host toolchain when building from a local engine checkout on Mac. (#3956) 2016-05-16 17:05:39 -07:00
Collin Jackson
00e22284f2 Fix #3891 by making flutter run generate identical apks to flutter build apk 2016-05-16 15:53:18 -07:00
Devon Carew
483922d15c allow per-command analytics suppression (#3919)
* allow per-command analytics suppression

* rev the usage package dep
2016-05-15 20:06:27 -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
Yegor
15decfca6e reenable --checked option in flutter drive (#3916) 2016-05-13 16:42:28 -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
Jason Simmons
32846de9f8 Remove ArtifactStore and move flutterRoot into Cache (#3883) 2016-05-12 15:54:35 -07:00
Jason Simmons
a590ee2671 Remove BuildConfigurations (#3879)
Artifacts from local engine builds will be found based on the --local-engine flag
2016-05-12 12:22:15 -07:00
Jason Simmons
0f53f7966b Remove Toolchain and extend ToolConfiguration to locate host tools such as sky_snapshot (#3870)
Host tools can be found in the artifact cache directory for the host platform.
If a developer wants to use a local engine build instead, then provide an
--engine-build flag that selects the specific engine build variant.
2016-05-11 15:47:26 -07:00
Devon Carew
6635f1cf9b re-enable --checked (#3857) 2016-05-11 12:26:46 -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
52d0434bec create a flutter setup command (#3837) 2016-05-10 15:04:29 -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
Todd Volkert
43c0c52225 Fix regexp that strips invalid characters from the Uniform Type Identifier
Fixes #3835
2016-05-10 13:08:29 -07:00
Phil Quitslund
cc93170894 Merge pull request #3798 from pq/package_map_cleanup
Analyze update to use in-memory package map.
2016-05-09 11:53:21 -07:00
Hans Muller
74c3e74fba Call it Flutter Gallery (#3801) 2016-05-09 11:00:54 -07:00
Devon Carew
a5b198e9b9 remove the --checked option (#3799) 2016-05-09 10:58:47 -07:00
pq
46d32794f9 Analyze update to use in-memory package map.
Updates the analyze command to pass a package map to analysis rather than a file path.

This allows us to avoid creating a needless temporary `.packages` file and host directory and saves us a trip to disk to retrieve the contents when building our URI resolvers for analysis.
2016-05-09 09:59:16 -07:00
Jason Simmons
2ea3c9471d Fix for how flutter refresh locates the Android package manifest (#3791) 2016-05-09 09:31:46 -07:00
pq
2df43d50d3 Merge branch 'master' into analysis_rework 2016-05-06 08:58:49 -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
Jason Simmons
4d0e6984c2 Build tool support for Android x86 targets in 32- or 64-bit modes (#3761) 2016-05-05 16:04:22 -07:00
pq
eb215c14ac Review cleanup. 2016-05-05 15:16:27 -07:00
Devon Carew
a999366482 remove the analyze --benhcmark-expected option (#3755) 2016-05-05 14:26:21 -07:00
pq
3b882fc449 Updated arg default handling and .dartignore support. 2016-05-05 13:25:59 -07:00
pq
e808125c5b Dead code cleanup. 2016-05-05 12:35:52 -07:00
pq
a59a713f75 Analysis re-work to use analyzer APIs.
Introduces a new Dart analysis wrapper that works directly with the analyzer API (in favor of shelling out to a separate process).

Some consequences:

  * we no longer need to fear parts (simplifying our dart file gathering)
  * we can filter by error code (when needed), rather than by error strings
  * no more IO scraping
  * no need to generate `main()` or to run with `--package-warnings`
  * we now specify an analyzer (and linter) version in the pubspec (we’ll want to make sure this doesn’t diverge too far from the analyzer shipped with the SDK but it does give us some room to play with experimental builds)
  * no more (re)scanning of error source files (and so no more source cache)
  * should generally be a bit simpler and easier to maintain
  * runs a bit faster :)
2016-05-05 12:08:58 -07:00
Yegor
39e741dfb7 [tools] remove --flutter-repo flag in flutter test (#3728) 2016-05-04 14:08:16 -07:00
Devon Carew
f34d31717c complain on missing entries in flutter.yaml (#3731)
* complain on missing entries in flutter.yaml

* change to a hard failure
2016-05-04 12:33:34 -07:00
Devon Carew
1d4cda5d13 fix the benchmark file written by the analyze command (#3725) 2016-05-04 10:01:39 -07:00
Ian Hickson
961f5cd266 Fix framework-side time in profile data (#3706) 2016-05-03 14:45:22 -07:00
Collin Jackson
57d6e8514b Merge pull request #3701 from collinjackson/assets
Support for putting assets in android/assets folder (like ios/Resources)
2016-05-03 14:08:47 -07:00
Ian Hickson
4b6af7a42f Provide framework-only timing information (#3699)
This makes it easier to generate charts that show the engine time and
the framework time separately.
2016-05-03 13:51:22 -07:00
Collin Jackson
80ef81422d Support for putting assets in android/assets folder (like ios/Resources) 2016-05-03 13:32:35 -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
Eric Seidel
f58fa766c3 Add note about explicit pub get needed.
@devoncarew @jason-simmons
2016-05-02 16:14:35 -07:00
Jason Simmons
30d8dc1399 Check the adb install output for errors and stop "flutter run" if package installation fails (#3672) 2016-05-02 14:11:40 -07:00