Contributing
This document is adapted from https://git.fmrib.ox.ac.uk/fsl/fslpy/-/blob/master/doc/contributing.rst
Created by Paul McCarthy
NOTE: This document is a work in progress.
Development model
All development occurs on the
mainbranch.
Commit messages
To aid readability, all commit messages should be prefixed with one or more of the following labels (these conventions were inherited from: nibabel, and NumPy):
BF : Bug fix
RF : Refactoring
ENH : Enhancement/new feature
BW : Addresses backward-compatibility
OPT : Optimization (performance improvements)
BK : Breaks something and/or tests fail
PL : Making pylint happier
DOC : For all kinds of documentation related commits
TEST : For adding or changing tests
MNT : For administrative/maintenance changes
CI : For continuous-integration changes
STY : Commits that do not affect the meaning (white-space, formatting, missing semi-colons, etc), but change the style.
BLD : Commits that affect build components such as build tool, ci pipeline, dependencies, project version etc.
OPS : Commits that affect operational components like infrastructure, deployment, backup, recovery etc.
CHORE : Miscellaneous commits (e.g. modifying .gitignore)
API : An (incompatible) API change
DEV : Development tool or utility
REV : Revert an earlier commit
TYP : Static typing
Breaking Changes Indicator
Breaking changes should be indicated by an ! before the : in the subject line e.g. ENH!: remove status endpoint.
Testing
Unit and integration tests are currently implemented with pytest.