# Many of these packages are also specified in setup.py, and versions
# should be kept in sync. The list in setup.py is shorter, as it only
# includes packages needed for deployment.

python-gnupg==0.4.7    # Integration with gpg for key-cert objects
passlib==1.7.4         # Password hashing for CRYPT-PW and MD5-PW
IPy==1.01              # IP address parsing
dataclasses==0.8; python_version < '3.7'       # PEP 557 dataclasses for python<3.7
ordered-set==4.0.2     # Ordered sets for simple unique ordered storage
beautifultable==0.8.0  # pyup: <1.0.0
PyYAML==5.4.1          # parsing YAML config files
datrie==0.8.2           # efficient route searching, used for RPKI
setproctitle==1.2.2   # updating the process title for useful ps output
python-daemon==2.3.0   # daemonising the main process
pid==3.0.4             # managing PID files
redis==3.5.3           # preloaded data storage & sync through redis
hiredis==2.0.0         # improved redis response parsing performance
requests==2.26.0       # HTTP request handling
pytz==2021.1
ariadne==0.13.0
uvicorn==0.15.0        # ASGI server
uvicorn[standard]==0.15.0; python_version > '3.7'  # ASGI server extras
starlette==0.14.2 # pyup: <0.15      # ASGI framework - pinned to <0.15 for ariadne
psutil==5.8.0          # Process management
asgiref==3.4.1         # ASGI utilities
pydantic==1.8.2        # Input validation
six==1.13.0            # Used in vendored dotteddict

# Database connections and management
psycopg2-binary==2.9.1; platform_python_implementation == "CPython"
psycopg2cffi==2.9.0; platform_python_implementation == "PyPy"
SQLAlchemy==1.3.24 # pyup: <1.4  # https://github.com/irrdnet/irrd/issues/475
alembic==1.7.1
ujson==4.1.0

# Testing and related packages
pytest==6.2.5
pytest-cov==2.12.1
coverage==6.0b1
twisted==21.7.0    # Used for a mock email server in integration tests
python-graphql-client==0.4.2

# Documentation generation
Sphinx==4.2.0
sphinxcontrib-spelling==7.2.1
sphinx-material==0.0.34

# Code style and type checks
mypy==0.910; platform_python_implementation == "CPython"
flake8==3.9.2
pep8-naming==0.12.1

# Creating python packages
setuptools==58.0.4
wheel==0.37.0  # also require for installing, #488
twine==3.4.2
