We appreciate your interest in contributing! Here’s how you can get involved.
If you discover a security issue, please report it promptly via the GitHub "Report a Vulnerability" tab. For more details on our security policies, see SECURITY.md.
Found a bug? Before opening a new issue, please check the existing issues to see if it’s already been reported. If it’s a new bug, you can create an issue here.
Got an idea for a new feature? We’d love to hear it! Please submit a feature request and provide as much detail as possible.
If you’d like to contribute code, follow these steps:
- Open an Issue: Start by opening an issue to discuss your proposal or bug fix.
- Fork the Repository: Create a fork and work on your changes in a new branch.
- Submit a Pull Request: Once your changes are ready, submit a Pull Request (PR) for review.
To set up your development environment, ensure you have the following tools installed:
- Python 3.10 or later
- Make
- Buf CLI (for generating API from protos)
- Python Setuptools (may be inside virtualenv)
Then, install the module for edit with the required dependencies:
pip install -e .[dev,generators]
On Windows, you will have to add another dependency:
pip install -e .[dev,generators,windows]
All new code must include unit tests to ensure coverage and stability.
Run the tests locally with:
tox
Ensure your code meets project standards by running the linter:
pre-commit run --all && tox
To see a list of available make
commands, run:
make help