Developer Guide¶
Running tests¶
Run tests using pytest.
First activate the twitcher
Conda environment and install pytest
.
$ source activate twitcher
$ pip install -r requirements_dev.txt # if not already installed
OR
$ make develop
Run quick tests (skip slow and online):
$ pytest -m 'not slow and not online'"
Run all tests:
$ pytest
Check pep8:
$ flake8
Run tests the lazy way¶
Do the same as above using the Makefile
.
$ make test
$ make test-all
$ make lint
$ make coverage
Upgrade Database¶
Initialize and upgrade the database using Alembic.
Generate your first revision:
$ conda activate twitcher
$ alembic -c development.ini revision --autogenerate -m "init"
Warning
This first step is only needed in development to generate a new database schema version.
Upgrade to that revision:
$ alembic -c development.ini upgrade head
Load default data into the database using a script.
$ initialize_twitcher_db development.ini
Note
You can use make migrate as a shortcut to upgrade or init the twitcher database (last two steps).
Prepare a release¶
Update CHANGES.rst.
Bump a new version¶
Make a new version of twitcher in the following steps:
Make sure everything is commit to GitHub.
Update
CHANGES.rst
with the next version.Dry Run:
bumpversion --dry-run --verbose --new-version 0.5.1 patch
Do it:
bumpversion --new-version 0.5.1 patch
… or:
bumpversion --new-version 0.6.0 minor
Push it:
git push
Push tag:
git push --tags
See the bumpversion documentation for details.