fastapi>=0.115,<1.0 uvicorn[standard]>=0.30,<1.0 sqlalchemy>=2.0,<2.1 psycopg[binary]>=3.2,<4.0 alembic>=1.13,<2.0 pydantic>=2.7,<3.0 pydantic-settings>=2.3,<3.0 authlib>=1.3,<2.0 httpx>=0.27,<1.0 feedparser>=6.0,<7.0 apscheduler>=3.10,<4.0 py3langid>=0.3,<1.0 itsdangerous>=2.1,<3.0 cryptography>=46.0.7,<47 argon2-cffi>=23.1,<26 # Download center: yt-dlp does the extraction/download; ffmpeg (installed at the OS level in # the Dockerfile) does the merge + postprocessing. yt-dlp is release-often (YouTube changes), # so keep the floor loose and bump it when extraction breaks. yt-dlp>=2025.5.22 # PO Token provider plugin: talks to the bgutil sidecar (brainicism/bgutil-ytdlp-pot-provider) # to mint YouTube Proof-of-Origin tokens on demand, bypassing "confirm you're not a bot" and # unlocking high-quality formats. Pin to match the sidecar image tag (versions must align). bgutil-ytdlp-pot-provider==1.3.1