# -*- makefile -*-

Sphinx~=2.4.4
actdiag~=2.0.0
blockdiag~=1.5.4
doc8~=0.8.0
nwdiag~=2.0.0
recommonmark~=0.6.0
seqdiag~=2.0.0
sphinx-rtd-theme~=0.4.3
sphinxcontrib-actdiag~=2.0.0
sphinxcontrib-blockdiag~=2.0.0
sphinxcontrib-nwdiag~=2.0.0
sphinxcontrib-openapi~=0.6.0
sphinxcontrib-seqdiag~=2.0.0

# ----------------------------------------------------------------
# v3.6: error in funcparserlib setup command: use_2to3 is invalid.
# https://funcparserlib.pirx.ru/changes/
# funcparserlib=~0.3.5
# ----------------------------------------------------------------
funcparserlib~=1.0.0a0

# ----------------------------------------------------------------
# ImportError: cannot import name 'environmentfilter' from 'jinja2
# ----------------------------------------------------------------
Jinja2<3.1

# [EOF]
