Development¶
Follow instructions in Installation, but install it with additional --dev -e . flag:
pipenv install --ignore-pipfile --dev -e .
Entry point for the code is at __main__.py.
Profiling¶
To run profiles with cProfile (50.000 ODK records) and /usr/bin/time (10.000 ODK records), run:
pipenv run python setup.py profile
Debugging¶
In order to debug the module, you can create a file called debug.py next to __main__.py (with same code content)
and create a debug profile in PyCharm like this:
Releasing¶
Use Semantic Versioning:
“Consider a version format of X.Y.Z (Major.Minor.Patch). Bug fixes not affecting the API increment the patch version, backwards compatible API additions/changes increment the minor version, and backwards incompatible API changes increment the major version.”
Commandline interface¶
- delete ALL events (asks first)
- export program metadata w/ dependencies
- print error categories (exceptions)
pipenv run smartva-dhis2-cli --help
usage:
--delete_events Delete all events
--download_program_metadata
Download DHIS2 program metadata
--print_error_categories
Print error categories inserted into the database
Updating Documentation¶
- add RestructuredText files (like this one) to
docsand link them inindex.rst pipenv shell, thencd docsand finallymake html