Contributions and issues are most welcome! All issues and pull requests are handled through github on the ambitioninc 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.
Running the tests¶
To get the source source code and run the unit tests, run:
git clone git://github.com/ambitioninc/django-deletion-side-effects.git cd django-deletion-side-effects virtualenv env . env/bin/activate python setup.py install coverage run setup.py test coverage report --fail-under=100
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 flake8 flake8 .
Please arrange imports with the following style
# Standard library imports import os # Third party package imports from mock import patch from django.conf import settings # Local package imports from deletion_side_effects.version import __version__
Please follow Google’s python style guide wherever possible.
Building the docs¶
When in the project directory:
pip install -r requirements/docs.txt python setup.py build_sphinx open docs/_build/html/index.html
Before a new release, please go through the following checklist:
Bump version in deletion_side_effects/version.py
Add a release note in docs/release_notes.rst
Git tag the version
Upload to pypi:
pip install wheel python setup.py sdist bdist_wheel upload
Uploading to pypi can be accomplished by running python publish.py