To make pypesto easily usable, we are committed to documenting extensively. This involves in particular documenting the functionality of methods and classes, the purpose of single lines of code, and giving usage examples. The documentation is hosted on pypesto.readthedocs.io and updated automatically every time the master branch on github.com/icb-dcm/pypesto is updated. To compile the documentation locally, use:
cd doc make html
Tests are located in the
test folder. All files starting with
contain tests and are automatically run on Travis CI. To run them manually,
python3 -m pytest test
python3 -m unittest test
You can also run specific tests.
Tests can be written with pytest or the unittest module.
We try to respect the PEP8 coding standards. We run flake8 as part of the tests. If flake8 complains, the tests won’t pass. You can run it via:
in Linux from the base directory, or directly from python. More, you can use the tool autopep8 to automatically fix various coding issues.
If you start working on a new feature or a fix, if not already done, please create an issue on github shortly describing your plans and assign it to yourself.
To get your code merged, please:
create a pull request to develop
if not already done in a commit message already, use the pull request description to reference and automatically close the respective issue (see https://help.github.com/articles/closing-issues-using-keywords/)
check that all tests on travis pass
check that the documentation is up-to-date
request a code review
Internally, we use
numpyfor arrays. In particular, vectors are represented as arrays of shape (n,).
Use informative commmit messages.