blob: aa0264b7aaa43928d99ec2b5d2f4bb84c4601863 [file] [view]
Contributing to Sky Engine
==========================
Getting the code
----------------
To get the code:
* Fork https://github.com/domokit/sky_engine into your own GitHub account.
* [Download depot_tools](http://www.chromium.org/developers/how-tos/install-depot-tools)
and make sure it is in your path.
* Create a `.gclient` file in an empty directory with the following contents:
```
solutions = [
{
"managed": False,
"name": "src",
"url": "git@github.com:<your_name_here>/sky_engine.git",
"custom_deps": {},
"deps_file": "DEPS",
"safesync_url": "",
},
]
target_os = ["android"]
```
* `svn ls https://dart.googlecode.com/` and accept the certificate permanently.
* `gclient sync`
* `cd src`
* `git remote add upstream git@github.com:domokit/sky_engine.git`
Building the code
-----------------
Currently we support building for an Android target and for a headless Linux
target.
### Android
* (Only the first time) `./build/install-build-deps-android.sh`
* `./sky/tools/gn --android`
* `ninja -C out/android_Debug`
* `./sky/tools/shelldb start out/android_Debug/ sky/sdk/example/hello_world/lib/main.dart`
### Linux
* (Only the first time) `./build/install-build-deps.sh`
* `./sky/tools/gn`
* `ninja -C out/Debug`
* `./mojo/tools/mojodb start out/Debug sky/sdk/example/hello_world/lib/main.dart`
Contributing code
-----------------
The Sky engine repository gladly accepts contributions via GitHub pull requests:
* `git fetch upstream`
* `git checkout upstream/master -b name_of_your_branch`
* Hack away
* `git commit -a`
* `git push origin name_of_your_branch`
* `git pull-request` (if you are using [Hub](http://github.com/github/hub/)) or go to `https://github.com/<your_name_here>/sky_engine` and click the
"Compare & pull request" button
You must complete the
[Contributor License Agreement](https://cla.developers.google.com/clas).
You can do this online, and it only takes a minute.
If you've never submitted code before, you must add your (or your
organization's) name and contact info to the [AUTHORS](AUTHORS) file.
Running tests
-------------
Tests are only supported on Linux currently.
* ``sky/tools/test_sky --debug``
* This runs the tests against ``//out/Debug``. If you want to run against
``//out/Release``, omit the ``--debug`` flag.