Development#

Software#

Please install the ClusterKinG package with the development packages from the latest master version on github:

git clone https://github.com/clusterking/clusterking
cd clusterking
pip3 install --editable --user ".[plotting,dev]"

This will enable you to run our unittests, build the documentation and more.

Git hooks#

Please install our git pre-commit hooks:

pip3 install --user pre-commit
pre-commit install

Now, every time you commit to this package, a number of checks and cleanups are performed, among them

  • Code styling with black

  • Stripping output of jupyter notebooks with nbstripout

Git commit message#

It’s recommended to use the following prefixes:

  • [Fix]: Fixing a bug

  • [Int]: Interface change

  • [Feat]: New feature

  • [Doc]: Everything regarding documentation

  • [CI]: Continuus Integration (unittests and more)

  • [Ref]: Code refactoring

  • [Clean]: Code cleanup (style improvement etc.)

  • [Deploy]: Everything that has to do with releases

  • [Dev]: Things that are only relevant to developers

this helps to get an overview over what’s happening, e.g. when compiling release notes.

Unittests#

Whenever changing functionality, please run

pytest

to run all unittests.