# Pip requirements file for install dependencies.

# 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)

# TODO(RELEASE): Enable when using a released pywbem version:
pywbem>=1.9.0
# When using the GitHub master branch of pywbem, comment out the line above,
# activate the GitHub link based dependency below.
# In that case, some of the install tests need to be disabled by setting
# the 'PYWBEM_FROM_REPO' variable in in tests/install/test_install.sh.
# TODO(RELEASE): Disable when using a released pywbem version:
# pywbem@git+https://github.com/pywbem/pywbem.git@master

nocaselist>=1.0.3
nocasedict>=1.0.1
# 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 8.0 is incompatible with python <3.0. See issues #816 (python 2.7 not
#     supported) and #819 (click-repl incompatible)
# The Click requirements were copied into dev-requirements.txt in order not to
# have the safety package upgrade it. Keep them in sync.
# Safety package requires click 8.0.2 minimum
# Click 8.2 made some attributes read-only and click-repl 0.3.0 does not support
#   that yet, see https://github.com/click-contrib/click-repl/issues/128
Click>=8.0.2,<8.2
click-spinner>=0.1.8; python_version <= '3.11'
click-spinner>=0.1.10; python_version >= '3.12'

# click-repl 0.2.0 is needed for compatibility with Click 8.0.
# click-repl 0.3.0 causes test failures, see https://github.com/pywbem/pywbemtools/issues/1312
# click-repl 0.3.0 does not support global options in repl session, see
#   https://github.com/pywbem/pywbemtools/issues/1441. For development, we can use
#   click-repl@git+https://github.com/pywbem/click-repl.git@allow-general-options
click-repl>=0.2.0,<0.3.0

asciitree>=0.3.3
# tabulate 0.8.8 fixes ImportError on Python 3.10.
tabulate>=0.8.2; python_version <= '3.9'
tabulate>=0.8.8; python_version >= '3.10'

toposort>=1.6
# psutil 6.0.0 fixes an install error on Python 3.13 on Windows
# safety 3.6.2 depends on psutil>=6.1.0
psutil>=6.1.0

# version 3.0.36 requirement for click-repl
prompt-toolkit>=3.0.36

# PyYAML is also pulled in by dparse and python-coveralls
# PyYAML 6.0 has wheel archives for Python 3.6 - 3.11
# PyYAML 6.0.0 fails install since Cython 3 was released, see issue
#   https://github.com/yaml/pyyaml/issues/724.
# PyYAML 6.0.2 provides wheel archives for Python 3.13 on Windows
PyYAML>=6.0.2

yamlloader>=0.5.5

# setuptools>=77.0.0 requires packaging>=24.2 to work properly
packaging>=24.2

# See issue #822 about issue in mock 4.0.3.
mock>=3.0.0


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

pyparsing>=2.3.1

urllib3>=2.6.3; python_version == '3.9'
urllib3>=2.7.0; python_version >= '3.10'
