[build-system]
requires = ["setuptools>=77.0.0"]
build-backend = "setuptools.build_meta"

[project]
name = "dbl-gateway"
version = "0.9.7"
description = "DBL Gateway"
readme = { file = "README.md", content-type = "text/markdown" }
requires-python = ">=3.11"
license = "MIT"
authors = [
  { name = "Lukas Pfister", email = "228201683+lukaspfisterch@users.noreply.github.com" }
]
keywords = ["dbl", "gateway", "llm", "policy", "deterministic", "audit"]
classifiers = [
  "Development Status :: 4 - Beta",
  "Intended Audience :: Developers",
  "Programming Language :: Python :: 3",
  "Programming Language :: Python :: 3.11",
  "Programming Language :: Python :: 3.12",
  "Programming Language :: Python :: 3 :: Only",
  "Topic :: Software Development :: Libraries",
  "Topic :: Internet :: WWW/HTTP"
]
license-files = ["LICENSE"]
dependencies = [
  "dbl-core>=0.3.2,<0.4.0",
  "dbl-policy>=0.3.0,<0.4.0",
  "dbl-main>=0.3.0,<0.4.0",
  "dbl-ingress>=0.1.1,<0.2.0",
  "kl-kernel-logic>=0.5.0,<0.6.0",
  "fastapi>=0.110.0",
  "uvicorn>=0.27.0",
  "httpx>=0.27.0",
]

[project.urls]
Homepage = "https://github.com/lukaspfisterch/dbl-gateway"
Repository = "https://github.com/lukaspfisterch/dbl-gateway"
Issues = "https://github.com/lukaspfisterch/dbl-gateway/issues"

[project.scripts]
dbl-gateway = "dbl_gateway.app:main"

[project.optional-dependencies]
dev = [
  "pytest>=8,<9",
  "ruff>=0.5,<1",
  "mypy>=1.10,<2",
  "ensdg>=0.4.0,<0.5.0",
]
oidc = [
  "python-jose[cryptography]>=3.3,<4",
]

[tool.setuptools]
package-dir = { "" = "src" }

[tool.setuptools.packages.find]
where = ["src"]
include = ["dbl_gateway*"]
exclude = ["tests*", "docs*", "scripts*"]

[tool.setuptools.package-data]
dbl_gateway = ["static/*.html"]

[tool.pytest.ini_options]
testpaths = ["tests"]
pythonpath = ["src"]
filterwarnings = [
  "ignore:.*on_event is deprecated.*:DeprecationWarning",
]
addopts = ["-q", "--strict-markers", "--strict-config"]
