Bug reports and feature requests¶
You can report bugs and request features in the bug tracker.
Please search the existing database for duplicates before filing an issue.
git clone --config fetch.fsckobjects=false https://github.com/jazzband/django-debug-toolbar.git
Once you’ve obtained a checkout, you should create a virtualenv and install the libraries required for working on the Debug Toolbar:
$ pip install -r requirements_dev.txt
You can run now run the example application:
$ DJANGO_SETTINGS_MODULE=example.settings python -m django migrate $ DJANGO_SETTINGS_MODULE=example.settings python -m django runserver
For convenience, there’s an alias for the second command:
$ make example
example/settings.py for running the example with another database
Once you’ve set up a development environment as explained above, you can run the test suite for the versions of Django and Python installed in that environment:
$ make test
You can enable coverage measurement during tests:
$ make coverage
You can also run the test suite on all supported versions of Django and Python:
This is strongly recommended before committing changes to Python code.
The test suite includes frontend tests written with Selenium. Since they’re annoyingly slow, they’re disabled by default. You can run them as follows:
$ make test_selenium
or by setting the
DJANGO_SELENIUM_TESTS environment variable:
$ DJANGO_SELENIUM_TESTS=true make test $ DJANGO_SELENIUM_TESTS=true make coverage $ DJANGO_SELENIUM_TESTS=true tox
At this time, there isn’t an easy way to test against databases other than SQLite.
The Django Debug Toolbar uses black to format code and additionally uses flake8 and isort. You can reformat the code using:
$ make style
Please submit pull requests!
The Debug Toolbar includes a limited but growing test suite. If you fix a bug or add a feature code, please consider adding proper coverage in the test suite, especially if it has a chance for a regression.
Translation efforts are coordinated on Transifex.
Help translate the Debug Toolbar in your language!
This project doesn’t have a mailing list at this time. If you wish to discuss a topic, please open an issue on GitHub.
Making a release¶
Prior to a release, the English
.po file must be updated with
translatable_strings and pushed to Transifex. Once translators have done
.po files must be downloaded with
The release itself requires the following steps:
Update supported Python and Django versions:
Bump version numbers in
setup.py. Add the release date to
Tag the new version.
python setup.py sdist bdist_wheel upload.
Push the commit and the tag.
Change the default version of the docs to point to the latest release: https://readthedocs.org/dashboard/django-debug-toolbar/versions/