This document describes how to contribute to the silx project. The process is similar to many other open-source projects like numpy, just lighter as the project is smaller, so you won't be surprised with the pipeline.
scikit-image provides a nice tutorial in their own CONTRIBUTING guide.
- Create your GitHub account https://help.github.com/categories/setup/ and upload your SSH keys.
- Fork the silx project from https://github.com/silx-kit/silx/. The button is on the top right of the page.
- Clone your GitHub version locally on the computer you intend to work on.
git clone [email protected]/<your_user_name>/silx
- Install the dependencies defined in requirements-dev.txt.
pip install -r requirements-dev.txt
- Make sure the silx test suite pass on your computer using the
python3 run_tests.py
orpython3 run_tests.py silx.gui.test.test_qt
if you want to test only a subset of it. You can usepython /path/to/silx/bootstrap.py script.py
to test your scripts without installing silx, but the test suite is required to pass. - Open an issue in
https://github.com/silx-kit/silx/issues
to inform the maintainers of your intentions. - Create a local branch to start working on your issue
git branch my_feature
. - Code, enjoy but ensure that the new code is tested and does not break the current test suite.
- Push your local branch to your GitHub account:
git push origin my_feature
. - Create a pull request (PR) from your feature branch on GitHub to trigger the review process. Indicate this PR is related to the issue you opened in 6.
- Discuss with the maintainer who is reviewing your code using the GitHub interface.
If you encounter any problems or have any questions you can always ask on the Issues page.