Commit Graph

560 Commits

Author SHA1 Message Date
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
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
d6b4759fee tweak the output for the analyze command 2016-01-30 22:06:26 -08:00
Devon Carew
09cca3b34c massage the help text 2016-01-29 14:32:12 -08:00
Devon Carew
864b7f47d7 add the engine revision to --version 2016-01-29 10:45:59 -08:00
krisgiesing
1b75de1b16 Merge pull request #1295 from krisgiesing/resolution_awareness
Add support for asset variants; add resolution aware asset image management
2016-01-28 18:19:32 -08:00
Kris Giesing
9572b4969f Add support for asset variants and resolution-aware images 2016-01-28 18:11:32 -08:00
Devon Carew
a4b0c3d584 make the output from create more terse 2016-01-28 15:18:25 -08:00
Devon Carew
5ff2b1a19b Merge pull request #1444 from devoncarew/work_on_test
test command checks for test dir
2016-01-28 15:03:38 -08:00
Devon Carew
5b2005d4ff Merge pull request #1452 from devoncarew/start_command
make --device-id work with ios devices too
2016-01-28 15:03:21 -08:00
Devon Carew
c46ad29cfb test commands checks for test fir 2016-01-28 15:02:50 -08:00
Devon Carew
2065483a1c make --device-id work with ios devices too 2016-01-28 14:43:57 -08:00
Devon Carew
be2862debc update description text for the trace command 2016-01-28 14:40:33 -08:00
Jason Simmons
12419d6bcf Merge pull request #1446 from jason-simmons/app_process_restart
Add a --full-restart flag to the start command that controls whether …
2016-01-28 14:23:01 -08:00
Jason Simmons
0eb970f7f0 Add a --full-restart flag to the start command that controls whether we stop the application process
SkyActivity now allows reloading application Dart code within an existing
activity.  If a SkyActivity instance is already running, then passing
--no-full-restart will restart the Dart code without killing and restarting
the SkyShell application.
(full-restart will remain the default until the engine
that supports this is rolled out)

Also remove the obsolete --poke flag
2016-01-28 14:13:42 -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
Devon Carew
55c333f583 tweaks to the ios code 2016-01-28 08:25:23 -08:00
Devon Carew
76d069f9c0 rename the init command to create 2016-01-27 14:37:29 -08:00
Devon Carew
7ac4e6248f refactor the list command 2016-01-27 14:03:41 -08:00
Jason Simmons
f0a62d6453 Merge pull request #1410 from jason-simmons/tracing_pull
Allow collection of trace files when adbd is not running as root
2016-01-27 11:04:22 -08:00
Jason Simmons
58ba5129e3 Allow collection of trace files when adbd is not running as root
Also fix a bug where the trace command may capture the wrong file
if multiple trace file paths are in the Android log buffer.

Previously we found a lower bound timestamp for the trace path log
by running the date command on the device and parsing the result on
the host.  This could yield an inaccurate result if the device and
host are using different time zones.

The command will now obtain the most recent timestamp in the device's
time format by running logcat.
2016-01-27 10:57:13 -08:00
Chinmay Garde
594e7000a9 Merge pull request #1396 from chinmaygarde/master
iOS: Make the error message on `flutter ios --init` more descriptive
2016-01-26 14:08:23 -08:00
Chinmay Garde
c66e00f4a7 iOS: Make the error message on flutter ios --init more descriptive 2016-01-26 14:07:39 -08:00
Chinmay Garde
95ac9b3e05 Merge pull request #1393 from chinmaygarde/master
iOS: Update log prefix for device logs. We don't use SkyShell anymore
2016-01-26 13:50:16 -08:00
Chinmay Garde
bf3594c3ee iOS: Update log prefix for device logs. We don't use SkyShell anymore 2016-01-26 13:49:54 -08:00
Chinmay Garde
4bd35cdbe9 Minor update to the message logged when multiple devices are connected with no device ID specified 2016-01-26 12:10:46 -08:00
Chinmay Garde
9e089f237f Avoid launching Xcode after "flutter ios --init" 2016-01-26 11:56:29 -08:00
Adam Barth
4a01299827 flutter start shouldn't log xcodebuild output
Xcodebuild produces a lot of output that isn't relevant to developers. We
should hide it by default.
2016-01-25 14:09:11 -08:00
Devon Carew
080896a305 improve device notification support 2016-01-25 13:50:59 -08:00
Matt Perry
b43bd0b1ec Merge pull request #1365 from mpcomplete/apk2
Support local paths to third-party jars in flutter apk.
2016-01-25 16:10:30 -05:00
Adam Barth
91e6b21ea6 Improve error messages for iOS workflow
We now check that you've got an "ios" directory and that you have the proper
version of Xcode.
2016-01-25 12:21:13 -08:00
Matt Perry
6610b7ea04 Support local paths to third-party jars in flutter apk.
Also improve the error message a bit if a download fails.
2016-01-25 15:05:06 -05:00
Seth Ladd
fa91b3ff75 get a bug fix for multi-line command descriptions 2016-01-25 09:28:42 -08:00
Ian Hickson
5494323db9 Move us to HashSet to avoid the overhead of tracking the order 2016-01-23 18:13:13 -08:00
Eric Seidel
7f3ae43b7f Make flutter list not crash on linux.
Turns out linux does have an ideviceinstaller package
however it doesn't contain idevice_id or any of the
other tools we use.  Furthermore we don't have
xcrun or the rest of xcode on linux so we can't
manipulate simulators either.

