# Pip requirements file for packages needed for installation.

# Note: The dependencies in this file will become the dependencies stated
# in the Pypi package metadata.


# Direct dependencies for install (must be consistent with minimum-constraints-install.txt)

decorator>=4.0.11

# pytz 2019.1 fixes an ImportError for collections.Mapping on Python 3.10
pytz>=2019.1

# requests 2.25.0 tolerates urllib3 1.26.5 which is needed on Python 3.10 to
#   remove ImportWarning in six
requests>=2.32.2

stomp-py>=8.1.1

python-dateutil>=2.8.2
immutable-views>=0.6.0
nocasedict>=1.0.2

# PyYAML is used by zhmcclient_mock, zhmcclient.testutils and bandit
# PyYAML 5.3 has wheel archives for Python 2.7, 3.5 - 3.9
# PyYAML 5.4 has wheel archives for Python 2.7, 3.6 - 3.9
# PyYAML 6.0.0 has wheel archives for Python 3.6 - 3.11
# PyYAML 6.0.1 has wheel archives for Python 3.6 - 3.12
# PyYAML 5.4.x and 6.0.0 fail to install when no wheel archives are available since Cython 3
#   was released, see issue https://github.com/yaml/pyyaml/issues/724. Fixed in 6.0.1.
PyYAML>=5.3.1,!=5.4.0,!=5.4.1; python_version <= '3.11'
PyYAML>=5.3.1,!=5.4.0,!=5.4.1,!=6.0.0; python_version >= '3.12'

# yamlloader pulled in by zhmcclient_mock and zhmcclient.testutils
yamlloader>=0.5.5

# jsonschema pulled in by zhmcclient_mock and zhmcclient.testutils
# jsonschema 4.0.0 was yanked (and does not install), but older pip versions don't recognize that
# jsonschema is also used by jupyter and requires >=3.0.1
# jsonschema 3.0.1 and 3.0.2 may cause pkg_resources.DistributionNotFound; fixed in 3.1.0.
jsonschema>=3.1.0,!=4.0.0


# Indirect dependencies for install that are needed for some reason (must be consistent with minimum-constraints-install.txt)

# Since we changed to use the allowed_methods attribute introduced in urllib3
# 1.26.0, and our minimum version of requests (2.25.0) only requires
# urllib3>=1.21.0, we need to require a minimum version of urllib3.
urllib3>=1.26.19

# pyrsistent is used by jsonschema>=3.0
# pyrsistent 0.15.0 started using the FileNotFoundError built-in exception that
# was added only in Python 3. pyrsistent 0.15.1 fixed that by defining it locally for py27.
pyrsistent>=0.15.1
