wrolpi/requirements.txt
lrnselfreliance 9ccf19b82b
Distrust compromised eMudhra intermediates in certifi and Deno (#854)
* Distrust compromised eMudhra intermediates in certifi and Deno

The private keys of eight eMudhra intermediate CAs can be recovered from
their certificates, so anyone can mint a trusted certificate for any host.

* Require certifi>=2026.10.19; yt-dlp, requests and curl-cffi use its bundle,
  and 2026.10.19 removes the emSign ECC Root CA - G3 root they chain to.
* Set DENO_TLS_CA_STORE=system for the API (systemd + Docker) and the archive
  container so Deno follows the apt-patched system store instead of roots
  that only change with a Deno upgrade.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Keep Deno's bundled roots in the archive container

browserless/chrome:1.61.1 is Ubuntu 22.04 whose newest ca-certificates is
from 2023, older than Deno 2.8.3's bundled roots.  The system store only
becomes the better choice once the archive base image is upgraded.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-23 08:54:57 -06:00

44 lines
1.1 KiB
Text

Pillow==13.0.0
PyYAML==6.0.3
SQLAlchemy==2.0.54
aiohttp==3.14.4
alembic==1.20.0
beautifulsoup4==4.15.0
cachetools==7.2.1
# yt-dlp, requests and curl-cffi trust certifi's bundle, not the system store. 2026.10.19 removes
# the root of the eMudhra intermediates whose private keys are recoverable.
certifi>=2026.10.19
cryptography==50.0.2
ebooklib==0.20
feedparser==6.0.14
jc==1.26.0
libzim==3.13.1
mock==5.2.0
psutil==7.2.2
pydantic>=2.0.0
PyMuPDF>=1.28.2
pytest-asyncio==1.4.0
# pytest.ini sets `timeout = 30` and asks that it not be removed, but this was never declared
# here -- so on any machine without it, and in CI, which installs only this file, the option was
# unknown and the timeout never applied. A hung test then runs until the CI job itself is
# killed, with no indication of which test hung.
pytest-timeout==2.4.0
pytest-xdist==3.8.0
pytest==9.1.1
py7zr>=1.1.3
python-docx==1.2.0
python-dotenv==1.2.4
python-magic~=0.4.27
pytz==2026.5
rarfile>=4.5
sanic-ext==25.12.0
sanic-testing==24.6.0
sanic==25.12.1
secretstorage==3.5.0
selenium==4.50.0
srt==3.5.3
tqdm==4.70.1
vininfo[cli]==1.11.0
webvtt-py==0.5.1
yt-dlp[default,curl-cffi]>=2026.08.19
yt-dlp-ejs>=0.8.0