No sense in printing out a warning that ios isn't supported
every time on linux, so I wrapped that block in osx only.

@chinmaygarde @devoncarew
2016-01-22 14:58:13 -08:00
Devon Carew
5bce2fbdec refactor platform specific code out of device.dart
remove device type specific checks
2016-01-22 10:51:49 -08:00
Matt Perry
dcbb4960eb 'flutter apk' now supports dynamically registered services.
Third-party libraries can now provide their own mojo services. They do
so by adding a config.yaml file to their pub package which contains
- a list of service names and java classes which handles that service's
  registration.
- a list of pre-built .jar files to statically link with the app's shell
  when building the app.
2016-01-22 13:20:54 -05:00
Devon Carew
5daf58ce1e refactor commands to move out re-usable functionality 2016-01-21 09:38:46 -08:00
Devon Carew
a14c2d219e parse out the ios simulator device name 2016-01-20 22:01:57 -08:00
Eric Seidel
f9c7a8f606 Make flutter start not report erroneous failure
Was failing when starting in the iOS Simulator

@chinmaygarde
2016-01-20 17:57:28 -08:00
Devon Carew
70fb49fb14 refactor build command into two files 2016-01-20 15:45:34 -08:00
Devon Carew
5ac6f9313d Merge pull request #1305 from devoncarew/device_notification
Device notification
2016-01-20 10:03:56 -08:00
Devon Carew
87e6b9a082 name and grammar tweaks 2016-01-20 08:38:50 -08:00
Devon Carew
8bb8e1d9e7 add device notifications to the daemon command 2016-01-19 21:29:20 -08:00
Devon Carew
386c351884 improve the failure mode when run from a non-flutter project
fix an issue where errors were printed twice
2016-01-19 20:56:23 -08:00
Chinmay Garde
477530f309 Merge pull request #1249 from chinmaygarde/master
First take on `flutter start` for iOS devices
2016-01-19 14:59:05 -08:00
Devon Carew
2727954d0e review comments 2016-01-19 13:15:58 -08:00
Devon Carew
077ee32ea5 guard against npe 2016-01-19 12:15:11 -08:00
Devon Carew
677a80c16b add a wrapper around the adb command 2016-01-19 11:31:20 -08:00
Adam Barth
7019e92f38 Skip "list of devices" header from adb
Sometimes "adb devices" prints a header. We should skip over the header
instead of complaining that we don't recognize it.

