Commit Graph

4237 Commits

Author SHA1 Message Date
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
Adam Barth
08539b4e4d Rewire the pubspecs to use local paths
Using local paths ensures that each package sees each other package at HEAD.
2015-11-06 22:46:52 -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
f5ce556472 Simplify README 2015-11-04 22:24:53 -08:00
Adam Barth
01a6356230 Rev pubspec 2015-11-04 14:26:07 -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
76c54f148b Rev pubspec 2015-11-04 09:07:29 -08: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
071ebda56f Change flutter_tools to version 0.0.34. 2015-11-03 15:41:47 -05: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
fe5f98e33b Rev sky_tools to 0.0.32. 2015-11-02 11:25:58 -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
Devon Carew
4c99319f5d Merge pull request #156 from devoncarew/skip_test_windows
skip a test on windows
2015-10-31 13:57:46 -07:00
Adam Barth
492090360a Remove some unnessary dependencies 2015-10-31 12:43:26 -07: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
Devon Carew
39cf521896 skip a test on windows 2015-10-30 13:13:58 -07:00
Adam Barth
7115ff2674 Rev pub package 2015-10-30 10:08:21 -07:00
Adam Barth
36ba2337d0 Merge pull request #150 from devoncarew/increase_timeout
increase test timeout
2015-10-30 09:39:39 -07:00
Adam Barth
6c241e38ea Merge pull request #149 from flutter/stable_sdk
Stop requiring customers to use a dev SDK
2015-10-30 09:37:58 -07:00
Devon Carew
15acf8ef6b increase test timeout 2015-10-29 16:45:11 -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
Adam Barth
64c96e0dfa Stop requiring customers to use a dev SDK 2015-10-29 16:17:13 -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
Hixie
184ab7c9aa Put an upper bound on flx dependency
In case we run into trouble, this at least gives us an escape hatch.
2015-10-29 14:35:55 -07:00
Hixie
f069ac2427 Loosen the sky_tools dependency on flx 2015-10-29 14:33:30 -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
Hixie
7aa05d4bce Release 0.0.30. 2015-10-29 14:24:35 -07:00
Todd Volkert
3d7f2126b9 Merge pull request #142 from flutter/issue_141
Wait for sky server to start before starting device
2015-10-29 14:21:07 -07:00
Todd Volkert
a57109beba Wait for sky server to start before starting device
Instead of just waiting for the sky server process to start
before we start the activity on the device, this causes us to
wait for the sky server to actually start listening on its port

Fixes #141
2015-10-29 14:19:15 -07:00
Hixie
79ceee73b2 Port our testing framework to new test library 2015-10-29 14:07:24 -07:00
Matt Perry
cbd4931579 Merge pull request #140 from mpcomplete/pubspec
Depend on exact version of flx package so I can make breaking changes.
2015-10-29 16:44:00 -04:00
Matt Perry
30ad6ebaae Depend on exact version of flx package so I can make breaking changes. 2015-10-29 16:40:13 -04:00
Devon Carew
0da7c7c6ac upgrade test 2015-10-29 11:42:02 -07:00
Devon Carew
b15bcc5c64 0.0.29 2015-10-29 11:32:54 -07:00
Devon Carew
494d1e0140 verify that we're running from the root of a project
remove an unused import

review comments

rename st --> stack
2015-10-29 11:30:44 -07:00
Devon Carew
678af9c045 fix some issues found by strong mode 2015-10-28 13:42:46 -07:00
Devon Carew
9992a3e0bb Update README.md
Add a badge for AppVeyor.

