You’ll need to have Python 3.7 or newer available for testing. I recommend using pyenv for this:

$ pyenv install 3.7.13
$ pyenv local 3.7.13

Ideally, you should also have newer versions as well:

$ pyenv local 3.10.4 3.9.9 3.8.12 3.7.13


Create a fresh development environment, and bootstrap thx:

$ cd <path/to/thx>
$ python -m venv venv
$ source venv/bin/activate
(venv) $ pip install -U pip -r requirements-dev.txt
(venv) $ pip install -e .

Run the test suite from your bootstrapped version of thx:

(venv) $ thx


Before submitting a pull request, please ensure that you have done the following:

  • Documented changes or features in

  • Added appropriate license headers to new files

  • Written or modified tests for new functionality

  • Run thx to run the formatter, and passed the test suite and all linters.