# -------------------------------------------------------------------
# Python packages used by pymodbus.
# -------------------------------------------------------------------
# This file installs all requirements used by pymodbus, and are
# intended for developers who have cloned the repository.
#
# pymodbus is only being tested on python version 3.8, 3.9 and 3.10
# depending on the usage profile it might work on other versions.
# python_version>=3.8

# -------------------------------------------------------------------
# Required packages.
# -------------------------------------------------------------------
# install:required

# -------------------------------------------------------------------
# optional packages.
# -------------------------------------------------------------------
# These packages are optional for the runtime, but demanded for
# document generation, development and test.
#
# these packages can be installed like:
#    pip install pymodbus[serial]

# install:repl
aiohttp>=3.8.5
typer[all]>=0.7.0
prompt-toolkit>=3.0.36
pygments>=2.15.0
click>=8.0.0

# install:serial
pyserial>=3.5


# -------------------------------------------------------------------
# documentation, everything needed to generate documentation.
# -------------------------------------------------------------------
# install:documentation
recommonmark>=0.7.1
Sphinx>=5.3.0
sphinx-rtd-theme>=1.1.1


# -------------------------------------------------------------------
# development, everything needed to develop/test/check.
# -------------------------------------------------------------------
# install:development
codespell>=2.2.2
coverage>=7.1.0
mypy>=1.3.0
pre-commit>=3.1.1
pyflakes>=3.0.1
pydocstyle>=6.3.0
pycodestyle>=2.10.0
pylint>=2.17.2
pytest>=7.3.1
pytest-asyncio>=0.20.3
pytest-cov>=4.1.0
pytest-timeout>=2.1.0
pytest-xdist>=3.3.1
ruff>=0.0.277
types-Pygments
types-pyserial
twine>=4.0.2
