Commit Graph

560 Commits

Author SHA1 Message Date
Adam Barth
870894fc68 Switch Material Design icons to using the iconfont
Rather than managing all the Material Design icons manually, we now
manage them using an icon font. The icon font contains glyphs for each
icon in an efficient vector format.

This patch updates the FLX tooling to include the MaterialIcons font and
updates the Icon widget to use the font instead of asset images.

Fixes #2313
Fixes #2218
Fixes #2009
Fixes #994
2016-03-02 09:32:02 -08:00
Devon Carew
ebf1ecc5bd valdate project names in create 2016-03-01 11:03:59 -08:00
Adam Barth
bf97313afb Merge pull request #2276 from abarth/detached_head
Flutter --version can't handle detached HEAD
2016-02-29 17:08:14 -08:00
Yegor Jbanov
6d35481cfa add smoke driver test; find by tooltip; retry predicate 2016-02-29 16:50:47 -08:00
Adam Barth
18a2525fc8 Flutter --version can't handle detached HEAD
Handle this error condition better and tweak some of the formating for the
version string.

Fixes #2162
2016-02-29 16:25:44 -08:00
Adam Barth
ad718a8d1e Teach flutter logs to show only new logs
After this patch, the flutter logs command on Android shows only log messages
since the command was run. Previously, it showed historical logs, which was
confusing.

Fixes #2013
2016-02-29 12:05:07 -08:00
Devon Carew
4d93c376c9 improve verbose output 2016-02-27 23:36:02 -08:00
Devon Carew
f9adbcf23d update a todo 2016-02-27 19:56:20 -08:00
Devon Carew
d326991b97 add back a call to device.stop() from the run command 2016-02-27 19:32:02 -08:00
Devon Carew
4e10bf596c improve startup time 2016-02-27 08:19:19 -08:00
Hixie
ba918fea26 flutter analyze: handle missing files 2016-02-26 18:59:07 -08:00
Hixie
a9040433ad Handle lines getting shorter during analysis 2016-02-26 15:37:43 -08:00
Devon Carew
022047f5eb remove the isConnected() method from device 2016-02-26 13:23:48 -08:00
Devon Carew
240e499bc0 Merge pull request #2219 from devoncarew/speed_up_start
some performance optimizations for starting apps
2016-02-26 12:21:42 -08:00
Devon Carew
8c95500ea1 some performance optimizations for starting apps 2016-02-26 12:01:41 -08:00
Ian Hickson
c04b4c7580 Merge pull request #2206 from Hixie/analyzer-messages
Handle conflicting 'library' identifiers
2016-02-26 11:06:51 -08:00
Adam Barth
44ffb6f453 Merge pull request #2196 from abarth/update_packages
Move update_packages.dart to `flutter update-packages`
2016-02-26 11:03:48 -08:00
Hixie
a33e256ab8 Handle conflicting 'library' identifiers
Also, handle the new directory structure of the flutter repo.
2016-02-26 10:58:39 -08:00
Devon Carew
58f69e7f97 Merge pull request #2211 from devoncarew/flx_times
add timing info for flx creation
2016-02-26 10:44:45 -08:00
Devon Carew
9c9bda23bb string interpolation 2016-02-26 10:22:54 -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
ee8f325bc0 add timing info for flx creation 2016-02-26 10:03:42 -08:00
Adam Barth
357fbf8a42 Move update_packages.dart to flutter update-packages
Now that we don't require the Dart SDK to be in your path, it's hard to run
./dev/update_packages.dart. Instead, you can now run `flutter update-packages`.

