Jinja2>=2.9
bleach>=1.4.3

[all]
authlib>=0.14.0
hiredis
jaeger-client>=4.0.0
lxml>=4.2.0
matrix-synapse-ldap3>=0.1
opentracing>=2.2.0
pyjwt>=1.6.4
pympler
pysaml2>=4.5.0
sentry-sdk>=0.7.2
txredisapi>=1.4.7

[all:platform_python_implementation != "PyPy"]
psycopg2>=2.8

[all:platform_python_implementation == "PyPy"]
psycopg2cffi-compat==1.1
psycopg2cffi>=2.8

[cache_memory]
pympler

[dev]
GitPython==3.1.14
black==21.12b0
click==7.1.2
commonmark==0.9.1
flake8
flake8-bugbear==21.3.2
flake8-comprehensions
isort==5.7.0
mypy-zope==0.3.2
mypy==0.910
parameterized>=0.7.0
pygithub==1.55
redbaron==0.9.2
towncrier
twine
types-Pillow>=8.3.4
types-PyYAML>=5.4.10
types-bleach>=4.1.0
types-jsonschema>=3.2.0
types-opentracing>=2.4.2
types-pyOpenSSL>=20.0.7
types-requests>=2.26.0
types-setuptools>=57.4.0

[jwt]
pyjwt>=1.6.4

[lint]
black==21.12b0
flake8
flake8-bugbear==21.3.2
flake8-comprehensions
isort==5.7.0

[matrix-synapse-ldap3]
matrix-synapse-ldap3>=0.1

[mypy]
mypy-zope==0.3.2
mypy==0.910
types-Pillow>=8.3.4
types-PyYAML>=5.4.10
types-bleach>=4.1.0
types-jsonschema>=3.2.0
types-opentracing>=2.4.2
types-pyOpenSSL>=20.0.7
types-requests>=2.26.0
types-setuptools>=57.4.0

[oidc]
authlib>=0.14.0

[opentracing]
jaeger-client>=4.0.0
opentracing>=2.2.0

[postgres]

[postgres:platform_python_implementation != "PyPy"]
psycopg2>=2.8

[postgres:platform_python_implementation == "PyPy"]
psycopg2cffi-compat==1.1
psycopg2cffi>=2.8

[redis]
hiredis
txredisapi>=1.4.7

[saml2]
pysaml2>=4.5.0

[sentry]
sentry-sdk>=0.7.2

[systemd]
systemd-python>=231

[test]
parameterized>=0.7.0

[url_preview]
lxml>=4.2.0
