CONTRIBUTOR.md
Thank you for your interest in contributing to confluent-kafka-python! This document provides guidelines and best practices for contributing to this project.
For complete development environment setup instructions, including prerequisites, virtual environment creation, and dependency installation, see the Development Environment Setup section in DEVELOPER.md.
tox.ini flake8 rules for modern updates to the recommendationsWe use automated tools to maintain consistent code style:
# Install formatting tools
pip install black isort flake8
# Check style
make style-check
# Fix style automatically
make style-fix
Tools used:
black: Automatic code formatterisort: Import statement organizerflake8: Code linter for style and quality checkssnake_casePascalCaseUPPER_SNAKE_CASE_private_methodSee tests/README.md for comprehensive testing instructions.
def test_feature_should_behave_correctly_when_condition():
# Arrange
setup_data = create_test_data()
# Act
result = function_under_test(setup_data)
# Assert
assert result.expected_property == expected_value
Create Feature Branch
git checkout -b feature/your-feature-name
# or
git checkout -b fix/issue-number-description
Make Your Changes
Test Your Changes Refer to tests/README.md
Commit Your Changes
git add .
git commit -m "Clear, descriptive commit message"
Commit Message Guidelines:
Push and Create Pull Request
git push origin feature/your-feature-name
Then create a pull request through GitHub's interface.
When creating issues or pull requests, please review the available labels and apply those that are relevant to your submission. This helps maintainers categorize and prioritize work effectively. Common label categories include (look at available labels / other issues for options):
When reporting bugs, please include:
For feature requests, please include:
This project follows the Contributor Covenant Code of Conduct. By participating, you agree to uphold this code.
Contributors are recognized in the following ways:
By contributing to this project, you agree that your contributions will be licensed under the same license as the project (see LICENSE file).
Thank you for contributing to confluent-kafka-python! Your contributions help make this project better for everyone.