Fixes #1293
2016-01-18 11:26:29 -08:00
Ian Hickson
62673cf67b Merge pull request #1286 from Hixie/better-analyze
Make 'flutter analyze' support analyzing arbitrary files
2016-01-17 22:34:13 -08:00
Ian Hickson
1f6ed67bd9 Make 'flutter analyze' support analyzing arbitrary files
Before we didn't know how to find the packages of random files. Now we do.
2016-01-16 13:38:47 -08:00
Ian Hickson
9eb978443b Prepare flutter analyze for dart 1.14 2016-01-16 11:28:13 -08:00
Chinmay Garde
c8672a40c1 Fix Dart analyzer warning 2016-01-15 11:51:45 -08:00
Chinmay Garde
602a35617a Update flutter start for iOS simulator 2016-01-15 11:51:45 -08:00
Chinmay Garde
02f423f5d3 Minor: Remove unnecessary continue 2016-01-15 11:51:45 -08:00
Chinmay Garde
e98b7f4c48 Make picking of either an iOS or Android device from a configuration follow a common code path 2016-01-15 11:51:45 -08:00
Chinmay Garde
53ea61942b Invoke Device::startApp on the specific device 2016-01-15 11:51:45 -08:00
Chinmay Garde
fbef955cb9 Update IOSDevice::startApp for precompilation 2016-01-15 11:51:45 -08:00
Chinmay Garde
b7e388c5dd Allow preconfigured packages for iOS simulator and devices 2016-01-15 11:51:45 -08:00
Chinmay Garde
9fd1711b43 Add configurations for prebuilt iOS and iOS simulator targets 2016-01-15 11:51:45 -08:00
Seth Ladd
59fde0b45c clarify that start defaults to checked 2016-01-13 08:53:46 -08:00
Devon Carew
babfb0ac4f Merge pull request #1215 from devoncarew/dev_analysis
fixes to flutter analyze for the latest dev sdk
2016-01-12 20:18:41 -08:00
Devon Carew
4ad838f65b don't listen for chromium messages to the adb log 2016-01-12 19:09:12 -08:00
Devon Carew
0f55ebe503 fixes to flutter analyze for the latest dev sdk 2016-01-12 19:04:19 -08:00
Eric Seidel
9257682b01 Remove stray period added from web editor. 2016-01-12 17:09:15 -08:00
Eric Seidel
a6e8fccb90 Correct display error for flutter analyze timing
Fixes #1213.
2016-01-12 17:08:38 -08:00
Seth Ladd
42d90c00cc starter app now has a button that does something 2016-01-12 10:28:40 -08:00
Eric Seidel
001c107858 Teach analyze how to print out the total time spent
Makes it more obvious that flutter analyze takes a long time.

@Hixie
2016-01-12 09:20:36 -08:00
Adam Barth
2303188614 Handle trying to upgrade Flutter with no upstream
Fixes #1084
2016-01-07 10:57:48 -08:00
Adam Barth
3615827f0e flutter start crashes when port 8181 is in use
Catch the error and log a warning.

Fixes #1050
2016-01-07 09:56:44 -08:00
Eric Seidel
330c08199e Revert "Make flutter listen exit nicely when missing dependencies" 2016-01-06 17:17:16 -08:00
Eric Seidel
3a2aa89064 Make flutter listen exit nicely when missing dependencies
Previously it died with a confusing exception.

@chinmaygarde
2016-01-06 17:07:36 -08:00
Chinmay Garde
e1b16729bf Merge pull request #1093 from chinmaygarde/master
Download the Xcode artifacts for the current engine revision
2016-01-06 13:40:35 -08:00
Devon Carew
854f9f717d Merge pull request #1090 from devoncarew/log_stderr
have flutter logs log stderr
2016-01-06 13:39:11 -08:00
Chinmay Garde
f5f9440a2d Download the Xcode artifacts for the current engine revision 2016-01-06 13:38:43 -08:00
Eric Seidel
0d783718ba Teach flutter trace stop to use time on the device.
This is yet another hack on top of adb log handling.
This is fragile, but w/o this if you device time is out
of sync, you can't trace.

@abarth
2016-01-06 13:29:32 -08:00
Devon Carew
ed215fb842 have flutter logs log stderr 2016-01-06 13:29:24 -08:00
Devon Carew
782f505fb8 clear logs on app launch 2016-01-05 11:02:49 -08:00
Jason Simmons
3a37c36cea Add flags for signing an APK with a custom keystore
Fixes #1010
2016-01-04 13:59:01 -08:00
Adam Barth
eecb8012af flutter init should gitignore .atom
We now create a .atom folder to hold settings for the Atom project. We
should gitignore that folder our project template.
2016-01-01 19:44:39 -08:00
Devon Carew
fc0b18c7f1 update the min api level in the generated android manifest; use constants for the android version name 2015-12-30 21:37:39 -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
Chinmay Garde
56d6476049 Merge pull request #986 from chinmaygarde/master
Fix travis builds and linter warnings
2015-12-17 15:31:55 -08:00
Chinmay Garde
8231f57984 Fix travis builds and linter warnings 2015-12-17 15:25:59 -08:00
Chinmay Garde
98f10bc6eb Merge pull request #983 from chinmaygarde/master
Add a 'flutter ios --init' command that fetches the Xcode project from the cloud and configures it for a given flutter project
2015-12-17 14:59:26 -08:00
Chinmay Garde
08fdf99fea Add a 'flutter ios --init' command that fetches the Xcode project from the cloud and configures it for a given flutter project 2015-12-17 14:58:39 -08:00
Eric Seidel
dd440d0c21 Fix flutter apk to work with resources
I screwed up my last change, turns out the package command
is sensitive about having all of its flags before args.

