Contributing¶
Submitting Patches¶
Fork. Follow PEP 8!
Write/Update tests (see below).
Document. Docstrings follow the Google Python Style Guide (docs by Sphinx). You can ‘test’ documentation:
$ pip install .[docs] $ cd docs && make html # generated in docs/_build/html/
Open Pull Request. To the
masterbranch.Changelog. This project uses towncrier for managing the changelog. Please consider creating one or more ‘news fragment’ in the
/news/directory and adding them to your PR, in the style of<issue_or_pr_number>.<type>where ‘type’ is one of: ‘feature’, ‘bugfix’, ‘doc’, ‘removal’ or ‘misc’.See towncrier (New Fragments) for more details. Example:
$ echo 'Fixed a thing!' > gtts/news/1234.bugfix
Note
Please don’t hesitate to contribute! While good tests, docs and structure are
encouraged, I do welcome great ideas over absolute comformity to the above!
Thanks! ❤️
Testing¶
Testing is done with the
unittest framework.As a rule, the file
./tests/test_<module>.py file tests the <module> module.To run all tests (testing only language ‘en’ and generating an html coverage
report in gtts/htmlcov/):
$ pip install .[tests]
$ TEST_LANGS=en pytest -v -s gtts/ --cov=gtts --cov-report=html