Style and Formatting¶
The following tools are run in both CI and
pre-commit checks to ensure codebase hygiene:
||Formatting Python code|
||Formatting and sorting
||Automatically convert relative imports to absolute.|
||Linting Python code|
||Linting nix files|
||Formatting nix files|
||Linting shell scripts|
||Formatting shell scripts|
||Ensuring the latest available Python syntax is used|
If you use
nix-shell all of these are setup for you and ready to use, you don't
need to install any of these tools.
We use numpydoc as our standard format for docstrings.
We aim to make our individual commits small and tightly focused on the feature they are implementing or bug being fixed. If you find yourself making functional changes to different areas of the codebase, we prefer you break up your changes into separate Pull Requests. In general, a philosophy of one Github Issue per Pull Request is a good rule of thumb.