Set up Python 3.12.11 FastAPI project with security-focused dependency management. Dependencies: - FastAPI 0.123.9: Modern web framework - Uvicorn 0.38.0: ASGI server with standard extras - Pydantic 2.12.5: Data validation (updated for pydantic-ai) - PydanticAI 1.27.0: LLM agent framework with Ollama support - HTTPX 0.28.1: Async HTTP client - SSE-Starlette 3.0.2: Server-Sent Events for streaming - python-dotenv 1.2.1: Environment configuration Security: - All packages checked for CVEs (as of 2025-12-06) - Minor version locking (>=X.Y,<X.(Y+1)) for supply chain protection - CVE status documented in requirements.txt Development tools: - pytest 8.3.5 + pytest-asyncio for async testing - pytest-cov 6.0.0 for coverage reporting - ruff 0.8.6 for linting and formatting - mypy 1.14.1 for type checking Configuration: - pyproject.toml: Build system, coverage, ruff, and mypy config - .env.example: Environment variable template - .gitignore: Comprehensive Python/FastAPI patterns Target model: mistral-nemo:latest on external Ollama instance 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
26 lines
535 B
Plaintext
26 lines
535 B
Plaintext
# Development and Testing Dependencies
|
|
# Install with: pip install -r requirements.txt -r requirements-dev.txt
|
|
|
|
# Testing Framework
|
|
# Latest pytest with async support
|
|
pytest>=8.3,<8.4
|
|
pytest-asyncio>=0.25,<0.26
|
|
pytest-cov>=6.0,<6.1
|
|
|
|
# Test client for FastAPI
|
|
httpx>=0.28,<0.29 # Already in requirements.txt but needed for test client
|
|
|
|
# Code Quality
|
|
# Linting and formatting
|
|
ruff>=0.8,<0.9
|
|
|
|
# Type checking
|
|
mypy>=1.14,<1.15
|
|
|
|
# Testing utilities
|
|
pytest-mock>=3.14,<3.15
|
|
faker>=34.0,<35.0
|
|
|
|
# Coverage reporting
|
|
coverage[toml]>=7.7,<7.8
|