Contributing
May 6, 2026 · View on GitHub
Pull requests are welcome. But please read the CycloneDX contributing guidelines first.
Issues
When creating a new issue, please select the appropriate issue type from the available templates and fill out the provided form.
These templates ensure that all necessary information is captured consistently.
Pullrequests
When opening a pull request, use the repository’s pull request template and complete all required fields.
Keep each pull request focused on a single topic or problem.
Every pull request must reference an existing issue that it aims to address.
If no issue exists for your topic, please create one first using the appropriate issue template, then link your pull request to it.
Setup
This project uses poetry. Have it installed and setup first.
To install dev-dependencies and tools:
poetry install
Code style
This project loves latest python features.
This project loves sorted imports.
This project uses PEP8 Style Guide for Python Code.
Get it all applied via:
poetry run -- tox r -e pyupgrade -- --exit-zero-even-if-changed
poetry run -- tox r -e isort
poetry run -- tox r -e autopep8
This project prefers f'strings' over 'string'.format().
This project prefers 'single quotes' over "double quotes".
This project prefers lower_snake_case variable names.
Documentation
This project uses Sphinx to generate documentation which is automatically published to RTFD.
Source for documentation is stored in the docs folder in RST format.
You can generate the documentation locally by running:
cd docs
pip install -r requirements.txt
make html
Testing
poetry run tox run
See also: python test snapshots docs
Sign off your commits
Please sign off your commits, to show that you agree to publish your changes under the current terms and licenses of the project , and to indicate agreement with Developer Certificate of Origin (DCO).
git commit -s ...