# Invoice Match — Python service dependencies (Python 3.12). # The deterministic matching core (app/matching/) needs only openpyxl + stdlib; # everything below supports the FastAPI service, Odoo client, agent and telemetry. # --- Web service --- fastapi>=0.115,<1.0 uvicorn[standard]>=0.30,<1.0 python-multipart>=0.0.9,<1.0 # --- Config / validation --- pydantic>=2.7,<3.0 pydantic-settings>=2.3,<3.0 # --- Workbook parsing (matching core) --- openpyxl>=3.1,<4.0 # --- Database (shared MySQL 8) --- PyMySQL>=1.1,<2.0 # --- Odoo + provider HTTP --- httpx>=0.27,<1.0 # --- Strands Agents SDK (+ OTEL extra) --- strands-agents>=0.1,<2.0 strands-agents[otel]>=0.1,<2.0 # --- Telemetry --- opentelemetry-sdk>=1.25,<2.0 # --- Tests --- pytest>=8.0,<9.0