Fixes #1906
2016-02-25 16:27:56 -08:00
Phil Quitslund
ba7c992861 Merge pull request #2180 from flutter/error_codes
Ignore `flutter analyze` errors via analysis options.
2016-02-25 14:03:38 -08:00
pq
fdb2819e1e Ignore errors via analysis options.
Migrates error suppression from regexps to analysis options.
* Ignore TODOs.
* Ignore strong mode field and method overrides (see `InvalidFieldOverride` and `InvalidMethodOverride` in `strong/info.dart`.
* Remove stale regexp to capture refs to dead `dart:ui_internals` URI.
* Remove stale regexp to capture dead strong mode "will need runtime check to cast to type" error (https://github.com/dart-lang/sdk/issues/24542).

5 regexp downs, another small handful (~4) to go! :)
2016-02-25 13:49:05 -08:00
Jason Simmons
23641c2d7e Do not create a font manifest if the app has no flutter.yaml 2016-02-25 13:17:05 -08:00
Devon Carew
80d6130463 Update android_workflow.dart 2016-02-25 11:36:17 -08:00
Devon Carew
6e0c4f0fcf Update android_workflow.dart
fix https://github.com/flutter/flutter/issues/2157
2016-02-25 09:25:06 -08:00
Devon Carew
4860e63f44 Merge pull request #2153 from devoncarew/add_android_icon
add an android icon to the starter app
2016-02-25 00:40:49 -08:00
Devon Carew
5ee1cba149 fix a regression in the android manifest 2016-02-24 23:40:00 -08:00
Devon Carew
f57afa762f add an android icon to the starter app 2016-02-24 23:12:33 -08:00
Devon Carew
bc8e560779 run flutter doctor as part of create 2016-02-24 19:07:19 -08:00
Devon Carew
dc4830b0fa Merge pull request #2123 from devoncarew/device_commands
additional validation for device commands
2016-02-24 12:54:28 -08:00
Chinmay Garde
21057de9ae Merge pull request #2118 from chinmaygarde/develop
Remove all inline templates and provide a way to specify templates as resources
2016-02-24 12:47:37 -08:00
Chinmay Garde
038367ad24 Remove all inline templates and provide a way to specify templates as resources 2016-02-24 11:33:07 -08:00
Devon Carew
37290d866e additional validation for device commands 2016-02-24 11:11:23 -08:00
Phil Quitslund
1062c44f4a Merge pull request #2094 from flutter/analyze_fixes
Enumerate lints for analysis in synthesized options file.
2016-02-23 16:36:09 -08:00
pq
b69d249460 Enumerate lints for analysis in synthesized options file.
This enables us to exclude `library_names` pending a new stable SDK push (see notes: https://github.com/flutter/flutter/pull/1996).  Also excluded are a few lints who's feedback was just getting regexp'ed out.  Moving forward, this will allow us to selectively enable specific lints of interest as well.
2016-02-23 15:07:55 -08:00
Ian Hickson
8a53753427 Merge pull request #2107 from Hixie/flutter-tool
Fix --debug
2016-02-23 12:55:15 -08:00
Collin Jackson
263e2e7ff3 Merge pull request #2109 from collinjackson/no_material
Remove redundant Material from start project
2016-02-23 12:33:14 -08:00
Collin Jackson
8ab9a8fe03 Remove redundant Material from project created by flutter create 2016-02-23 11:29:55 -08:00
Hixie
71c8a96fb9 Fix --debug
...and some style nits.
2016-02-23 11:10:52 -08:00
Devon Carew
9367b86abe add a validator for Atom 2016-02-23 10:25:14 -08:00
Yegor
3301ae7d09 Merge pull request #2097 from yjbanov/flutter-driver-create
"flutter create" can generate a basic driver test; "flutter drive" gains new options
2016-02-22 17:18:54 -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
a49e45106d fix a checked mode assertion 2016-02-22 13:09:22 -08:00
Devon Carew
3463d89cf6 remove iosSimulator field from ApplicationPackageStore 2016-02-22 12:37:08 -08:00
Devon Carew
896246ad14 Merge pull request #2079 from devoncarew/more_specific_logging
log for specific adb devices
2016-02-22 12:12:05 -08:00
Chinmay Garde
2b70fda196 Merge pull request #2081 from chinmaygarde/master
Address issues raised in PR #2047
2016-02-22 12:10:54 -08:00
Chinmay Garde
d299b05ab3 Fix linter error regarding extra braces in string interpolation in devices.dart 2016-02-22 11:51:35 -08:00
Chinmay Garde
7e59a9e82e Address issues raised in PR #2047 2016-02-22 11:43:52 -08:00
Chinmay Garde
6ab25977c5 Merge pull request #2080 from chinmaygarde/master
Update status messages when unsupported devices are detected by the tools
2016-02-22 11:33:47 -08:00
Chinmay Garde
f7d94fef8f Update status messages when unsupported devices are detected by the tools 2016-02-22 11:33:17 -08:00
Devon Carew
16f9e38769 check to see if the xcode eula has been signed 2016-02-21 00:41:14 -08:00
Devon Carew
488e5dcd6c log for specific adb devices 2016-02-21 00:23:13 -08:00
Devon Carew
67046f933d add the ability to start and stop device polling 2016-02-20 22:00:11 -08:00
Adam Barth
ec0ec75b26 Improve the style in the starter app
Fixes #2011
2016-02-20 15:48:55 -08:00
Adam Barth
4aae718f85 Download sky_engine and sky_services from cloud storage
Downloading these packages from cloud storage simplifies our deployment
story because we can upload to cloud storage automatically from the
buildbot.

This patch also switches the responsibility for downloading the engine
artifacts to update_engine.sh. Centralizing this responsibility ensures
that the packages and the binaries are always in sync.
2016-02-20 13:25:01 -08:00
Yegor
38a72a444a Merge pull request #2054 from yjbanov/flutter-drive-cmd
"flutter drive" command
2016-02-19 18:17:52 -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
Chinmay Garde
d797995632 tvOS, watchOS and old simulators are blacklisted in the tools 2016-02-19 16:29:41 -08:00
Chinmay Garde
83f10bd8ae Fix typo in the _xcodeVersionSatisfactory and rename the check 2016-02-19 13:38:28 -08:00
Chinmay Garde
5658640128 Fix lint errors 2016-02-19 13:34:16 -08:00
Chinmay Garde
c5056b957e iOS: In case Xcode is installed but the version is too old. Advise the user to update. 2016-02-19 13:30:57 -08:00
Adam Barth
a6f0c97a22 Merge pull request #2046 from abarth/background_compilation
Enable background compilation
2016-02-19 13:10:10 -08:00
Adam Barth
b7ee5980ea Enable background compilation 2016-02-19 13:06:55 -08:00
Chinmay Garde
f6a2477dce Always generate legal UTIs for project identifiers. 2016-02-19 12:30:18 -08:00
Chinmay Garde
b37112af2a Rewrite Local.xcconfig per build
In case the user changes the path of the Flutter project on disk, the Dart SDK or the Flutter repository itself, the old Xcode paths would be invalid. Now, we rewrite them when we build the project.
2016-02-19 11:37:05 -08:00
Chinmay Garde
df946dd875 iOS: Treat the initial Info.plist string as a mustache template.
Use the project name to initialize the bundle name and identifier
2016-02-19 11:37:05 -08:00
Jason Simmons
59351a79e4 Generate a font manifest JSON file from flutter.yaml 2016-02-19 10:05:14 -08:00
Devon Carew
0da7463ef0 make the '-o' option in create optional 2016-02-18 14:33:59 -08:00
Devon Carew
d5a6fceee5 add a summary option to the doctor class 2016-02-17 09:33:45 -08:00
Devon Carew
6a6b6539c8 Merge pull request #1947 from devoncarew/less_ios
make the ios development path less mandatory
2016-02-17 00:48:00 -08:00
Devon Carew
7ae6f7f391 make the ios development path less mandatory 2016-02-17 00:38:47 -08:00
Adam Barth
90d53adea9 Revert "iOS: Treat the initial Info.plist string as a mustache template and use the project name to initialize the bundle name and identifier"
This reverts commit dd4361bcb3.

We still use the hard-coded name in a number of places, including
launching the app on the iOS simulator.

Fixes #1950
2016-02-16 21:20:00 -08:00
Chinmay Garde
9f0e6537fb Update the regex used to filter out Flutter specific logs 2016-02-16 18:07:00 -08:00
Chinmay Garde
36a7c6576c Perform an engine version check on start and update the Xcode project if necessary 2016-02-16 17:47:25 -08:00
Chinmay Garde
77103c01cd Merge pull request #1941 from chinmaygarde/master
iOS: Treat the initial Info.plist string as a mustache template and use the project name to initialize the bundle name and identifier
2016-02-16 17:42:42 -08:00
Chinmay Garde
dd4361bcb3 iOS: Treat the initial Info.plist string as a mustache template and use the project name to initialize the bundle name and identifier 2016-02-16 17:29:36 -08:00
Adam Barth
db7294206a Merge pull request #1940 from abarth/improve_android_sdk
Improve error message when Android SDK not found
2016-02-16 17:11:14 -08:00
Adam Barth
bef8d081ed Improve error message when Android SDK not found
Also, look for the Android SDK in the default locations.
2016-02-16 17:02:52 -08:00
Eric Seidel
6159c67d2c Merge pull request #1932 from eseidelGoogle/hide_run_mojo
Hide flutter run_mojo
2016-02-16 16:07:32 -08:00
Eric Seidel
f784fb8ce6 Hide flutter run_mojo 2016-02-16 16:06:39 -08:00
Adam Barth
0bb8d21bd2 Remove flutter ios command
All the functionality of this command has been integrated into other commands.
2016-02-16 16:01:59 -08:00
Chinmay Garde
c2f5044099 Refactor: Rename initialize_xcode.dart to setup_xcodeproj.dart 2016-02-16 15:35:59 -08:00
Chinmay Garde
5cebf70da4 flutter start initializes the Xcode project if the user has not already done so. 2016-02-16 15:18:47 -08:00
Chinmay Garde
d38bfee62b Tooling updates for dealing with native services distributed in pub packages 2016-02-16 13:10:12 -08:00
Adam Barth
cf8116368d flutter run should run pub get automatically
This removes a step that can cause trouble.

Fixes #1904
2016-02-16 11:16:34 -08:00
Devon Carew
b7b06c2a27 fixes found when running through the getting started process 2016-02-15 14:06:23 -08:00
Devon Carew
cc72bbc7ec rename list->devices, start->run 2016-02-13 23:50:20 -08:00
Devon Carew
dcf0b7bae6 allow any android sdk version 2016-02-13 14:37:41 -08:00
Devon Carew
8baf7694cb update gitignore and analysis_options 2016-02-12 13:13:05 -08:00
Devon Carew
1cbd61d3b9 Merge pull request #1824 from devoncarew/use_revision_ios
use the REVISION file when building ios apps
2016-02-12 13:04:29 -08:00
Devon Carew
576bf7df60 use the REVISION file when building ios apps 2016-02-12 12:21:04 -08:00
Jason Simmons
42be77b7a9 Try to locate the toolchain in the output layout used by the Flutter Linux target 2016-02-12 11:09:22 -08:00
Todd Volkert
5d496143ba Review 2016-02-12 08:27:47 -08:00
Chinmay Garde
62fb32d458 Merge pull request #1792 from chinmaygarde/master
Allow users to upgrade their iOS engines without removing their edits to the Xcode project
2016-02-11 21:17:30 -08:00
Adam Barth
2a1b0f6c22 Merge pull request #1793 from abarth/version_code
Add versionCode and versionName to default Android manifest
2016-02-11 20:11:35 -08:00
Adam Barth
0ae17bc3b3 Add versionCode and versionName to default Android manifest
These are required to upload to the store.

Fixes #1006
2016-02-11 19:43:39 -08:00
Adam Barth
8b94b9e9c6 Merge pull request #1784 from devoncarew/rename_apk_dir
rename the apk/ directory to android/
2016-02-11 19:37:44 -08:00
Chinmay Garde
23c632ab87 iOS: Write a default .gitignore file for the "Generated" directory 2016-02-11 18:40:54 -08:00
Chinmay Garde
3d25df3f99 iOS: Update path to the application Xcode project to point to the generated subdirectory 2016-02-11 17:48:56 -08:00
Chinmay Garde
5f6e9cb39c iOS: Generate the initial set of user editable files if these are not already present 2016-02-11 17:44:04 -08:00
Chinmay Garde
978973fac9 iOS: Inflate the Xcode project into a "Generated" subdirectory 2016-02-11 17:13:06 -08:00
Chinmay Garde
94e9795b0b Merge pull request #1788 from chinmaygarde/master
Write a REVISION file in the ios directory to aid in version checks
2016-02-11 15:54:01 -08:00
Chinmay Garde
0e9f8e4069 Write a REVISION file in the ios directory to aid in version checks 2016-02-11 15:46:09 -08:00
Chinmay Garde
3af3b23607 Merge pull request #1786 from chinmaygarde/master
Explicitly specify the sdk and arch when building for an iOS device
2016-02-11 15:25:18 -08:00
Chinmay Garde
97e41f5757 Explicitly specify the sdk and arch when building for an iOS device 2016-02-11 15:18:29 -08:00
Devon Carew
de8d11e714 rename the apk/ directory to android/ 2016-02-11 13:28:24 -08:00
Adam Barth
78c19d22eb Teach run_mojo about Mozart
Instead of running the FLX directly, we need to run mojo:launcher and have it
run the FLX.
2016-02-11 12:16:04 -08:00
Devon Carew
4ed79454ac wait for flutter start to return until the obs. port is available 2016-02-11 10:18:39 -08:00
Devon Carew
aa66a7720c fix an NPE when the flutter.yaml file is missing 2016-02-10 15:41:57 -08:00
Matt Perry
a02d583d02 Refactor service-related code to be shared between android and IOS.
The IOS code is totally untested. Need a Mac to test it.
2016-02-10 14:52:17 -05:00
Collin Jackson
5cd9d5b214 Upgrade command shouldn’t validate project, fixes #1745 2016-02-10 10:04:35 -08:00
Devon Carew
244239d982 Merge pull request #1753 from devoncarew/fix_logging_ios
fix an issue with logging ios simulator output
2016-02-10 09:24:55 -08:00
Devon Carew
2dbceafbc6 introduce globals scoped to the app's context 2016-02-09 22:03:13 -08:00
Devon Carew
05113d5829 fix an issue with logging ios simulator output 2016-02-09 21:21:02 -08:00
Devon Carew
a9a445b19d Merge pull request #1743 from devoncarew/ignore_io_build
ignore derived resources in ios/build
2016-02-09 16:24:08 -08:00
Jason Simmons
8baffeb9a6 Merge pull request #1724 from jason-simmons/refresh_update_snapshot
Add a refresh command that rebuilds the snapshot and reloads it on th…
2016-02-09 16:22:51 -08:00
Devon Carew
427bc1e392 ignore derived resources in ios/build 2016-02-09 15:41:45 -08:00
Devon Carew
36b6210c93 filter offline devices from notifications 2016-02-09 13:30:21 -08:00
Jason Simmons
bf1246d881 Add a refresh command that rebuilds the snapshot and reloads it on the device
This provides a fast way to iterate on changes to a Flutter app that only
involve updates to Dart code and do not require a full build and install
of the FLX and APK
2016-02-09 13:08:19 -08:00
Adam Barth
3c8cbef973 Rationalize RenderViewport and RenderVirtualViewport
These classes now share more code and have feature parity.
2016-02-09 10:30:52 -08:00
Matt Perry
1cf36da1e1 Fix flutter stop to stop the right Android activity.
Previously we'd always stop org.domokit.sky.shell. If an
AndroidManifest.xml exists, we'll use the activity specified in there
instead.
2016-02-09 11:53:37 -05:00
Chinmay Garde
db4016c633 Merge pull request #1699 from chinmaygarde/master
Use the same flags as Android on iOS while starting on the simulator
2016-02-08 15:51:12 -08:00
Chinmay Garde
495c53335e Use the same flags as Android on iOS 2016-02-08 15:44:24 -08:00
Devon Carew
e96f6600e3 start the simulator with -arch x86_64 2016-02-08 14:59:11 -08:00
Chinmay Garde
26b657019d iOS Sim: Wire in launch arguments to simctl 2016-02-08 13:56:12 -08:00
Collin Jackson
9ec12824aa Make flutter create generate a manifest that is similar to SkyShell.apk, fixes #1587 2016-02-08 11:11:25 -08:00
Devon Carew
9e6d45cb03 general refactoring around device management
remove the device factory methods as well as the device cache
2016-02-06 11:49:48 -08:00
Devon Carew
ebd8078b06 two fixes for checked mode 2016-02-05 20:57:41 -08:00
Devon Carew
67124dc3a5 refactor to parse xcrun simctl list as json
add device notifications for the simulator
2016-02-05 19:04:47 -08:00
Todd Volkert
60b6b79319 Create flutter_tools.dart to represent public tools API 2016-02-05 14:20:20 -08:00
Todd Volkert
f0379df5c7 Refactor flx.build() to allow for external toolchain hooks.
This splits flx.build() into two methods, flx.build() and
flx.assemble().  builD() now does the following:
1) constructs the manifest map by reading the manifest from the
   file system
2) "compiles" the dart code into the snapshot file
3) Invokes assemble()

