Thank you for taking the time to read this guide for the package's contribution. I'm glad to know that you may bring a lot to the behavioral online experiment framework. This document will show you the good development practices used in the project and how you can easily participate in its evolution!
-
1.1. Submit an issue
1.2. Pull request
1.3. Seek support
-
2.1. Python conventions
2.2. Code documentation
2.3. Testing
Do not hesitate to report bug or issue in https://github.com/prise-3d/PyBOLE/issues with the common template header:
**Framework version:** X.X.X (see documentation)
**Issue label:** XXXXX
**Targeted modules:** `......`, `.....`
**Operating System:** Manjaro Linux
**Description:** XXXXX
If you have made changes to the project you have forked, you can submit a pull request in https://github.com/prise-3d/PyBOLE/pulls in order to have your changes added inside new version of the Macop package. A GitHub documentation about pull requests is available if necessary.
To enhance the package, do not hesitate to fix bug or missing feature. To do that, just submit your pull request with this common template header:
**Framework version:** X.X.X
**Enhancements label:** XXXXX
**Targeted modules:** `.......`, `.......`
**New modules:** `.......`, `........`
**Description:** XXXXX
Note: the code conventions required for the approval of your changes are described below.
Whatever the problem reported, I will thank you for your contribution to this project. So do not hesitate.
If you have any problem with the use of the package, issue or pull request submission, do not hesitate to let a message to https://github.com/prise-3d/PyBOLE/discussions. Especially in the question and answer section.
You can also contact me at the following email address: contact@jeromebuisine.fr.
This project follows the coding conventions implemented by Google. To help you to format *.py files, it is possible to use the yapf Python package developed by Google.
yapf -ir -vv experiments
Note: you need at least Python version >=3.7.0.
As you perhaps already saw, package contains multiples modules and submodules. It's really import to be well organized package and let it intuitive to access as possible to features.
You can refer to the documentation if necessary.
In order to facilitate the integration of new modules, do not hesitate to let me know the name it could have beforehand in your pull request.
You can generate documentation and display updates using these following commands:
cd docs
make clean && make html
firefox _build/html/index.html