Skip to content

Latest commit

 

History

History
56 lines (41 loc) · 2.15 KB

CONTRIBUTING.rst

File metadata and controls

56 lines (41 loc) · 2.15 KB

Contributing to rCDS

Workflow

Dependency management is done through poetry, and pre-commit linting hooks are maanged with pre-commit. To get started, run poetry install and poetry run pre-commit install.

Tests use pytest, and a Makefile is set up with targets for common operations; to run tests, use make test; to run tests and get an HTML coverage report, use make htmlcov; to lint everything, use either make lint or poetry run pre-commit run -a (make lint will stop executing linters after one failure, while pre-commit will not lint any untracked files).

Note

This is subject to change; we may move the running of these jobs to use tox in the future, but for now make is used for running scripts.

This project uses isort, black, flake8 with flake8-bugbear, and mypy (see the pre-commit configuration); consider setting up editor integrations to ease your development process (particularly with mypy).

If you want a live preview of the docs as you work, you can install sphinx-autobuild into the Poetry virtualenv (poetry run pip install sphinx-autobuild) and run it via poetry run make livebuild.

Git

This project follows Conventional Commits, and uses Angular's commit types.

Branches should be named prefixed with a type (the same types as used in the commit message) and a short description of the purpose of the branch. Some examples:

feat/brief-description
fix/bug-description