CommCare-Cloud is chiefly developed by Dimagi, but we welcome contributions, whether it be new tools, simplifications, or documentation improvements.
Before making any commits, make sure you install the git hooks:
./git-hooks/install.sh
This will make sure you never commit an unencrypted vault.yml file.
To run tests, first install the test dependencies
pip install -e .[test]
- if running on zsh
pip install -e '.[test]'
and then run
nosetests
Tests include tests of your own specific environments dir.
Dependencies are added to setup.py
. Dependencies in setup.py
should be
unpinned, or if there is a known range of compatibility, it should be
constrained by an upper and/or lower limit as appropriate.
requirements.txt
is then autogenerated using pip-compile
(from pip-tools
)
and that contains the exact pinned versions you might expect from running pip freeze
.
To update requirements.txt to the latest available versions of python libraries,
install pip-tools
pip install pip-tools
and then run
make requirements