Flask==3.0.3
# psycopg-binary 3.2.1 only publishes prebuilt wheels up to cp312 (see
# https://pypi.org/project/psycopg-binary/3.2.1/#files) — installing this
# under Python 3.13+ falls back to a source build (needs libpq headers) or
# just fails to resolve. Match the python:3.12-slim runtime everywhere
# (venv, CI, prod image) and this pin installs from wheel with no build
# toolchain needed. See docs/agents/testing.md.
psycopg[binary]==3.2.1
waitress==3.0.0
PyJWT[crypto]==2.9.0
requests==2.32.3
# python:3.12-slim has no system IANA tz database; zoneinfo (used by
# availability.py for Europe/Berlin) falls back to this package for it.
tzdata==2024.1
