How to contribute to AGNI
Bug reporting
Ensure the bug was not already reported by searching on GitHub under Issues.
If you're unable to find an open issue addressing the problem, open a new one. Be sure to include a title and clear description, as much relevant information as possible, and a code sample or an executable test case demonstrating the expected behavior that is not occurring.
For more general information on submitting a bug report, visit this page.
Bug fixing
Open a new GitHub pull request (PR) with the patch.
Ensure the PR description clearly describes the problem and solution. Include the relevant issue number if applicable.
Before submitting, please ensure your changes are consistent with the existing codebase. These can also be viewed in the development manual.
New features
- Suggest your change on the issues page and start writing code.
Coding style
- Indentation uses 4 spaces, no tabs.
- Function names should be lowercase, with words separated by underscores .
- Lines should aim to have a length of no more than 92 characters.
- All functions should have docstrings, ideally with Arguments and Returns listed.
- More comments are always better, even if they seem redundant.
- Use type hinting where possible.
- Print statements should be made through the logger where possible.
- The core package code should not contain global variables, except in the phys module.
Queries and questions
- Ask a question about how to use or contribute to AGNI, please use the discussions page or contact Harrison Nicholls directly.
Open source
AGNI is free, libre, and open source software. I encourage your contributions and suggestions.
Thanks, -Harrison