This allows external build toolchains to construct their own
manifest map (possibly using a different manifest syntax)
and create their own snapshot file
2016-02-04 15:44:03 -08:00
Devon Carew
f423951cc2 Merge pull request #1619 from devoncarew/device_names
get the adb device name when using the adb server
2016-02-04 14:04:45 -08:00
Devon Carew
4ff43bf418 get the adb device name when using the adb server 2016-02-04 14:03:16 -08:00
Devon Carew
27ae6c8b40 remove an extraneous line of output when launching the simulator 2016-02-04 13:31:20 -08:00
Matt Perry
fbe6779f4f Merge pull request #1539 from mpcomplete/start
'flutter start' calls 'flutter apk' if necessary.
2016-02-03 13:13:52 -08:00
Matt Perry
5d2281b69b 'flutter start' calls 'flutter apk' if necessary.
flutter start no longer depends on a pre-built SkyShell.apk. It builds a
new one, as long as an AndroidManifest.xml exists.

We rebuild the .apk every time either AndroidManifest.xml or
flutter.yaml changes.
2016-02-03 12:21:20 -08:00
Devon Carew
cbb2761e5f Merge pull request #1560 from devoncarew/target_option
normalize -t --target option
2016-02-03 11:49:23 -08:00
Devon Carew
bfb89195c3 add a hidden flag for backwards compatibility 2016-02-03 02:19:10 -08:00
Devon Carew
33874eb71f update arg reference 2016-02-03 01:07:40 -08:00
Devon Carew
b6e8118e2d normalize -t --target option 2016-02-03 00:52:07 -08:00
Devon Carew
4200378d3c add docs for -h -v 2016-02-03 00:13:12 -08:00
Devon Carew
2981fc404d Merge pull request #1526 from devoncarew/start_paused
add --start-paused,--debug-port flags
2016-02-02 12:05:12 -08:00
Devon Carew
b780c07622 add --start-paused,--debug-port flags 2016-02-02 11:38:56 -08:00
Collin Jackson
3094348ad4 Merge pull request #1483 from collinjackson/engine_safety
In addition to checking for the existence of the engine, ensure that it’s the correct version
2016-02-01 16:10:03 -08:00
Collin Jackson
beaffecb7b fix #1443 ensure engine is the correct version 2016-02-01 13:11:30 -08:00
Devon Carew
78e05884ed refactor flutter logs 2016-02-01 12:56:46 -08:00
Devon Carew
a08c201996 Merge pull request #1481 from devoncarew/patch_ios_logs
fix a regex in the ios logs command
2016-01-30 22:55:18 -08:00