Contributing to SelfiSys
We welcome contributions to the SelfiSys repository! Please follow these guidelines when contributing.
Reporting Issues
If you find a bug or have a suggestion, please open an issue in the GitHub repository. Include as much detail as possible:
Steps to reproduce the issue
Expected vs. actual behaviour
Relevant error messages or logs (if applicable)
Suggestions for improvement (if applicable)
If you are unsure whether your issue is a bug or have questions about the code, you are welcome to open an issue for discussion.
Submitting Contributions
Fork the repository and create a new branch for your changes.
Ensure your contributions are well-documented and adhere to the highest coding standards.
Test your changes thoroughly before submitting:
Ensure Jupyter notebooks run without errors from top to bottom.
Validate new functionality or fixes using appropriate test cases.
Before submitting a pull request, synchronise your fork with the main repository to incorporate upstream changes.
Add the main repository as a remote.
git remote add upstream https://github.com/hoellin/selfisys_public.git
Fetch the latest changes from the upstream repository.
git fetch upstream
Merge the changes into your local repository.
git merge upstream/main
Open a pull request describing your changes to the main repository.
Style Guidelines
Follow best practices for Python coding and Jupyter notebooks.
Python code
Refer to the PEP 8 Style Guide for Python coding standards.
Jupyter Notebooks
Use clear and concise Markdown cells to explain code and results.
Avoid leaving unnecessary output (e.g., debugging print statements).
Ensure notebooks are runnable from top to bottom.
For tips on creating clean and effective Jupyter notebooks, see Jupyter Notebook Best Practices.
Questions?
If you have any questions or need further clarification, feel free to contact the authors.