Also made it possible to control the resources directory
from the command line per the review comments in the previous change.

@jason-simmons
2015-12-16 16:18:02 -08:00
Eric Seidel
64bec53646 Add support for bundling apk resources
I also made it so that `flutter apk -v` showed what
commands it was running by moving off of a custom _run
function onto the base/process.dart runChecked shared
by other commands.

@jason-simmons
2015-12-16 15:33:33 -08:00
Ian Hickson
7151fdd054 Move flutter tests from packages/unit to packages/flutter/test 2015-12-16 08:00:57 -08:00
Hixie
0a6b0f9b0b Always import our packages when analyzing. 2015-12-14 12:56:31 -08:00
Hixie
889a1e8eb3 Analyze more tests. 2015-12-14 11:06:42 -08:00
Adam Barth
4fa9e57185 Merge pull request #872 from abarth/build_errors
Improve error messages when build fails
2015-12-10 12:00:30 -08:00
Adam Barth
8eb9763569 Improve error messages when build fails
Instead of failing with a cryptic error message about app.flx, we now fail with
an explicit message about the compiler.

Releated to #865
2015-12-10 11:25:19 -08:00
Adam Barth
fd68f08b7c Recognize offline status in adb
Fixes #858
2015-12-10 11:16:40 -08:00
Adam Barth
2b6b781c7a Switch over to the Travis-built artifacts
We've been bulding these binaries using Travis for a while. We can start using
them now.
2015-12-08 15:01:44 -08:00
Ian Hickson
0290622bc6 Analyzer improvements
- strengthen analyzer against error messages that point past the
  bottom of the file.

- ignore any errors in intl's auto-generated files.
2015-12-03 19:52:23 -08:00
Eric Seidel
7d4feaa71a Workaround logcat -c not working 2015-12-03 16:13:10 -08:00
Eric Seidel
5e2bc90daf Make it possible to specify the saved path for trace --stop
@chinmaygarde
2015-12-03 14:44:59 -08:00
Eric Seidel
4eee2e4c1d Add support for passing --trace-startup on Android
iOS takes a different codepath and will need more work.

@chinmaygarde
2015-12-03 12:23:52 -08:00
Adam Barth
fb98a387aa Support flutter test with prebuilt binaries
Now you can run tests with and without --flutter-repo with a prebuilt binary on
Linux.

Fixes #307
2015-12-03 10:05:57 -08:00
Eric Seidel
95eac98fac Merge pull request #681 from eseidelGoogle/trace
Make trace --stop fail if the adb pull fails.
2015-12-02 12:00:01 -08:00
Eric Seidel
5b2cc1ae67 Make trace --stop fail if the adb pull fails.
@chinmaygarde
2015-12-02 11:27:27 -08:00
Jason Simmons
bbd84bce93 Merge pull request #660 from jason-simmons/apk_output_label
Add output to "flutter apk" indicating where the APK file was written
2015-12-01 15:50:52 -08:00
Jason Simmons
01ff4ef6bc Add output to "flutter apk" indicating where the APK file was written 2015-12-01 15:44:15 -08:00
Jason Simmons
76ced91388 Generate an Android manifest in "flutter init" 2015-12-01 15:28:19 -08:00
Adam Barth
f41869f639 Update package:test to the latest version 2015-11-30 18:41:10 -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
Ian Hickson
92a6212007 dev/update_packages.dart --upgrade
Add an --upgrade flag to the dev/update_packages.dart flag which runs
'pub upgrade' instead of 'pub get'. Tell people to use this when using
'flutter analyze' since 'pub get' doesn't have the same guarantee of
getting everything in sync.
2015-11-27 20:01:13 -08:00
Devon Carew
13fbafdabf Merge pull request #591 from devoncarew/log_time
print logging timestamps to profile app launch
2015-11-25 12:54:49 -08:00
Devon Carew
e36b07f7b5 print logging timestamps to profile app launch 2015-11-25 12:47:25 -08:00
Devon Carew
559ea9d08d allow logs to work from any location 2015-11-25 12:39:33 -08:00
Adam Barth
860547c1d4 Add support for system-level routing
Now you can supply a route argument to flutter start:

  $ flutter start --route /foo

