Contributing to Tron¶
Tron is an open source project and welcomes contributions from the community. The source and issue tracker are hosted on github at http://github.com/yelp/Tron.
Setting Up an Environment¶
Tron works well with virtualenv, which can be setup using virtualenvwrapper:
$ mkvirtualenv tron --distribute --no-site-packages
$ pip install -r dev/req_dev.txt
req_dev.txt
contains a list of packages required for development,
to run the tests, and Sphinx to build the documentation.
Coding Standards¶
All code should be PEP8 compliant, and should pass pyflakes without warnings. All new code should include full test coverage, and bug fixes should include a test which reproduces the reported issue.
This documentation must also be kept up to date with any changes in functionality.
Running Tron in a Sandbox¶
The source package includes a development logging.conf and a sample configuration file with a few test cases. To run a development instance of Tron create a working directory and start trond using the following:
$ make dev
Running the Tests¶
Run the tests using make test
.
Contributing¶
There should be a github issue created prior to all pull requests. Pull requests
should be made to the Yelp:development
branch, and should include additions to
CHANGES.txt
which describe what has changed.