Django>=5.2
django-modelcluster<7.0,>=6.5
django-permissionedforms<1.0,>=0.1
django-taggit<7,>=5.0
django-treebeard<6.0,>=4.8
djangorestframework<4.0,>=3.15.1
django-filter>=23.3
draftjs_exporter<6.0,>=2.1.5
Pillow>=9.1.0
beautifulsoup4<5,>=4.13.3
Willow[heif]<2,>=1.11.0
requests<3.0,>=2.11.1
openpyxl<4.0,>=3.0.10
anyascii>=0.1.5
telepath<1,>=0.3.1
laces<0.2,>=0.1
django-tasks<0.13,>=0.9
modelsearch<1.4,>=1.3

[docs]
pyenchant<4,>=3.3.0
sphinxcontrib-spelling<9,>=8
Sphinx>=7.3
sphinx-autobuild>=0.6.0
sphinx-wagtail-theme<7,>=6.5.0
myst_parser<6,>=4.0.0
sphinx_llm>=0.2.1

[testing]
Jinja2<3.2,>=3.0
boto3<2,>=1.28
freezegun>=0.3.8
azure-mgmt-cdn<13.0,>=12.0
azure-mgmt-frontdoor<1.1,>=1.0
django-pattern-library>=0.7
responses<1,>=0.25
coverage>=3.7.0
doc8==2.0.0
ruff==0.15.2
semgrep==1.152.0
curlylint==0.13.1
djhtml==3.0.10
polib<2.0,>=1.1
factory-boy>=3.2
tblib<4.0,>=3.0
