# Core engine. The streaming fallback parser uses only stdlib; python-calamine is the fast
# (Rust) default parser — set AR_USE_CALAMINE=0 to force the low-memory streaming reader.
openpyxl==3.1.5
python-calamine>=0.3.0

# API layer
fastapi==0.115.6
uvicorn[standard]==0.34.0
python-multipart==0.0.20
pydantic==2.10.4
SQLAlchemy==2.0.36
PyMySQL==1.1.1
cryptography>=42.0.0
python-dotenv==1.0.1

# Data helpers (optional / analysis)
pandas>=2.2

# Testing
pytest==8.3.4