(TBR)
2015-10-28 11:18:13 -07:00
Hixie
672976aa0a Rev the Dart SDK
We also have to require a newer test package, since the old one depends
on a version of the analyzer that uses dart:profiler, which is gone and
replaced by dart:developer.
2015-10-28 09:58:11 -07:00
Matt Perry
a0886508c9 Update flutter_tools to version 0.0.27. 2015-10-26 15:29:44 -04:00
Matt Perry
828b861fce Change signing code to use shared flx package. 2015-10-26 15:14:01 -04:00
Devon Carew
b7f918c92b change how we specify test timeout 2015-10-24 12:33:17 -07:00
Devon Carew
98d61fc181 create an all.dart test script to work around an issue with pub run test on windows 2015-10-24 12:28:05 -07:00
Devon Carew
e7da41afd5 Update init_test.dart
Increase the test timeout for the `init` test to 2 minutes (test was timing out downloading assets on appveyor).
2015-10-24 11:42:19 -07:00
Devon Carew
5dbeb8f018 fix tests on windows
remove a runInShell arg on windows when launching pub
2015-10-23 22:44:56 -07:00
Chinmay Garde
6b2d6fdc8c Update pubspec and changelog for 0.0.26 2015-10-23 14:54:03 -07:00
Nathan Kerr
bfeaaa8fb7 Web paths should always replace \ with / 2015-10-23 14:04:09 -07:00
Nathan Kerr
54e45e2b56 Don't rely on external shasum program to calculate sum of the APK.
Windows has no direct way to kill a process based on port. Uses netstats and loops through the results to find the correct process to kill.

Also modify Process.run for the server to runInShell if on Windows.

Style nits.
2015-10-23 13:06:26 -07:00
Chinmay Garde
21f91bda52 Merge pull request #115 from chinmaygarde/master
Avoid script snapshot creation if the --precompiled flag is set during builds
2015-10-20 21:44:52 -07:00
Devon Carew
d4940c5cd4 set a min. dep of sdk 1.13 2015-10-20 19:01:05 -07:00
Chinmay Garde
9a67954b66 Avoid script snapshot creation if the --precompiled flag is set during builds 2015-10-20 18:50:19 -07:00
Matt Perry
b53e726404 Update flutter_tools version to 0.0.25. 2015-10-19 16:33:54 -04:00
Matt Perry
b458935b84 Support signing flx packages with ECDSA key pair
Adds a --private-key option to the build command, which specifies an ECDSA
private key. When this is provided along with a manifest, the manifest is
prepended to the .flx package and signed with the private key. The manifest
also includes a SHA-256 hash of the zipped content portion of the .flx package.

This is used by the Flutter updater package, to verify that updates are
from the right publisher.
2015-10-19 16:08:53 -04:00
Adam Barth
5670243b53 Sanity check --local-build directory
Fixes https://github.com/flutter/engine/issues/1613
2015-10-19 09:52:56 -07:00
Devon Carew
1999db2973 0.0.24 2015-10-18 12:37:59 -07:00
Devon Carew
bb1da703a6 return exit codes on failures 2015-10-17 11:50:23 -07:00
Adam Barth
3c9c31332a run_mojo can't find ArtifactStore.packageRoot
The `run_mojo` command doesn't integrate with `FlutterCommand` and doesn't
understand how to download its toolchain components ahead of time. Eventually
we should teach `run_mojo` how to integrate with the `Toolchain` class, but
until then, we can fix the regression by eagerly setting
`ArtifactStore.packageRoot` again.

Fixes https://github.com/domokit/mojo/issues/475
2015-10-15 20:06:30 -07:00
Adam Barth
db6a7abdca Rev pub spec 2015-10-14 15:26:37 -07:00
Adam Barth
dff0edbc97 init command errors out
We were checking for a pubspec.yaml too early.
2015-10-14 15:25:58 -07:00
Adam Barth
abe69c7f06 Rev pub spec 2015-10-14 15:19:19 -07:00
Adam Barth
047038b95a Support non-rooted Android devices
Now we use a debuggable APK and chmod the installation directory to be world
readable/writable.

