Contribute
Necessary software and compatibility
The following software is necessary to be able to develop and test Coveron:
- Python 3.5 or newer
- Python packages defined inside the “requirements.txt” in the repo-root
- Ruby 2.6 or newer
- Ceedling gem
- GNU compiler toolchain (MinGW for Windows users)
- Papyrus
The following software is optional (helpful for the development of the website):
- Jekyll gem
- GitHub Pages gem
Coding style guides
Coveron uses the C/C++ style guide from Google for C and C++ code. Python code is written according to the PEP8 guidelines.
Upon committing, the code is linted using cppunit in case of C/C++ code and flake8 for Python code.
Workflow
Coveron is developed using the test driven development (TDD) methodology. This means that every new feature or fix should be covered by a test case.
A popular and recommended approach for test driven development is the red - green - refactor cycle.
No matter if your contribution implies a new feature or just a bug fix: Always check the UML diagrams to see, if changes are necessary. A specification that is consistent with the real code is not just helpful for new potential contributors - it’s helpful to retain a good code quality and important in cases, where Coveron will be used for safety-relevant applications.
Contributions that focus on improving the documentation and the UML diagrams are always welcome.
Committing your work to the main branch
To contribute to Coveron, create a fork and make the changes you are interested in. Upon making a pull request, your submitted code will be checked by the project maintainers.
While every contribution is greatly appreciated, open issues and feature requests have the highest priority for the community.
- Previous
- Next