# Development dependencies for MVK SDK Python
# Install with: pip install -r requirements-dev.txt

# Include production dependencies
-r requirements.txt

# Testing framework
pytest>=7.0.0
pytest-asyncio>=0.21.0
pytest-cov>=4.0.0
pytest-xdist>=3.5.0

# Code quality tools
black==26.3.1  # Pinned to ensure consistent formatting across local and CI
isort>=5.12.0
mypy>=1.0.0
ruff>=0.1.0
autoflake>=2.0.0
pre-commit>=3.0.0

# Mocking and testing utilities
responses>=0.23.0

# gRPC support (required for gRPC interceptor tests)
grpcio>=1.50.0

# LiteLLM (required for LiteLLM instrumentor tests)
litellm>=1.0.0

# CrewAI (required for CrewAI instrumentor tests -- the flow-based native
# tool call wrapper tests exercise the real, unmocked
# crewai.utilities.agent_utils.extract_tool_call_info). Pin numpy below
# 2.5.0: crewai transitively pulls in numpy (via chromadb/lancedb), and
# numpy>=2.5.0's bundled __init__.pyi uses a PEP 695 `type` alias statement
# that mypy's python_version=3.9 target (see pyproject.toml) can't parse.
numpy<2.5.0
crewai>=0.30.0

# Build tools
build>=1.3.0
wheel>=0.40.0

# Documentation (optional)
sphinx>=6.0.0
sphinx-rtd-theme>=1.2.0