Fixes https://github.com/flutter/engine/issues/126
2015-10-14 13:57:55 -07:00
Adam Barth
4477f7255a Rev pub package 2015-10-13 16:57:59 -07:00
Adam Barth
80f30d9176 Don't dump a stack trace for a usage exception
Instead, just print the usage.
2015-10-13 13:37:41 -07:00
Adam Barth
f0a1632dd6 Add a --local-build flag to detect engine src paths
A common use case for members of the Flutter team is to have a dependency
override for the flutter package that points back into the engine src tree.
We can use that override to automatically detect the engine src path, which
makes the command line shorter.
2015-10-13 10:35:53 -07:00
Adam Barth
12f75817ce Refactor the build command so that it can be used internally
Instead of calling through `pub` to invoke build, this patch refactors the
build command so that it can be called directly.
2015-10-13 10:00:06 -07:00
Adam Barth
d9af939995 Improve error message when missing the package-root 2015-10-12 14:01:05 -07:00
Adam Barth
9c4835100b Handle the case of a non-connected Android device better
Previous we dumped a stack trace. Now we produce a more sensible error.
2015-10-12 11:05:09 -07:00
Adam Barth
ca909c9252 Rev pub package 2015-10-12 01:38:09 -07:00
Adam Barth
0e06feee01 Add some print statements to smooth first run
This patch adds a couple print statements to explain why the first run of
`flutter start` takes a while. (We need to download the APK and install it on
the device.)
2015-10-12 01:33:03 -07:00
Adam Barth
a157e0eac0 Rev pub package 2015-10-12 01:06:20 -07:00
Adam Barth
8df5e9f738 Polish up some error handling
This patch improves the error handling for several arbitrary issues I
encountered while experimenting with the tool this evening.
2015-10-12 00:55:13 -07:00
Adam Barth
bdd20661d7 Teach sky_tools about prebuilt artifacts
This patch makes `flutter start` work without a clone of the engine git
repository. Making this work pulled a relatively large refactor of how the
commands interact with application packages and devices. Now commands that want
to interact with application packages or devices inherit from a common base
class that holds stores of those objects as members.

In production, the commands download and connect to devices based on the build
configuration stored on the FlutterCommandRunner. In testing, these fields are
used to mock out the real application package and devices.
2015-10-12 00:03:55 -07:00
Ian Fischer
a6a3f212ee IOSSimulator implementation.
Also fixes some minor bugs with iOS and Android interactions.
2015-10-11 19:36:06 -07:00
Adam Barth
4191ed4921 Don't mention --install
The --install command isn't needed anymore. We automatically detect when
we need to install the APK.
2015-10-11 12:33:59 -07:00
Adam Barth
25eaaefd26 Switch init command over to package:flutter 2015-10-11 11:57:22 -07:00
Adam Barth
9148e1779f Expose main via executable.dart
Expose the main entry point for the tools via the library lets us run the tools
from the Flutter package, which simplifies the setup for end developers because
they don't need to declare a dependency on sky_tools directly.
2015-10-10 00:15:21 -07:00
Devon Carew
7ba6342f88 remove an unused import 2015-10-10 00:00:50 -07:00
Adam Barth
e17190df63 Merge pull request #85 from flutter/command_dir
Move Command subclasses into commands directory
2015-10-09 23:28:19 -07:00
Adam Barth
561350d238 Merge pull request #81 from Iheartweb/patch-1
Changing Desc to match Github Desc.
2015-10-09 23:24:15 -07:00
Adam Barth
287817f224 Move Command subclasses into commands directory
I'm trying to get a feel for the code by writing some simple cleanup patches.
2015-10-09 23:22:20 -07:00
Devon Carew
f7646679dc update the starter app template 2015-10-09 16:55:43 -07:00
Ian Fischer
51f1eb3581 Merge pull request #82 from iansf/ios_listen
Get iOS devices working on Mac if you specify sky-src-path.
2015-10-09 16:51:03 -07:00
Ian Fischer
ae32410995 Get iOS devices working on Mac if you specify sky-src-path. 2015-10-09 16:23:33 -07:00
Robert Martone
e1c46f42cc Changing Desc to match Github Desc. 2015-10-09 13:19:02 -07:00
Adam Barth
99de081860 Merge pull request #77 from chinmaygarde/master
Fix Flutter project template
2015-10-09 09:38:42 -07:00
Ian Fischer
f4ec459c23 Add support for log commands on iOS. 2015-10-08 15:10:25 -07:00
Ian Fischer
43aaf50e05 Merge pull request #78 from iansf/ios_start
Add implementation of start and stop commands for iOS.
2015-10-07 15:45:34 -07:00
Ian Fischer
844678ddce Add implementation of start and stop commands for iOS. 2015-10-07 15:44:02 -07:00
Ian Fischer
72cc4d6fde Don’t give a scary error about not being able to run on Android if there’s no Android device connected. 2015-10-07 15:29:13 -07:00
Chinmay Garde
d92f3fedde Fix Flutter project template 2015-10-07 11:26:55 -07:00
James Robinson
fbb1f866d4 Merge pull request #73 from afandria/patch-1
Forward additionalArgs in run_mojo.dart
2015-10-06 19:53:28 -07:00
Ian Fischer
97f62f89c1 Merge pull request #76 from iansf/ios_start
Just log, don’t exit when the user is missing access to a command. Prevents inappropriately-failing tests.
2015-10-06 17:34:24 -07:00
Ian Fischer
7990e874df Just log, don’t exit when the user is missing access to a command. Prevents inappropriately-failing tests. 2015-10-06 16:19:06 -07:00
Devon Carew
3694517617 run tests sequentially 2015-10-06 16:00:24 -07:00
Devon Carew
f98f134ccf ws changes to prod the build 2015-10-06 15:48:04 -07:00
Devon Carew
5c6c3d9d81 ws 2015-10-06 14:52:45 -07:00
Devon Carew
15cba8f2eb rev the pubspec version 2015-10-06 14:35:18 -07:00
Ian Fischer
a9cbe436c4 Merge pull request #67 from iansf/ios_basics
Beginning implementation of IOSDevice. Implements list and install.
2015-10-06 14:20:53 -07:00
Alex Fandrianto
60cf54d6c2 Forward additionalArgs in run_mojo.dart
In 0.0.15, additional cmdline arguments were not dropped, but now in 0.0.16, the arguments are no longer forwarded.
This patchset would restore this forwarding functionality.

