## Repository contributions to the PyBitmessage project - You can get paid for merged commits if you register at [Tip4Commit](https://tip4commit.com/github/Bitmessage/PyBitmessage) ### Code - Try to refer to github issue tracker or other permanent sources of discussion about the issue. - It is clear from the diff *what* you have done, it may be less clear *why* you have done it so explain why this change is necessary rather than what it does ### Documentation - If there has been a change to the code, there's a good possibility there should be a corresponding change to the documentation - If you can't run `fab build_docs` successfully, ask for someone to run it against your branch ### Tests - If there has been a change to the code, there's a good possibility there should be a corresponding change to the tests - If you can't run `fab tests` successfully, ask for someone to run it against your branch. If you can't (and know that this fab task is not working yet), at least make sure the following commands work: - Make sure the installer still works (this may be insufficient if files are deleted) and that the installed version works. - `python setup.py install --record files.txt; tr '\n' '\0' < files.txt | xargs -0 rm -f --; python setup.py install` - `pybitmessage` - And as root: - `sudo python setup.py install --record files.txt; tr '\n' '\0' < files.txt | xargs -0 sudo rm -f --; sudo python setup.py install` - `pybitmessage` - Make sure the apps still work portably: - `./src/bitmessagemain.py` - `./src/bitmessagecli.py` - Make sure the travis test still works (currently just `pybitmessage -t` but check travis.yml for changes - Ideally, try this in a virtualenv, as a user with no venv, system-wide as root and on windows with `python setup.py bdist_wininst ; dist/Bitmessage_x64_0.6.3.2.exe` followed by uninstalling through add/remove progragrams and re-installing (actual filename may vary). ## Translations - For helping with translations, please use [Transifex](https://www.transifex.com/bitmessage-project/pybitmessage/). - There is no need to submit pull requests for translations. - For translating technical terms it is recommended to consult the [Microsoft Language Portal](https://www.microsoft.com/Language/en-US/Default.aspx). ### Gitiquette - Make the pull request against the ["v0.6" branch](https://github.com/Bitmessage/PyBitmessage/tree/v0.6) - PGP-sign the commits included in the pull request - Use references to tickets, e.g. `addresses #123` or `fixes #234` in your commit messages - Try to use a good editor that removes trailing whitespace, highlights potential python issues and uses unix line endings - If for some reason you don't want to use github, you can submit the patch using Bitmessage to the "bitmessage" chan, or to one of the developers.