#
# This file is autogenerated by pip-compile with python 3.7
# To update, run:
#
#    pip-compile requirements-dev.in
#
alabaster==0.7.12
    # via sphinx
babel==2.7.0
    # via sphinx
certifi==2021.5.30
    # via requests
charset-normalizer==2.0.4
    # via requests
click==7.0
    # via pip-tools
coverage==4.5.4
    # via -r requirements-dev.in
docutils==0.15.2
    # via sphinx
idna==3.2
    # via requests
imagesize==1.1.0
    # via sphinx
importlib-metadata==4.8.1
    # via pep517
jinja2==2.11.3
    # via sphinx
markupsafe==1.1.1
    # via jinja2
nose==1.3.7
    # via -r requirements-dev.in
packaging==20.9
    # via sphinx
pep517==0.11.0
    # via pip-tools
pip-tools==6.2.0
    # via -r requirements-dev.in
pygments==2.9.0
    # via sphinx
pyparsing==2.4.7
    # via packaging
pytz==2019.1
    # via babel
q==2.3
    # via -r requirements-dev.in
requests==2.26.0
    # via sphinx
six==1.15.0
    # via sphinx
snowballstemmer==1.9.0
    # via sphinx
sphinx==1.8.5
    # via
    #   sphinx-argparse
    #   sphinx-rtd-theme
    #   sphinxcontrib-programoutput
sphinx-argparse==0.2.5
    # via -r requirements-dev.in
sphinx-rtd-theme==0.1.6
    # via -r requirements-dev.in
sphinxcontrib-programoutput==0.8
    # via -r requirements-dev.in
sphinxcontrib-websupport==1.1.2
    # via sphinx
tomli==1.2.1
    # via pep517
typing-extensions==3.10.0.2
    # via importlib-metadata
urllib3==1.26.6
    # via requests
wheel==0.37.0
    # via pip-tools
zipp==3.5.0
    # via
    #   importlib-metadata
    #   pep517

# The following packages are considered to be unsafe in a requirements file:
# pip
# setuptools