For example, the following command is intended to pass `enable-multiprocess` to the mojo_shell.
`enable-multiprocess` in 0.0.16 does not get passed along, but this patchset would allow it to once again.

pub run sky_tools -v --very-verbose run_mojo \
	--mojo-path $MOJO_DIR/src \
	--app app.flx --android \
	-- \
	--enable-multiprocess
2015-10-06 13:14:22 -07:00
Devon Carew
524d8379f4 more verbose test failures 2015-10-06 12:08:08 -07:00
Ian Fischer
12192d00c1 Beginning implementation of IOSDevice. Implements list and install.
Also update tests to be compatible with the presence of iOS and add tests for list and install.
2015-10-06 11:46:29 -07:00
Devon Carew
0364590b83 delay looking for android devices 2015-10-06 11:36:48 -07:00
Chinmay Garde
ad155b23a5 Update pubspec revision to 0.0.16 2015-10-06 10:53:29 -07:00
Chinmay Garde
a15e857658 Address PR concerns 2015-10-05 16:52:16 -07:00
Chinmay Garde
5c922df835 Use the App widget in the Flutter app template 2015-10-05 16:14:54 -07:00
Chinmay Garde
31498881ce Convert default project template to fn3 2015-10-05 15:40:36 -07:00
Chinmay Garde
6f640275bd Update dart project template 2015-10-05 14:58:29 -07:00
Ian Fischer
d07ca92995 Basic sky_tools list command, Android implementation, and test. 2015-10-01 08:43:57 -07:00
Ian Fischer
b8085cd033 Add sky_tools trace command, Android implementation, and basic test. 2015-09-30 14:02:29 -07:00
Ian Fischer
00bed774ce Add listen command and basic test, and don’t do unnecessary repeated work when listening or poking the android server. 2015-09-29 17:10:47 -07:00
Ian Fischer
2bc289dec9 Merge pull request #61 from iansf/android_logs
Add optional prefix to runCommandAndStreamOutput for logs commands.
2015-09-29 14:41:26 -07:00
Ian Fischer
6a5fe19540 Basic sky_tools logs test. 2015-09-29 14:26:42 -07:00
Ian Fischer
a6635489f5 Add optional prefix to runCommandAndStreamOutput for logs commands. 2015-09-29 14:15:29 -07:00
Ian Fischer
5e11889160 Add logs command and android implementation. 2015-09-29 11:51:33 -07:00
Ian Fischer
61bfe5ce84 Unify process_wrapper and process to have the same api and logging styles.
Also add unchecked runSync wrapper and use it in places where command failures don’t matter.
2015-09-29 10:30:13 -07:00
Ian Fischer
8cac55a4e2 Add sky_tools start command and associated android support. 2015-09-29 09:54:10 -07:00
Ian Fischer
6bfd60f217 Merge pull request #56 from iansf/android_stop
Add stop command and supporting Android support.
2015-09-29 09:28:23 -07:00
James Robinson
f7e20f4a46 Check that the platform is linux before downloading linux-x64 binaries 2015-09-25 17:42:28 -07:00
James Robinson
2fe4484d9c Merge pull request #57 from jamesr/fix_build
Fix sky_tools build command to look for package-root in global args
2015-09-25 17:39:06 -07:00
James Robinson
9e2a83cfa3 Fix sky_tools build command to look for package-root in global args 2015-09-25 16:25:48 -07:00
Ian Fischer
fa59233746 Add stop command and supporting Android support. 2015-09-25 16:16:19 -07:00
James Robinson
ed2877c093 Add --checked flag to mojo_run that runs sky_viewer in checked mode
Also refactors the command line assembling to make a bit more sense.

