diff --git a/requirements.txt b/requirements.txt index ada374b..31a60cc 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,8 +4,12 @@ hypercorn>=0.16,<0.17 # DB sqlalchemy[asyncio]>=2.0,<2.1 -asyncpg>=0.29,<0.30 -psycopg[binary]>=3.1,<3.2 +# asyncpg 0.30 was the first release with Python 3.13/3.14 wheels (0.29 builds +# from source on 3.14 and fails). +asyncpg>=0.30,<0.31 +# psycopg 3.2 stabilized the resolver story; staying on 3.1 caused pip to +# backtrack through dozens of versions trying to find a 3.14-compatible combo. +psycopg[binary]>=3.2,<3.3 alembic>=1.13,<1.14 pgvector>=0.2,<0.3 @@ -13,11 +17,13 @@ pgvector>=0.2,<0.3 celery>=5.4,<5.5 redis>=5.0,<6.0 -# Crypto for credential storage (lands in FC-3, but pinned now for stability) -cryptography>=42,<43 +# Crypto for credential storage (lands in FC-3, but pinned now for stability). +# 44+ aligns with current cffi/abi3 wheels under Python 3.14. +cryptography>=44,<46 -# Image handling (lands in FC-2) -pillow>=10.2,<11.0 +# Image handling (lands in FC-2). 11.x is the line with Python 3.13+ wheels; +# 10.x has no 3.14 wheel and fails to build from source. +pillow>=11.1,<12 imagehash>=4.3,<4.4 # Gallery-dl wrapper (lands in FC-3)