8. Getting Involved¶
This project is hosted in github. To provide feedback about bugs and errors or questions and requests for enhancements, use github’s Issue-tracker.
8.1. Development procedure¶
For submitting code, use UTF-8
everywhere, unix-eol(LF
) and set git --config core.autocrlf = input
.
The typical development procedure is like this:
Install and arm a pre-commit hook with black to auto-format you python-code.
Modify the sources in small, isolated and well-defined changes, i.e. adding a single feature, or fixing a specific bug.
Add test-cases “proving” your code.
Rerun all test-cases to ensure that you didn’t break anything, and check their coverage remain above the limit set in
setup.cfg
.If you made a rather important modification, update also the Changes file and/or other documents (i.e. README.rst). To see the rendered results of the documents, issue the following commands and read the result html at
build/sphinx/html/index.html
:python setup.py build_sphinx # Builds html docs python setup.py build_sphinx -b doctest # Checks if python-code embeded in comments runs ok.
If there are no problems, commit your changes with a descriptive message.
Repeat this cycle for other bugs/enhancements.
When you are finished, push the changes upstream to github and make a merge_request. You can check whether your merge-request indeed passed the tests by checking its build-status on the integration-server’s site (TravisCI).
Hint
Skim through the small IPython developer’s documentantion on the matter: The perfect pull request
8.2. Development team¶
- Author:
- Kostis Anagnostopoulos
- Contributing Authors:
- Heinz Steven (test-data, validation and review)
- Georgios Fontaras (simulation, physics & engineering support)
- Alessandro Marotta (policy support)
- Jelica Pavlovic (policy support)
- Eckhard Schlichte (discussions & advice)