which will start the app at /foo instead of /.
2015-11-24 16:13:20 -08:00
Adam Barth
b0470e31fb Improve unauthorized regexp
Fixes https://github.com/flutter/flutter.github.io/issues/101
2015-11-23 19:09:43 -08:00
krisgiesing
1a351a6598 Merge pull request #478 from krisgiesing/run_mojo_android
Allow run_mojo --android to specify location of flutter engine
2015-11-23 14:19:28 -08:00
Kris Giesing
02510dd866 Allow run_mojo --android to specify location of flutter engine 2015-11-23 14:11:51 -08:00
Adam Barth
c7e00449a8 Make it possible to run tests outside the Flutter repo
This patch still requires a locally built engine. I'll remove the need for a
locally built engine in a future patch.

Fixes #278
2015-11-23 13:42:04 -08:00
Seth Ladd
c675ec7d6e Merge pull request #530 from sethladd/more-error-message
more verbose error message
2015-11-23 09:50:29 -08:00
Seth Ladd
84cfcde1f7 tweaking message 2015-11-23 09:24:20 -08:00
Adam Barth
99d51f5f5a Fix analyzer warnings
Should make Travis green again. Also, add better logging to
dev/update_packages.dart.
2015-11-21 13:39:45 -08:00
Jason Simmons
ae7c97160a Merge pull request #533 from jason-simmons/apk_artifact_cache
Build APKs without a local copy of the engine sources
2015-11-20 16:43:14 -08:00
Jason Simmons
854db78466 Build APKs without a local copy of the engine sources 2015-11-20 16:22:18 -08:00
Seth Ladd
9496de7c80 more verbose error message
undo auto format
2015-11-20 15:34:28 -08:00
Adam Barth
0d3c2d9336 flutter build --engine-src-dir=<garbage> produces poor error message
This patch improves the error message.

Fixes #468
2015-11-20 15:09:04 -08:00
Adam Barth
19fe92e35d Merge pull request #521 from abarth/fix_analyzer
Fix analyzer warnings in updater package
2015-11-20 14:14:39 -08:00
Adam Barth
4cd1fb177a Fix analyzer warnings in updater package
This class was renamed to MojoEventSubscription.
2015-11-20 13:12:27 -08:00
Adam Barth
dc23af9ff1 Merge pull request #513 from abarth/improve_build_help
Be more specific about what `flutter build` does
2015-11-20 12:57:36 -08:00
Jason Simmons
1f83018f86 Download build artifacts from a zip file
This updates the Flutter tools to match the proposed new packaging of artifacts
in the engine release script.
* The GCS URL for artifacts is now gs://mojo/flutter/$revision/$platform
* Categories have been removed from the Artifact class
* All artifacts for a given platform now live in a zip file.  If an artifact
  is not present in the local cache, then the zip will be downloaded and
  extracted.

Note that darwin-x64 artifacts go through a different process that (for now)
continues to use the old format.
2015-11-20 10:27:18 -08:00
Adam Barth
18763e5609 Be more specific about what flutter build does
Fixes #512
2015-11-20 09:14:48 -08:00
Eric Seidel
847df52860 Point to Github issues instead of flutter.io
Fixes #489.

@sethladd
2015-11-19 10:29:29 -08:00
Adam Barth
fd6bc856a7 Merge pull request #458 from abarth/adb_errors
Handle adb error cases more gracefully
2015-11-18 08:17:24 -08:00
Adam Barth
3027497f85 Handle adb error cases more gracefully
We now print a sensible message if we can't find `dart` or `adb`. Also, we
print a sensible message if the device isn't authorized.

Fixes #380
Fixes #358
2015-11-17 23:23:30 -08:00
Adam Barth
b20a1f4a15 Merge pull request #457 from abarth/asset_error
Improve error message for non-existent asset
2015-11-17 23:07:27 -08:00
Adam Barth
7b75d15d46 Improve error message for non-existent asset
Now we print the name of the asset and the base directory where we looked for
the error instead of throwing a null pointer exception.

Fixes #296
2015-11-17 22:56:00 -08:00
Adam Barth
cada8b3faa Import path.dart as path rather than p
Fixes #311
2015-11-17 22:44:54 -08:00
Adam Barth
f6bd26a3f3 Make flutter run_mojo imply flutter build
This makes run_mojo more similar to flutter start.
2015-11-17 16:19:55 -08:00
Adam Barth
0760c8be7f Merge pull request #446 from abarth/improve_version
Improve flutter --version output
2015-11-17 16:05:08 -08:00
Jason Simmons
ba10546889 Merge pull request #437 from jason-simmons/apk_package
Add a Flutter command that builds an APK using a local build of the e…
2015-11-17 15:27:34 -08:00
Adam Barth
835e7f25fc Improve flutter --version output
Sample output:

```
Flutter
Repository: git@github.com:flutter/flutter.git
Branch: master
Revision: 7be58b1ae0 (62 minutes ago)
```

Fixes #433
2015-11-17 15:24:25 -08:00
Jason Simmons
07556429f2 Add a Flutter command that builds an APK using a local build of the engine
Example:
   cd flutter/examples/stocks
   flutter --engine-src-path /path/to/engine/src apk -o Stocks.apk -m apk/AndroidManifest.xml
2015-11-17 14:54:25 -08:00
Adam Barth
b8e16d7c09 Switch flutter run_mojo over to flutter.mojo
The new flutter.mojo is ready for use.
2015-11-17 14:16:20 -08:00
Hixie
56b9245b1a Allowing us to have a single error seems silly. 2015-11-17 11:08:46 -08:00
Adam Barth
a35b214d89 Merge pull request #421 from abarth/icon_sizes
Add all the icon sizes to the FLX
2015-11-16 23:01:02 -08:00
Adam Barth
a8ab3d6934 Add all the icon sizes to the FLX
Adding all the sizes of all the icons adds about 50 KB to the stocks FLX.
That's probably the right trade-off until we get better at pruning the set of
assets.

Fixes #235
2015-11-16 22:55:35 -08:00
Adam Barth
9e212017fb Add a --version option to flutter
This option just prints the current git revision.

Fixes #40
2015-11-16 22:49:30 -08:00
krisgiesing
725474c6d7 Merge pull request #416 from krisgiesing/run_mojo_fix
Allow flutter engine path to be set when using run_mojo
2015-11-16 17:06:49 -08:00
Kris Giesing
95a2af8b80 Fix analyzer errors 2015-11-16 17:00:55 -08:00
Kris Giesing
57bca7da10 Allow flutter engine path to be set when using run_mojo 2015-11-16 16:42:47 -08:00
Collin Jackson
f1f68f50d2 Merge pull request #401 from collinjackson/remove_sky_log_check
Now that #371 is fixed, we no longer need to check logs for "sky"
2015-11-16 15:57:53 -08:00
Collin Jackson
8c195c074f Now that #371 is fixed, we no longer need to check logs for "sky" 2015-11-16 14:34:54 -08:00
Collin Jackson
0aca425a8b Fix #373 Add abbreviation for flutter logs -c 2015-11-16 14:23:18 -08:00
Nathan Kerr
d36af446f2 Change Regex to correctly match against my device.
Since we don't care about the port, just allow any characters between the spaces after the device ID and the product.

Running Windows 10, running "adb devices -l" with my device attached to the computer gives:
FA34MW904146           device product:cm_m7 model:One device:m7

Which wasn't being matched correctly (no info on USB port).
2015-11-14 11:25:29 -08:00
Hixie
8ab229f89c Make the analyzer actually work.
Turns out that ignoring all error lines that match the empty string is a
poor way to go.

Also, we have to update all the example packages now too, since we
analyze them. So just have travis use our update script.

Also, remove flutter_tools' old travis stuff. It's now part of a bigger
repo.

Also, make travis use the dev Dart SDK, since we need the new analyzer.
Stable is way too out of date, e.g. it still complains about libraries
not having names and mixins using 'super', and the strong mode hints are
even more aggressive than on dev.
2015-11-12 15:41:04 -08:00
Hixie
4a5713acc8 Delete analyzer temporary directories 2015-11-12 13:11:41 -08:00
Hixie
9c6e96a3e8 Remove constructor tear-offs
Some of our workflows have no way to silence analyzer warnings, and the
analyzer doesn't yet support constructor tear-offs, so pretend that we
can't use them for now.
2015-11-12 12:39:02 -08:00
Hixie
a0227cab15 flutter analyze command
Other changes in this patch:
- Make the 'flutter' tool say "Updating flutter tool..." when it calls
  pub get, to avoid confusion about what the pub get output is about.
- Make the bash flutter tool call pub get when the revision has
  changed. (This was already happening on Windows.)
- Fix a raft of bugs found by the analyzer.
- Fix some style nits in various bits of code that happened to be near
  things the analyzer noticed.