Fixes #53
2015-09-25 16:14:12 -07:00
James Robinson
9996d4255e Configure ArtifactStore for all commands and make 'package-root' universal
This makes the 'package-root' option universal for sky_tools and configures the
ArtifactStore with it statically at startup. The actual sky_engine revision
is computed on demand.
2015-09-25 15:56:20 -07:00
James Robinson
be0b3e61be Merge pull request #52 from nlacasse/release-debug
run_mojo: Add --mojo-release and --mojo-debug flags.
2015-09-25 15:07:04 -07:00
Nicolas Lacasse
f600beeb70 run_mojo: Add --mojo-release and --mojo-debug flags.
The flags control which build of mojo to run (Debug or Release).
Default is Release.
2015-09-25 14:51:03 -07:00
Devon Carew
c35c06e6f2 rename sky ==> flutter in the starting app template 2015-09-25 13:28:21 -07:00
James Robinson
5c9413d0f6 Merge pull request #49 from jamesr/cached_file_location
Make cached artifact location mirror local builds more closely
2015-09-25 12:28:39 -07:00
James Robinson
b7fc56eb31 Make cached artifact location mirror local builds more closely 2015-09-25 11:27:07 -07:00
James Robinson
36c03cb40e Fix sky_tools cache clear command 2015-09-25 11:13:15 -07:00
Ian Fischer
3638f9380d Merge pull request #46 from iansf/android_start
Refactor all the commands to be Commands from the Args package.  Also use CommandRunner for the top-level command.
2015-09-24 16:01:19 -07:00
Ian Fischer
cae053c353 Refactor all the commands to be Commands from the Args package. Also use CommandRunner for the top-level command. 2015-09-24 15:51:23 -07:00
James Robinson
206104b820 Update mojo_run to no longer embed a window manager
sky_viewer.mojo no longer needs a window manager embedding as of
sky_engine 0.0.27, so this updates the sky_tools run_mojo command so it works
again. This really should be expressed in the pubspec dependencies to avoid
broken combinations but that needs to happen on the sky side.
2015-09-24 12:26:11 -07:00
Adam Barth
a49120c667 Rev pub package 2015-09-23 10:34:53 -07:00
James Robinson
70c1856c06 Merge pull request #45 from jamesr/run_mojo_args
Forward additional arguments to runner in run_mojo command
2015-09-23 10:33:06 -07:00
Devon Carew
f554ba4176 Merge pull request #39 from devoncarew/path_issue
fix a path issue when creating new flutter apps
2015-09-23 09:50:16 -07:00
James Robinson
be4a9d941f Forward additional arguments to runner in run_mojo command 2015-09-23 09:48:20 -07:00
James Robinson
f735604aca Add cache command to sky_tools with subcommands for populating/clearing
This adds the following commands to sky_tools:
  sky_tools cache clear: Nukes all local artifacts in the cache
  sky_tools cache populate: Populates the cache with all known artifacts

