Contributions and issues are most welcome! All issues and pull requests are handled through github on the micahhausler repository. Also, please check for any existing issues before filing a new one. If you have a great idea but it involves big changes, please file a ticket before making a pull request! We want to make sure you don't spend your time coding something that might not fit the scope of the project.
To get all the development libraries, run:
$ git clone git://github.com/micahhausler/python3-utils.git $ cd python3-utils $ virtualenv env $ . env/bin/activate $ pip install -e .[all]
To get the source source code and run the unit tests, run:
$ pip install -e .[test] $ python setup.py install $ python setup.py nosetests
While 100% code coverage does not make a library bug-free, it significantly reduces the number of easily caught bugs! Please make sure coverage is at 100% before submitting a pull request!
For code quality, please run flake8:
$ pip install -e .[test] $ flake8 .
Please arrange imports with the following style
# Standard library imports
import os
# Third party package imports
from mock import patch
# Local package imports
from python3_utils.version import __version__
Please follow Google's python style guide wherever possible.
When in the project directory:
$ pip install -e .[docs] $ python setup.py build_sphinx $ open docs/_build/html/index.html
Before a new release, please go through the following checklist:
Bump version in python3_utils/version.py
Add a release note in docs/release_notes.rst
Git tag the version
Upload to pypi:
pip install -e .[packaging] python setup.py sdist bdist_wheel upload