Contributing
git clonethe repo andcdinto it- (optional but highly recommended, CI on PR will fail anyway)
pre-commit install, or install pre-commit first - If installing pre-commit on abacus3, you might need to check if you're using virtualenv v20.4.0 with
virtualenv --version. If not, thenpip uninstall virtualenv -yand then check if the global packge is now v20.4.0. This SO answer has more details in case pre-commit doesn't work. - Otherwise if not using pre-commit, need to run
blackandisortmanually to avoid failing CI style checks. - fork the main branch and add your features or a fix
- follow conventional commits to get automatic changelogs and release functionality
- Open a PR and wait for CI checks and tests to pass.
CI
This project leverages multiple github actions for: 1. testing 2. code style checks 2. release / versioning 3. documentation
| Action | Trigger | Branch |
|---|---|---|
| Unit tests | on push of .py file change |
!main |
| DB Integration tests | on push of sql or redis file changes | !main |
| Code Style checks | on push to a branch with a PR | !main |
| Release Please | on push to main | main |
| Publish docs | on release published | any/none |
| Publish docker images | on release published | any/none |