asn1crypto>=1.5.1
qrcode>=6.1
tzlocal>=4.3
pyhanko-certvalidator==0.23.*
click>=7.1.2
requests>=2.24.0
pyyaml>=5.3.1
cryptography>=3.3.1

[async-http]
aiohttp~=3.8.0

[docs]
sphinx
sphinx-rtd-theme

[extra-pubkey-algs]
oscrypto>=1.2.1

[image-support]
Pillow>=7.2.0
python-barcode==0.14.0

[live-test]
pyHanko[async-http,extra-pubkey-algs,testing-basic,xmp]
pytest-aiohttp~=1.0.4
certomancer-csc-dummy==0.2.2
certomancer[pkcs12,web-api]<0.12.0,>=0.11.0
pytest-cov~=4.0.0

[mypy]
pyHanko[async-http,extra-pubkey-algs,image-support,opentype,pkcs11,xmp]
types-requests
types-python-dateutil
types-PyYAML
types-tzlocal

[opentype]
fonttools>=4.33.3
uharfbuzz<0.36.0,>=0.25.0

[pkcs11]
python-pkcs11~=0.7.0

[testing]
pyHanko[async-http,extra-pubkey-algs,image-support,opentype,pkcs11,testing-basic,xmp]
pytest-aiohttp~=1.0.4
certomancer-csc-dummy==0.2.2

[testing-basic]
pytest>=6.1.1
requests-mock>=1.8.0
freezegun>=1.1.0
pytest-asyncio==0.21.0
certomancer==0.11.*
pytest-cov~=4.0.0

[testing-basic:python_version < "3.9"]
backports.zoneinfo[tzdata]

[xmp]
defusedxml~=0.7.1
