# =============================================================================
# Python Dependencies for GDPR + DPDPA Cross-Border Transfer Governance
# =============================================================================
# Install with: pip install -r requirements.txt
# Recommended: Use a virtual environment (venv or conda)
# =============================================================================

# -----------------------------------------------------------------------------
# Core Dependencies (Required)
# -----------------------------------------------------------------------------
pydantic>=2.5.0              # Data validation and settings management
pyyaml>=6.0.1                # YAML configuration parsing
requests>=2.31.0             # HTTP client for API calls to compliance endpoints

# -----------------------------------------------------------------------------
# Optional: Infrastructure as Code
# -----------------------------------------------------------------------------
# For AWS Terraform deployment
# terraform>=1.5.0  # Install separately: https://www.terraform.io/downloads

# For Azure ARM template deployment
# azure-cli>=2.50.0  # Install separately: https://docs.microsoft.com/cli/azure/install-azure-cli

# -----------------------------------------------------------------------------
# Optional: Production Deployment
# -----------------------------------------------------------------------------
fastapi>=0.109.0             # REST API framework (if exposing as service)
uvicorn[standard]>=0.27.0    # ASGI server for FastAPI
prometheus-client>=0.19.0    # Metrics and monitoring
sentry-sdk>=1.40.0           # Error tracking

# -----------------------------------------------------------------------------
# Optional: Testing
# -----------------------------------------------------------------------------
pytest>=7.4.4                # Testing framework
pytest-asyncio>=0.23.3       # Async test support
httpx>=0.26.0                # HTTP client for API testing

# -----------------------------------------------------------------------------
# Optional: Development
# -----------------------------------------------------------------------------
black>=23.12.1               # Code formatter
ruff>=0.1.11                 # Fast linter
mypy>=1.8.0                  # Type checking

# =============================================================================
# Compatibility Notes
# =============================================================================
# - Requires Python 3.9+ (for type hints and dataclasses)
# - Python 3.12+ recommended (datetime.now(timezone.utc) used throughout)
# - Tested on Python 3.12.1
#
# For production deployment:
#   - Pin exact versions (remove >= constraints)
#   - Use pip freeze > requirements-lock.txt
#   - Review security advisories before upgrading
# =============================================================================