- Remove the logic in "flutter test" that would run "pub get", since
  upon further reflexion it was determined it didn't work anyway.
  We'll probably have to add better diagnostics here and say to run the
  updater script.
- Remove the native velocity tracker script, since it was testing code
  that has since been removed.

Notes on ignored warnings:
- We ignore warnings in any packages that are not in the Flutter repo or
  in the author's current directory.
- We ignore various irrelevant Strong Mode warnings. We still enable
  strong mode because even though it's not really relevant to our needs,
  it does (more or less accidentally) catch a few things that are
  helpful to us.
- We allow CONSTANTS_LIKE_THIS, since we get some of those from other
  platforms that we are copying for sanity and consistency.
- We allow one-member abstract classes since we have a number of them
  where it's perfectly reasonable.
- We unfortunately still ignore warnings in mojom.dart autogenerated
  files. We should really fix those but that's a separate patch.
- We verify the actual source file when we see the 'Name non-constant
  identifiers using lowerCamelCase.' lint, to allow one-letter variables
  that use capital letters (e.g. for physics expressions) and to allow
  multiple-underscore variable names.
- We ignore all errors on lines that contain the following magic
  incantation and a "#" character:
    // analyzer doesn't like constructor tear-offs
- For all remaining errors, if the line contains a comment of the form
    // analyzer says "..."
  ...then we ignore any errors that have that "..." string in them.
2015-11-12 12:23:29 -08:00
Adam Barth
90991854e0 Add a flutter upgrade command
This command upgrades the version of flutter that you're using and runs
`pub upgrade` to update the transitive dependencies.
2015-11-12 10:16:13 -08:00
Devon Carew
0292180075 also listen for flutter in the adb logs 2015-11-11 21:12:14 -08:00
Devon Carew
3c943d79ec fix an issue parsing 'adb devices' output 2015-11-11 14:14:12 -08:00
Adam Barth
da0a12c611 Rename sky_tools to flutter_tools 2015-11-10 13:20:35 -08:00
Ian Hickson
0a1385d9a9 Merge pull request #66 from Hixie/better-tests
Run 'pub get' the first time the tests are run
2015-11-10 12:26:42 -08:00
Devon Carew
84c273333c Merge pull request #274 from devoncarew/init_tweak
fix a ws issue in the sample app
2015-11-10 10:43:06 -08:00
Adam Barth
b9bc5e790f Merge pull request #87 from alhaad/run_mojo_devtools
Use --devtools-path flag to run_mojo.
2015-11-10 10:27:28 -08:00
Devon Carew
20c2aa1690 fix a ws issue in the sample app 2015-11-10 08:48:03 -08:00
Hixie
bd69e2c405 Run 'pub get' the first time the tests are run 2015-11-09 13:44:04 -08:00
Adam Barth
7e8b111bcc Search all the build configurations for sky_snapshot
Previously, we assumed the first build configuration would have one. Now we
keep looking until we find one. Also, re-ordered the configurations so that
you'll get the Android one if you have both, which is probably what you would
expect.

Fixes #100
2015-11-09 13:31:49 -08:00
Alhaad Gokhale
7b19d08cc3 Use --devtools flag to run_mojo.
That way we can control if we want to use devtools to run on Linux and
also cleanly separate out the two uses.

R=@jamesr
2015-11-09 12:29:07 -08:00
Adam Barth
6e7f575950 flutter start should give better errors when it can't find main
Now we suggest using -t to specify the main Dart file.

Fixes #53
2015-11-09 11:31:11 -08:00
Ian Hickson
3419068cb3 Port test logic to Dart. 2015-11-09 09:00:49 -08:00
Adam Barth
576795dcc6 Add a CONTRIBUTING.md
This document describes the workflow for contributing code to this repository.
2015-11-08 21:56:20 -08:00
Devon Carew
4112f66312 Merge pull request #52 from devoncarew/older_android
support older android devices (>= 17)
2015-11-07 21:59:56 -08:00
Devon Carew
3b9862a52c support older android devices (>= 16) 2015-11-07 21:55:21 -08:00
Adam Barth
2710e0f468 Teach flutter init how to depend on flutter using a relative path 2015-11-07 21:30:26 -08:00
Jeff R. Allen
c8c2d23f26 Avoid use of run-as
Issue #1988 results from run-as not working on some phones,
because of Android issue 58373.

