Contributing

Bug reports

Please report bug reports on our issue tracker.

Feature requests

Please put feature requests on our issue tracker.

Pull requests

When you submit a PR you’ll see a template that pops up - it’s reproduced here.

  • Provide a general summary of your changes in the Title
  • Describe your changes in detail
  • If the PR closes an issue make sure include e.g., fix #4 or similar, or if just relates to an issue make sure to mention it like #4
  • If introducing a new feature or changing behavior of existing methods/functions, include an example if possible to do in brief form
  • Did you remember to include tests? Unless you’re changing docs/grammar, please include new tests for your change

Writing tests

We’re using pytest for testing. See the `pytest docs`_ for help on contributing to or writing tests.

Before running tests for the first time, you’ll need install pytaxize dependencies, but also pytest and a couple other packages:

$ pip install -e .
$ pip install pytest vcrpy coverage lxml requests multipledispatch enum

The Makefile has a task for testing under Python 3:

$ make test

Code formatting

We’re using the Black formatter, so make sure you use that before submitting code - there’s lots of text editor integrations, a command line tool, etc.