Skip to content

Latest commit

 

History

History
24 lines (16 loc) · 1.6 KB

CONTRIBUTING.md

File metadata and controls

24 lines (16 loc) · 1.6 KB

Contribution Guide

Running Tests

First: poetry install && poetry shell

Then at the top level dir: pytest, or pytest --cov to view code coverage

Code Formatting

This repo currently uses the following dev tools:

  1. black for code formatting (black .)
  2. isort for dependency sorting (isort --profile black .)
  3. mypy for static type checking (mypy --ignore-missing-imports .)

You can run the individual commands and/or have them run via the pre-commit hooks (make sure you are using the pre-commit installed from the Poetry venv, i.e. from poetry shell, as opposed to another install).

Opening a PR

Use this convention when creating a new branch: {your_abbrv_name}/{issue#-contribution_description}

E.g. yname/general_update or yname/1-fix_first_issue if it's linked to an issue.

Thank you for contributing and working to keep things organized!

Complimentary Libraries

In addition to the standard library itertools, functional tools like funcy and more-itertools can improve development and make data transforms more consistent and elegant. python-benedict is another handy library, and benedict objects can be used to facilitate mapping if an appropriate use-case comes up (though this was refactored-out since it provides more features than needed).