This change removes the need for run-as for running
"flutter start". It is still needed for tracing.
2015-11-07 15:28:01 +06:00
Adam Barth
2ed113430a Add dev/run_tests
This script runs the Flutter unit tests. By default, the script assumes you
have compiled a SkyShell in an "engine/src" that's a peer to the "flutter"
directory.
2015-11-06 23:14:17 -08:00
Devon Carew
a469020983 add a flutter.yaml file to the init template 2015-11-06 20:57:35 -08:00
Adam Barth
113500206a Remove the --http option 2015-11-06 20:17:24 -08:00
Jason Simmons
6e0b59fc09 Add a flag that selects which Android device ID is the target for Flutter commands 2015-11-05 15:53:32 -08:00
Adam Barth
fc8cdf4daf Add a command for running unit tests 2015-11-04 23:43:15 -08:00
Adam Barth
b4fa3fbbf0 Return to the mojo artifacts for Linux 2015-11-04 14:25:47 -08:00
Matt Perry
4ba8a7f077 Seed the RNG before signing the package. 2015-11-04 14:08:24 -05:00
Adam Barth
297e9c33fa Support Jelly Bean 2015-11-04 08:57:33 -08:00
Adam Barth
3804107e2d Enable --no-http by default
We still have the --http option as a fallback for now. Once we're confident the
--no-http version works, we'll drop the --http support.

Also, create the FLX in a temp directory and then delete the temp directory
when we're done. Finally, pull the Linux artifacts from the cloud storage
bucket that the buildbot is uploading to.
2015-11-03 19:39:47 -08:00
Devon Carew
856f04bee2 Merge pull request #169 from devoncarew/daemon
add a persistent daemon/server mode to sky_tools
2015-11-03 16:01:50 -08:00
Devon Carew
7d0a298b0b start a daemon command
wrap up first daemon implementation
2015-11-03 15:58:02 -08:00
Matt Perry
8ab21d7a9c Depend on the new flx 0.0.5 and remove use of deprecated KeyPair. 2015-11-03 15:28:55 -05:00
Hixie
466a91ab41 fix the 'dart:profiler' bug
...by requiring a new version of analyzer.

Also, when the subprocess is terminated unexpectedly, report the actual
problem in more detail.
2015-11-02 13:11:19 -08:00
Devon Carew
5978f1355d Merge pull request #162 from devoncarew/abstract_os
abstract some OS operations
2015-11-02 13:10:43 -08:00
Devon Carew
5dc4a7cce4 abstract some OS operations 2015-11-02 13:07:56 -08:00
Adam Barth
27118f39ea Add a default maniest path for build 2015-11-02 12:54:31 -08:00
Hixie
b43722e79f Handle crashing engine.
When the engine dies unexpectedly during test execution, we have to
terminate any tests running in that engine. Previously, they would just
hang. For some reason that I was never able to satisfactorily explain,
the WebSocket doesn't die in a way I can detect in this case. So
instead, we hand in a future that we only complete when we detect the
server subprocess ends.
2015-11-02 11:19:19 -08:00
Devon Carew
9ee80e4050 Merge pull request #161 from flutter/stack_trace
use stack_trace to create more readable exception traces
2015-11-02 09:24:27 -08:00
Hixie
297b90e250 Try to fix the test framework better than before
The previous attempt to port the 'test' framework to the new framework
wasn't super-successful. This does a better job, hopefully.
2015-11-02 09:09:47 -08:00
Devon Carew
70e20153ab use stack_trace to create more readable exception traces 2015-11-02 00:20:22 -08:00
Adam Barth
94b472ff67 Add a --no-http flag to start command
This flag builds a local FLX file and pushes that to the device instead of
using an HTTP server.
2015-10-31 12:18:03 -07:00
Devon Carew
48c3d01587 fix the stop command 2015-10-30 13:54:39 -07:00
Adam Barth
6e076a3522 Merge pull request #148 from alhaad/update_run_mojo_command
Modify run_mojo command to take path to devtools.
2015-10-29 16:22:36 -07:00
Alhaad Gokhale
dde6bd2034 Use a common flag for both android and linux. 2015-10-29 15:29:44 -07:00
Jason Simmons
5f742b70ba Merge pull request #145 from jason-simmons/init_dir_path
Generalize path handling in flutter init
2015-10-29 14:41:33 -07:00
Alhaad Gokhale
587f6e27fe Modify run_mojo command to take path to devtools.
Made changes as discussed.
R=@jamesr
2015-10-29 14:36:25 -07:00
Jason Simmons
ef2e038b11 Generalize path handling in flutter init
This will make "-o ." work as expected to initialize a project in the
current directory
2015-10-29 14:33:27 -07:00