Contributing

Fork, Clone

Fork the SpockBot repository, then clone your fork locally.

Setup

Configure remote

$ cd SpockBot
$ git remote add upstream git://github.com/SpockBotMC/SpockBot

Install development dependencies

$ pip3 install -r dev-requirements.txt

Install extra test interpreters

Installing the extra interpreters allows tox to test against multiple versions of python.

$ sudo apt-get install python2.7 python3.3 python3.4

Development

Create development branch

Do not work in the master branch, create a bug or feature branch and work from there. master should always be a mirror of upstream master.

$ git checkout -b feature-tacocat

Please use a more descriptive branch name than feature-tacocat

Hack away at the code

Have fun!

Docstrings

We use Google Style Python Docstrings, an example can be found here

Test your changes

Running tox will test that your changes pass all tests and follows the pep8 standard.

$ tox

Pull Request

If tox comes back with a success you are ready for a pull request. Commit your changes to your feature branch, push them to your fork and create a pull request.

Testing

We highly encourage writing tests, we use the pytest framework and you can run tox to test your newly written tests.