There are several ways you can contribute to the pylinac project no matter your skill level. Read on for more info.
The easiest way to contribute is to report bugs. Submit bugs via a Github issue here.
Another easy way to improve pylinac is to submit QA files for the testing repository. Files are treated anonymously and are added to the test suite so that the package will become more robust. You can submit files here.
Ideas are always welcome (though they might not get implemented). You can submit new ideas here.
Now you’re serious about contributing. Awesome! Pylinac has mostly had one maintainer but we are looking for newcomers to contribute. There are a few things to know before contributing:
- Make an issue first, whether it be for a bug fix or feature request. This helps track the progress and put it on the roadmap appropriatly
- See if there are any other tools out there that can solve the problem. We don’t want to write code just to write code. Pylinac should solve a problem that no one else has solved, do it better than existing solutions, or do so openly (vs closed).
- Evaluate the work involved. This includes reviewing any existing modules or 3rd party tools that can help solve the problem.
- Start a new branch for the feature.
- Propose the framework. This includes making the files and boilerplate for the new module/functions. This will allow others to evaluate and make suggestions to the framework before the work actually starts.
- Write the test framework. Same as the regular framework but defines the parameters and endpoints for the module
- Once the framework is agreed upon the code can start flowing. Get to it!
- If you’re unsure, just ask.