Sinz Lab Neural System Identification Utilities for PyTorch.
Clone this repository and run the following command from within the cloned repository to run all tests:
docker-compose run pytest
Pull requests (and issues) are always welcome. This section describes some preconditions that pull requests need to fulfill.
Please make sure your changes pass the tests. Take a look at the test running section for instructions on how to run them. Adding tests for new code is not mandatory but encouraged.
This project uses the black code formatter. You can check whether your changes comply with its style by running the following command:
docker-compose run black
Furthermore you can pass a path to the service to have black fix any errors in the Python modules it finds in the given path.
isort is used to sort Python imports. You can check the order of imports by running the following command:
docker-compose run isort
The imports can be sorted by passing a path to the service.
We use mypy as a static type checker. Running the following command will check the code for any type errors:
docker-compose run mypy
It is not necessary (but encouraged) to add type hints to new code but please make sure your changes do not produce any mypy errors.
Note that only modules specified in the mypy-files.txt
file are checked by
mypy. This is done to be able to add type hints gradually without drowning in
errors. If you want to add type annotations to a previously unchecked module
you have to add its path to mypy-files.txt
.