# Installer requirements
# ----------------------
#
# The list of installer requirements is hardcoded in performance/venv.py
#
# Note: installer requirements are also used in .travis.yml

# html5lib requires setuptools 18.5 or newer
setuptools>=18.5
# pip 6 is the first version supporting environment markers
pip>=6.0
# install wheel so pip can cache binary wheel packages locally,
# and install prebuilt wheel packages from PyPI
wheel


# Indirect dependencies
# ---------------------
#
# Freeze indirect dependencies to get a more reproductible test environment

# tornado 4.4.1 dependencies
backports-abc==0.5
singledispatch==3.4.0.3
certifi==2017.11.5

# spambayes 1.1b2 dependencies
lockfile==0.12.2; python_version < '3.0'
pydns==2.3.6; python_version < '3.0'

# Mako 1.0.4 dependencies
MarkupSafe==1.0

# html5lib 0.999999999 dependencies
webencodings==0.5.1

# sympy 1.0 dependency
mpmath==1.0.0

# perf dependencies (docutils is needed by statistics)
statistics==1.0.3.5; python_version < '3.4'
docutils==0.14


# performance dependencies
# ------------------------

six==1.11.0
perf==1.5.1


# Benchmarks dependencies
# -----------------------
#
# When one of these dependencies is upgraded, the performance major version
# should be increased to respect semantic versionning. Comparison between
# two performance results of two different major versions is not reliable.

Chameleon==3.2                            # bm_chameleon
# Django is currently stuck at Django 1.11 to support Python 2.7 and Python 3:
# https://mail.python.org/pipermail/speed/2018-January/000619.html
Django==1.11.9                            # bm_django_template
Genshi==0.7                               # bm_genshi
Mako==1.0.7                               # bm_mako
SQLAlchemy==1.2.0                         # bm_sqlalchemy_declarative
dulwich==0.18.6                           # dulwich_log
mercurial==4.4.2; python_version < '3.0'  # bm_hg_startup
html5lib==1.0.1                           # bm_html5lib
pathlib2==2.3.0; python_version < '3.4'   # bm_pathlib
pyaes==1.6.1                              # bm_crypto_pyaes
spambayes==1.1b2; python_version < '3.0'  # bm_spambayes
sympy==1.1.1                              # bm_sympy
tornado==4.5.3                            # bm_tornado_http


# Optional dependencies
# ---------------------
#
# The list of optional dependencies is hardcoded in performance/venv.py

psutil==5.4.3


# performance
# -----------
#
# The performance module is installed inside the virtual environment
# by performance/venv.py