This is useful both to fix busted caches and to make sure that the cache is
fully populated so that subsequent operations can proceed without needing
network access.
2015-09-22 20:35:31 -07:00
James Robinson
0758c5922f Instantiate ArtifactStore explicit with packageRoot
This teaches commands that need binary artifacts to explicitly instantiate an
instance of the ArtifactStore with the appropriate packageRoot string. The
ArtifactStore can then remember the package root and compute the engine
revision when created and remember those for subsequence calls.
2015-09-22 17:17:01 -07:00
James Robinson
e5d65bcc60 Merge pull request #40 from jamesr/run_mojo_android
Teach sky_tools mojo_run to run on Android (using mojo devtools)
2015-09-22 15:29:34 -07:00
James Robinson
20e5355239 Teach sky_tools mojo_run to run on Android (using mojo devtools)
This teaches sky_tools mojo_run --android to invoke mojo's devtool's mojo_run
script with the right flags for invoking sky_viewer on android. This tells the
devtools script to load sky_viewer.mojo from https://storage.googleapis.com/...
and to load app.flx (or whatever the developer specifies as --app) from the
filesystem using the devtools http server.
2015-09-22 15:25:42 -07:00
Ian Fischer
343d96a48e Some basic tests for AndroidDevice that don’t require a device to be attached. 2015-09-22 15:17:11 -07:00
Ian Fischer
0cc758d24e Set up plumbing for getting relevant paths to the right places without too much global state.
`dart bin/sky_tools.dart --debug --sky-src-path=/path/to/sky/src/ install` now works.
2015-09-22 11:17:39 -07:00
Devon Carew
1532005ee6 fix a path issue when creating new flutter apps 2015-09-22 10:53:55 -07:00
James Robinson
20d9d6a9e2 Make sky_tools help strings consistently refer to Flutter app, not package 2015-09-22 10:38:54 -07:00
James Robinson
542da8ccd5 Adds a run_mojo command that downloads sky_viewer.mojo and runs an flx in it
This initial version assumes the developer has mojo_shell and all other services
sitting on disk somewhere and that they're on linux and only want to run on
linux. This can be generalized down the line to support more use cases. This
downloads the sky_viewer.mojo corresponding to the packages/sky_engine/REVISION
in the developer's directory, so they can specify whatever revision they want.
sky_tools run_mojo downloads sky_viewer.mojo into its cache directory if it is
not present and constructs a command line to pass to mojo_shell that maps the
shebang stamped into the flx to the downloaded sky_viewer.mojo.

Since sky_viewer.mojo lives in the cloud and mojo_shell can load from the cloud
this could also map to an https URL. This should likely be an option.
2015-09-21 22:06:05 -07:00
Adam Barth
88a5cf95d2 Rev pub package 2015-09-21 11:04:40 -07:00
Devon Carew
9e02fed4e4 Merge pull request #35 from devoncarew/check_all_code
check all the dart code in the project, not just selected libraries
2015-09-19 13:48:00 -07:00
Adam Barth
fe5d511340 Update README.md
s/sky_tools/tools/
2015-09-19 08:50:26 -07:00
Adam Barth
577f8e4a1e Update README.md
s/domokit/flutter/
2015-09-19 08:45:18 -07:00
Devon Carew
a4ff100408 check all the dart code in the project, not just selected libraries 2015-09-18 20:59:32 -07:00
James Robinson
a320e712de Address review feedback from pull request #30 2015-09-18 17:03:51 -07:00
James Robinson
7f8319fd25 Merge pull request #30 from jamesr/download_sky_snapshot
Download sky_snapshot from the cloud
2015-09-18 17:02:25 -07:00
James Robinson
cbc35dfacb Download sky_snapshot from the cloud
This adds logic to download and use the sky_snapshot binary from
Google cloud storage when running the 'sky_tools build' command.
The downloaded binary is put into lib/cache/... The binary is
chosen to match the REVISION in the sky_engine package in the
packages directory of whichever package the user wishes to
build a flx from.

