[project]
name = "robotnikmq"
version = "0.7.6"
description = "Utilities for safe, efficient, and scalable infrastructure using RabbitMQ"
authors = [
    { name = "Eugene Kovalev", email = "eugene@kovalev.systems" },
]
dependencies = [
    "typeguard>=4.0.0",
    "pyyaml>=6.0",
    "pydantic>=1.0",
    "pika>=1.3.0",
    "funcy>=1.17",
    "arrow>=1.2.3",
    "types-pika>=1.2.0b1",
    "types-pyyaml>=6.0.11",
    "typing-extensions>=4.5.0",
    "tenacity>=8.2.2",
    "loguru>=0.7.0",
]
requires-python = ">3.9.0,<4.0"
readme = "README.md"

[project.license]
text = "GPL-3.0-or-later"

[tool.pdm.dev-dependencies]
dev = [
    "pytest>=7.3.0",
    "pytest-cov>=4.0.0",
    "pylint<3.0.0,>=2.12.2",
    "mypy<1.0,>=0.930",
    "flake8<5.0.0,>=3.0.0",
    "mkdocs>=1.0.0",
    "mkdocstrings[python]>=0.10.0",
    "mkdocs-cinder>=1.2.0",
    "pytest-rabbitmq>=2.2.1",
    "pudb>=2022.1.2",
    "types-retry>=0.9.9.3",
    "testcontainers[rabbitmq]>=3.7.1",
    "autopep8>=1.6.0",
    "bandit>=1.7.5",
    "docker>=7.0.0",
    "twine>=5.1.1",
]

[tool.pdm.scripts.publish-test]
cmd = "twine upload -r testpypi dist/*"

[tool.pdm.scripts.publish-prod]
cmd = "twine upload -r pypi dist/*"

[tool.pdm.build]
includes = []

[build-system]
requires = [
    "pdm-pep517>=1.0.4",
]
build-backend = "pdm.pep517.api"
