Thank you for your interest in contributing to DeepEval MultiRun! This document provides guidelines for contributing to the project.
-
Clone the repository:
git clone https://github.com/MRLab12/deepeval-multirun.git cd deepeval-multirun -
Create a virtual environment:
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
-
Install in development mode:
pip install -e ".[dev]"
# Run all tests
pytest
# Run with coverage
pytest --cov=deepeval_multirun --cov-report=html
# Run specific test file
pytest tests/test_core.py
# Run with verbose output
pytest -vBefore submitting a pull request, ensure your code passes all quality checks:
# Format code
black src tests
# Lint code
ruff check src tests
# Type checking
mypy src- Fork the repository
- Create a feature branch (
git checkout -b feat/amazing-feature) - Make your changes
- Add tests for new functionality
- Ensure all tests pass
- Commit your changes using conventional commits
- Push to your fork
- Open a pull request
We use Conventional Commits:
feat:New featurefix:Bug fixdocs:Documentation changestest:Adding or updating testsrefactor:Code refactoringchore:Maintenance tasks
Example:
feat: add support for custom confidence thresholds
fix: resolve race condition in multi-run evaluation
docs: update README with pytest integration example
- Follow PEP 8 guidelines
- Use type hints for all functions
- Write docstrings for all public functions and classes
- Keep functions small and focused
- Prefer clarity over cleverness
- Write tests for all new features
- Maintain or improve code coverage
- Use descriptive test names
- Mock external dependencies
- Test edge cases and error conditions
Feel free to open an issue for any questions or concerns!