59 lines
1.8 KiB
Markdown
59 lines
1.8 KiB
Markdown
# Contributing
|
|
Want to contribute? Great! First, read this page.
|
|
|
|
|
|
## Before you contribute
|
|
Before we can use your code, you must sign the
|
|
[Google Individual Contributor License Agreement]
|
|
(https://cla.developers.google.com/about/google-individual)
|
|
(CLA), which you can do online. The CLA is necessary mainly because you own the
|
|
copyright to your changes, even after your contribution becomes part of our
|
|
codebase, so we need your permission to use and distribute your code. We also
|
|
need to be sure of various other things—for instance that you'll tell us if you
|
|
know that your code infringes on other people's patents. You don't have to sign
|
|
the CLA until after you've submitted your code for review and a member has
|
|
approved it, but you must do it before we can put your code into our codebase.
|
|
Before you start working on a larger contribution, you should get in touch with
|
|
us first through the issue tracker with your idea so that we can help out and
|
|
possibly guide you. Coordinating up front makes it much easier to avoid
|
|
frustration later on.
|
|
|
|
### The small print
|
|
Contributions made by corporations are covered by a different agreement than
|
|
the one above, the
|
|
[Software Grant and Corporate Contributor License Agreement](https://cla.developers.google.com/about/google-corporate).
|
|
|
|
## Pre-submit Steps
|
|
|
|
### Code reviews
|
|
All submissions, including submissions by project members, require review. We
|
|
use GitHub pull requests for this purpose.
|
|
|
|
### Testing
|
|
To run the unit tests for Mobly to verify your local changes:
|
|
|
|
Make sure you have `tox` installed:
|
|
```sh
|
|
pip3 install tox
|
|
```
|
|
|
|
Then in the Mobly directory, run:
|
|
```sh
|
|
mobly $ tox
|
|
```
|
|
|
|
### Code style
|
|
Before pushing your changes, you need to lint the code style via `yapf`
|
|
|
|
To install `yapf`:
|
|
|
|
```sh
|
|
$ pip3 install yapf
|
|
```
|
|
|
|
To lint the code:
|
|
|
|
```sh
|
|
mobly $ yapf -i {files you modified}
|
|
```
|