# Development dependencies for Reversi42

# Testing
pytest>=7.4.0
pytest-cov>=4.1.0
pytest-watch>=4.2.0
pytest-xdist>=3.3.1  # Parallel test execution
pytest-asyncio>=0.21.0  # Async test support
pytest-timeout>=2.1.0  # Test timeouts
pytest-playwright>=0.4.0  # E2E testing
httpx>=0.24.0  # Async HTTP client for testing
websockets>=12.0  # WebSocket testing

# Type checking
mypy>=1.5.0

# Linting and formatting
pylint>=2.17.0
black>=23.7.0
isort>=5.12.0
flake8>=6.1.0
autopep8>=2.0.4

# Debugging
ipdb>=0.13.13
pdbpp>=0.10.3

# Profiling
memory-profiler>=0.61.0
line-profiler>=4.1.0
py-spy>=0.3.14

# Documentation
sphinx>=7.1.0
sphinx-rtd-theme>=1.3.0
sphinx-autodoc-typehints>=1.24.0
myst-parser>=2.0.0  # Markdown support for Sphinx

# Build tools
build>=0.10.0
twine>=4.0.2
wheel>=0.41.0

# Code quality
bandit>=1.7.5  # Security linter
safety>=2.3.5  # Dependency vulnerability scanner
radon>=6.0.1  # Code complexity analysis

# Git hooks
pre-commit>=3.3.3

# Utilities
watchdog>=3.0.0  # File system events
colorama>=0.4.6  # Colored terminal output
tqdm>=4.66.0  # Progress bars

# Requirements for specific Python versions
importlib-metadata>=6.8.0 ; python_version < "3.10"

