# Pip requirements file for installation of easy-vault project.
#
# The order of packages is significant, because pip processes them in the order
# of appearance.
#
# Make sure that the minimum versions required in this file are consistent with
# the minimum versions specified in minimum-constraints.txt.


# The base dependencies are not specified in this file:
# pip
# setuptools
# wheel


# Direct dependencies (except pip, setuptools, wheel):

# six (used by virtualenv, tox, probably others)
# virtualenv 20.0 requires six>=1.12.0 on py>=3.8
# tox 3.17 requires six>=1.14.0
six>=1.14.0

# cryptography 2.9 removed support for Python 3.4
# cryptography 3.3 removed support for Python 3.5
# cryptography 3.4 removed support for Python 2.7
cryptography>=3.3,<3.4; python_version == '2.7'
cryptography>=2.8,<2.9; python_version == '3.4'
cryptography>=3.2.1,<3.3; python_version == '3.5'
cryptography>=3.4.7; python_version >= '3.6'

# keyring 19.0.0 removed support for Python 2.7 + 3.4
# keyring 21.0.0 removed support for Python 3.5
keyring>=18.0.0,<19.0.0; python_version == '2.7'
keyring>=18.0.0,<19.0.0; python_version == '3.4'
keyring>=18.0.0,<21.0.0; python_version == '3.5'
keyring>=18.0.0; python_version >= '3.6'

# PyYAML 5.3 removed support for Python 3.4
# PyYAML 5.3 fixed narrow build error on Python 2.7
# PyYAML 5.3.1 addressed issue 38100 reported by safety
# PyYAML 5.2 addressed issue 38639 reported by safety
PyYAML>=5.3.1; python_version == '2.7'
PyYAML>=5.2,<5.3; python_version == '3.4'
PyYAML>=5.3.1; python_version > '3.4'
yamlloader>=0.5.5

# Click 7.0 has issue #1231 on Windows which we circumvent in the test code
# Click 7.1 has a bug with output capturing
# Click 7.1 removed support for Python 3.4
Click>=7.1.1; python_version == '2.7'
Click>=7.0,<7.1; python_version == '3.4'
Click>=7.1.1; python_version >= '3.5'


# Indirect dependencies are not specified in this file, except when needed:

pywin32-ctypes>=0.2.0; sys_platform == 'win32'
cffi>=1.14.5

# configparser 5.0 removed support for Python 2.7/3.4/3.5 and declares that
#   properly but pip 20.3 nevertheless tries to install 5.x.
#   It is used only by keyring and only on Python 2.7.
configparser>=3.5,<5.0; python_version == '2.7'
