[tool.poetry] name = "arcade-ai" version = "0.1.0" description = "" packages = [ {include="arcade", from="."} ] authors = ["Arcade AI "] [build-system] requires = ["poetry-core>=1.0.0"] build-backend = "poetry.core.masonry.api" [tool.poetry.dependencies] python = ">=3.10,<4.0" pydantic = "^2.7.0" typer = "^0.9.0" rich = "^13.7.1" toml = "^0.10.2" tomlkit = "^0.12.4" openai = "^1.36.0" # TODO: relax to an earlier version that still has what we need arcadepy = "~0.1.0" pyjwt = "^2.8.0" loguru = "^0.7.0" types-python-dateutil = "2.9.0.20241003" types-pytz = "2024.2.0.20241003" opentelemetry-instrumentation-fastapi = {version = "0.48b0", optional = true} opentelemetry-exporter-otlp-proto-http = {version = "1.27.0", optional = true} opentelemetry-exporter-otlp-proto-common = {version = "1.27.0", optional = true} fastapi = {version = "^0.110.0", optional = true} uvicorn = {version = "^0.30.0", optional = true} scipy = {version = "^1.14.0", optional = true} numpy = {version = "^2.0.0", optional = true} scikit-learn = {version = "^1.5.0", optional = true} pytz = {version = "^2024.1", optional = true} python-dateutil = {version = "^2.8.2", optional = true} [tool.poetry.extras] fastapi = ["fastapi", "uvicorn", "opentelemetry-instrumentation-fastapi", "opentelemetry-exporter-otlp-proto-http", "opentelemetry-exporter-otlp-proto-common"] evals = ["scipy", "numpy", "scikit-learn", "pytz", "python-dateutil"] [tool.poetry.group.dev.dependencies] pytest = "^8.1.2" pytest-cov = "^4.0.0" mypy = "^1.5.1" pre-commit = "^3.4.0" tox = "^4.11.1" pytest-asyncio = "^0.23.7" types-toml = "^0.10.8" types-pytz = "^2024.1" types-python-dateutil = "^2.8.2" poetry-plugin-export = "^1.7.0" [tool.poetry.scripts] arcade = "arcade.cli.main:cli" [tool.mypy] files = ["arcade"] python_version = "3.10" disallow_untyped_defs = "True" disallow_any_unimported = "True" no_implicit_optional = "True" check_untyped_defs = "True" warn_return_any = "True" warn_unused_ignores = "True" show_error_codes = "True" ignore_missing_imports = "True" [tool.pytest.ini_options] testpaths = ["tests"] [tool.coverage.run] branch = true source = ["arcade"] omit = ["arcade/cli/*"] [tool.coverage.report] skip_empty = true