Merging with main requires a pull request that has to pass a check defined in the ci.yml github workflow. The check ensures the code is formatted, linted, docstrings exist and are styles correctly and run tests. You can't push directly to main. Create a branch, then open a PR for merging with main. Tip: You can create branches directly from issues.
This package is developed with poetry. Find installation instructions here
- Clone Repo
- Install dependencies:
poetry install
- Set up pre-commit hooks:
poetry run pre-commit install --hook-type commit-msg
This will ensure the code is formatted, linted, docstrings exist and are styled correctly and run tests.
Install Black for formatting tooltips and Ruff for linting tooltips in your IDE.
We are using the GitHub Flow specified here.
- Basic git commit message guidelines apply
- Additionally, follow the Conventional Commits specification
- A fix commit is a PATCH. Example: 0.0.21 -> 0.0.22
- A feat commit is a MINOR. Example: 0.1.0 -> 0.2.0
- A commit with BREAKING CHANGE or ! is a MAJOR. 1.0.0 -> 2.0.0
- We are following this specification for versioning: SemVer
This project uses pydocstyle to enforce the existance and style of docstrings. Googles style guidelines are used. To check whether your docstrings are consistent with these guidelines, run:
poetry run pydocstyle ./pytracking_cdm
To test ensure the package functions as intended after making changes, run:
poetry run pytest -svv
Tests are defined in ./tests/test_pytracking_cdm.py