Developer guide#

Development installation#

If you have postgres available, (perhaps with brew install postgresql on macOS), you can prepare an editable installation and run the tests:

make setup
. .venv/bin/activate
pytest redun

# Other targets
make black
make mypy
make lint
make isort

Release#

Redun releases are done via the redun-release-auto codebuild pipeline.

Release Steps#

  1. Prepare a release branch and make a PR from this branch with an updated:

    • __version__ - new version number should follow semantic versioning rules (see semver.org for details)

    • and CHANGELOG e.g. https://github.com/insitro/redun/pull/107. Use release_notes.py script to generate the release notes (see that script for usage).

  2. Merge the release branch to both branches main and insitro-private. The codebuild pipeline will trigger automatically based on the latter branch. If the version has been updated, it will initiate the release process. If the CHANGELOG is not updated to reflect the new version, the codebuild will terminate without releasing.