# Pip requirements file for installation of the zhmc-os-forwarder repo.
#
# The order of packages is significant, because pip processes them in the order
# of appearance.
#

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

# zhmcclient @ git+https://github.com/zhmcclient/python-zhmcclient.git@master
zhmcclient>=1.10.0

urllib3>=1.25.9; python_version <= '3.9'
urllib3>=1.26.5; python_version >= '3.10'
jsonschema>=3.2.0

# PyYAML pulled in by zhmcclient, dparse, python-coveralls
# 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 has wheel archives for Python 3.6 - 3.11
# PyYAML 5.4 and 6.0.0 fails install since Cython 3 was released, see issue
#   https://github.com/yaml/pyyaml/issues/724.
PyYAML>=5.3.1; python_version <= '3.5'
PyYAML>=5.3.1,!=5.4.0,!=5.4.1; python_version >= '3.6' and python_version <= '3.11'
PyYAML>=5.3.1,!=5.4.0,!=5.4.1,!=6.0.0; python_version >= '3.12'


# Indirect dependencies for runtime (must be consistent with minimum-constraints.txt)

# pyrsistent is pulled in by jsonschema.
# Before its version 0.17.0, pyrsistent did not or not correctly declare its
# required Python versions in the package metadata.
# pyrsistent 0.15.0 fixes import errors on Python>=3.10, but only 0.18.1 has
# Python 3.10 support (accordong to the change log).
pyrsistent>=0.17.3; python_version <= '3.6'
pyrsistent>=0.18.1; python_version >= '3.7'