Known issues:
*) Assumes linux-x64 host
*) Assumes download will always produce valid executable
*) No clearing of stale cache entries
2015-09-18 16:58:57 -07:00
Ian Fischer
670f14e0f8 Add missing semicolon 2015-09-18 16:29:47 -07:00
Adam Barth
9ba2a6e136 Merge pull request #29 from jamesr/stamp_skyx
Prepend mojo shebang to skyx files
2015-09-17 16:01:31 -07:00
James Robinson
0b2a946b23 Prepend mojo shebang to skyx files
skyx files are zips, so they can have anything at the start. Having
a shebang line at the start makes it easier to run skyx files in a mojo
environment.
2015-09-17 15:27:33 -07:00
Adam Barth
6626817c86 Rev pub package 2015-09-17 15:26:31 -07:00
Adam Barth
3e9ceec0b1 Improve sky_tools build so that it works from sky_engine
With this patch, we can switch over to using this command from the build system
in the sky_engine repo.
2015-09-17 15:12:15 -07:00
Adam Barth
a75e79f0ce Address review comments from @iansf 2015-09-17 14:02:55 -07:00
Adam Barth
cf41a63396 Add a build command to sky_tools
This command will produce an flx package. Currently, this command doesn't work
because we don't have the Flutter compiler downloaded from Google storage yet.
A future patch will make that happen.
2015-09-17 13:37:53 -07:00
Adam Barth
e8ef4704ea Rev pub package 2015-09-16 16:48:49 -07:00
Adam Barth
f379a01946 Handle subprocess crashes during testing 2015-09-16 16:47:22 -07:00
Adam Barth
76a51409c5 Remove stray }
This stray line was causing an analyzer error.
2015-09-16 14:35:09 -07:00
Ian Fischer
c5ea40980a Most of the infrastructure needed to install an APK on Android. 2015-09-16 12:56:10 -07:00
Ian Fischer
d8d87f1833 Add very-verbose flag and automatically log some more process-related things in verbose and very-verbose modes. 2015-09-16 10:57:15 -07:00
Ian Fischer
b72d67a8fe Private setup methods for AndroidDevice. 2015-09-15 17:20:49 -07:00
Ian Fischer
5678c12433 Add verbose flag to sky_tools and basic logging capabilities. 2015-09-15 16:08:59 -07:00
Devon Carew
e6b45c5023 use mokito in the init tests 2015-09-11 16:12:27 -07:00
Ian Fischer
ab441685e2 Test install command 2015-09-11 15:26:55 -07:00
Ian Fischer
81746e980c Initial sketch of install command and what devices look like. 2015-09-11 12:44:47 -07:00
Ian Fischer
384ded5b91 Begin refactoring API around CommandHandlers and using it consistently in subclasses.
Also applies autoreformatting to init.dart.
2015-09-10 14:50:49 -07:00
Adam Barth
f4ed42e55b Rev pub package 2015-08-20 20:58:18 -07:00
Adam Barth
01afe5a612 Update loadVMFileHook to the real location 2015-08-20 19:46:48 -07:00
Adam Barth
f77983baa8 Adds experimental pub run sky_tools:sky_test command
This command uses package:test to run Dart tests with sky_shell.  For this to
work, we need https://github.com/dart-lang/test/tree/hacky-loader-hook to land.
We're also not smart enough to find sky_shell ourselves yet. Instead, we take
the path as input using an environment variable. Eventually, we'll be able to
get the sky_shell executable from package:sky_engine, but we don't yet ship
that executable.
2015-08-19 23:57:41 -07:00
Adam Barth
f7fa689da4 Add support for HEAD requests 2015-08-13 11:20:19 -07:00
Adam Barth
e98f8cc03d Rev pub package 2015-08-12 09:09:00 -07:00
Adam Barth
d0cec84e52 Be more agressive about not caching with sky_server 2015-08-12 09:07:21 -07:00
Eric Seidel
83bff59a0a Rev the pubspec version 2015-08-10 17:41:40 -07:00
Eric Seidel
9b5bd5805b Add a dependency on sky_tools
This is needed to make pub run sky_tools:sky_server work.
Partial fix for https://github.com/domokit/sky_engine/issues/539
2015-08-10 17:29:38 -07:00
Devon Carew
ef163af495 fix a typo in the pubspec 2015-08-10 17:22:05 -07:00
Devon Carew
1a80827dc8 bump the pubspec version 2015-08-09 23:54:15 -07:00
Devon Carew
a03deafac8 update the sky_tools template and readme 2015-08-09 23:50:16 -07:00
Devon Carew
52f78d4fe4 run tests on the bot 2015-08-08 04:09:10 -07:00
Devon Carew
fd21db9436 add a changelog 2015-08-08 04:05:32 -07:00
Devon Carew
987ce972d6 use mustache4dart 2015-08-07 16:42:10 -07:00
Devon Carew
b114623b1a fix typo 2015-08-07 14:26:50 -07:00
Devon Carew
cec6288972 merge to master 2015-08-07 14:22:19 -07:00
Devon Carew
2efd13159c add a sky_tools init command to create a new project 2015-08-07 14:20:14 -07:00
Collin Jackson
b2679dbc71 Update version
TBR=abarth
2015-08-07 12:58:04 -07:00
Collin Jackson
471d7b4802 Refactor per abarth feedback 2015-08-07 12:52:54 -07:00
Devon Carew
66657a81ee fix typo in tool/travis.sh 2015-08-06 18:58:33 -07:00
Devon Carew
4aa0fae54d make tool/travis.sh executable 2015-08-06 18:53:14 -07:00
Devon Carew
990b362849 Update README.md
Add a travis badge.
2015-08-06 18:50:52 -07:00
Devon Carew
0257cbd12b build sky_tools using travis 2015-08-06 14:25:55 -07:00
Adam Barth
777f0c35d4 Rev pub package 2015-07-31 20:32:27 -07:00
Adam Barth
a9e4336a7b Update shelf_static and enable directory listing 2015-07-31 20:27:50 -07:00
Adam Barth
0d57d60650 Rev version 2015-07-29 16:28:05 -07:00
Adam Barth
a982f0213b Add the option to log to sky_server 2015-07-29 16:27:41 -07:00
Adam Barth
d1f0a8d1e9 Rev package version 2015-07-27 10:04:07 -07:00
Adam Barth
b45a6442c5 Turn off gzip
This feature appears to be causing problems with OkHTTP's cache.
2015-07-27 10:03:22 -07:00
Adam Barth
08a64a92f8 Roll version 2015-07-23 21:46:26 -07:00
Adam Barth
bb2f54bb91 Use shelf instead of http_server
This patch switches sky_server.dart to use shelf rather than http_server.
2015-07-23 19:51:03 -07:00
Adam Barth
6d8255ff04 Roll version 2015-07-23 00:14:16 -07:00
Adam Barth
0365fefaca Let sky_server follow links outside of the current directory 2015-07-23 00:13:51 -07:00
Adam Barth
470186cea5 A little bit more README text 2015-07-22 23:46:46 -07:00
Adam Barth
386f6c545b Add an environment dependency 2015-07-22 23:45:05 -07:00
Adam Barth
041275e80c Add a basic HTTP server for Sky 2015-07-22 23:42:22 -07:00
Adam Barth
646ff43f9b Iterate on build_sky_apk.dart 2015-07-21 10:10:36 -07:00
Adam Barth
688fb26ae3 Add a first draft of build_sky_apk.dart 2015-07-20 17:22:22 -07:00
Adam Barth
3167629990 Add README.md and LICENSE 2015-07-20 17:20:31 -07:00