agentops/app/api/pyproject.toml

98 lines
2.7 KiB
TOML

[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[project]
name = "AgentOps-API"
version = "1.0.0"
description = "AgentOps API"
requires-python = ">=3.12,<3.13"
authors = [
{ name = "Alex Reibman", email = "areibman@gmail.com" },
{ name = "Shawn Qiu", email = "siyangqiu@gmail.com" },
{ name = "Braelyn Boynton", email = "bboynton97@gmail.com" },
{ name = "Howard Gil", email = "howardbgil@gmail.com" },
{ name = "Constantin Teodorescu", email = "teocns@gmail.com" },
]
dependencies = [
"fastapi>=0.110.0",
"uvicorn[standard]>=0.27.0",
"httpx>=0.27.0",
"python-dotenv>=1.0.0",
"Werkzeug>=3.0.3",
"tokencost>=0.1.26",
"sentry-sdk>=1.39.1",
"jsonschema",
"pyjwt>=2.8.0",
"termcolor>=2.0.0",
"uvloop>=0.19.0",
"httpcore>=1.0.5",
"supabase>=2.12.0",
"opentelemetry-semantic-conventions>=0.43b0",
"opentelemetry-semantic-conventions-ai>=0.4.2",
"clickhouse-connect>=0.8.15",
"clickhouse-driver>=0.2.9",
"dotenv>=0.9.9",
"opentelemetry-api>=1.30.0",
"opentelemetry-sdk>=1.30.0",
"psycopg-pool>=3.2.6",
"psycopg[binary]>=3.2.5",
"pydantic>=2.10.6",
"boto3>=1.37.22",
"redis>=5.2.1",
"jinja2>=3.1.6",
"sqlalchemy>=2.0.40",
"greenlet>=3.1.1",
"stripe",
"jockey",
"gotrue>=2.12.4",
]
[tool.uv.sources]
jockey = { path = "jockey", editable = true }
[dependency-groups]
dev = [
"pytest>=8.0.0", # Testing framework with good async support
"pytest-depends", # For testing complex agent workflows
"pytest-asyncio", # Async test support for testing concurrent agent operations
"pytest-mock", # Mocking capabilities for isolating agent components
"pyfakefs", # File system testing
"pytest-recording", # Alternative to pytest-vcr with better Python 3.x support
# TODO: Use release version after vcrpy is released with this fix.
"vcrpy @ git+https://github.com/kevin1024/vcrpy.git@5f1b20c4ca4a18c1fc8cfe049d7df12ca0659c9b",
# "agentops @ git+https://github.com/AgentOps-AI/agentops.git@bd621f1ae76f0881aa05d780d70054d8a5caee07",
# Code quality and type checking
"python-dotenv", # Environment management for secure testing
# Agent integration testing
"pytest-sugar>=1.0.0",
"pdbpp>=0.10.3",
"pytest-env>=1.1.5",
"pyinstrument>=5.0.1",
]
[tool.hatch.metadata]
allow-direct-references = true
[tool.hatch.build.targets.wheel]
packages = ["agentops"]
[tool.pytest.ini_options]
asyncio_mode = "auto"
asyncio_default_fixture_loop_scope = "session"
testpaths = ["tests"]
addopts = "--tb=short -p no:warnings -s --import-mode=importlib --ignore=tests/integration"
faulthandler_timeout = 30
timeout = 60
disable_socket = true
pythonpath = ["../deploy"]
[tool.pytest_env]
# https://github.com/pytest-dev/pytest-env
JWT_SECRET_KEY = "test"
[tool.mypy]
plugins = ["pydantic.mypy"]