136 lines
3.2 KiB
TOML
Raw Permalink Normal View History

[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[project]
name = "autogen-core"
2025-06-04 22:47:36 -07:00
version = "0.6.1"
license = {file = "LICENSE-CODE"}
description = "Foundational interfaces and agent runtime implementation for AutoGen"
readme = "README.md"
requires-python = ">=3.10"
classifiers = [
"Programming Language :: Python :: 3",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
]
dependencies = [
2024-12-26 09:40:32 -08:00
"pillow>=11.0.0",
"typing-extensions>=4.0.0",
"pydantic<3.0.0,>=2.10.0",
"protobuf~=5.29.3",
"opentelemetry-api>=1.34.1",
"jsonref~=1.1.0",
"opentelemetry-semantic-conventions==0.55b1",
]
[dependency-groups]
dev = [
"aiofiles",
"asyncio_atexit",
"autogen_test_utils",
2024-08-29 17:21:53 -04:00
"azure-identity",
"chess",
"colorama",
"langchain-openai",
2024-08-29 17:21:53 -04:00
"langgraph",
"llama-index-embeddings-azure-openai",
"llama-index-llms-azure-openai",
"llama-index-readers-web",
"llama-index-readers-wikipedia",
"llama-index-tools-wikipedia",
"llama-index",
"markdownify",
2024-08-29 17:21:53 -04:00
"nbqa",
"opentelemetry-sdk>=1.34.1",
"pip",
"polars",
"python-dotenv",
"requests",
"tavily-python",
"textual-dev",
"textual-imageview",
"textual",
"types-aiofiles",
"types-docker",
"types-pillow",
"types-protobuf",
"types-requests",
"wikipedia",
# Documentation
"myst-nb==1.1.2",
"pydata-sphinx-theme==0.16.0",
"sphinx-copybutton",
"sphinx-design",
"sphinx",
"sphinxcontrib-apidoc",
"autodoc_pydantic~=2.2",
"pygments",
"sphinxext-rediraffe",
"opentelemetry-instrumentation-openai",
2025-06-04 22:47:36 -07:00
"autogen_ext==0.6.1",
# Documentation tooling
"diskcache",
"redis",
"sphinx-autobuild",
]
[tool.ruff]
extend = "../../pyproject.toml"
2025-01-09 15:06:01 -05:00
exclude = ["build", "dist", "src/autogen_core/application/protos", "tests/protos"]
include = ["src/**", "docs/**/*.ipynb", "tests/**"]
[tool.ruff.lint.per-file-ignores]
"docs/**.ipynb" = ["T20"]
[tool.pyright]
extends = "../../pyproject.toml"
2025-01-09 15:06:01 -05:00
include = ["src", "tests"]
exclude = ["src/autogen_core/application/protos", "tests/protos"]
2024-11-26 19:31:23 -05:00
reportDeprecated = true
[tool.pytest.ini_options]
minversion = "6.0"
testpaths = ["tests"]
2024-08-30 14:00:20 -04:00
asyncio_default_fixture_loop_scope = "session"
[tool.nbqa.addopts]
mypy = [
"--disable-error-code=top-level-await"
]
[tool.poe]
include = "../../shared_tasks.toml"
[tool.poe.tasks]
test = "pytest -n auto --cov=src --cov-report=term-missing --cov-report=xml"
mypy.default_item_type = "cmd"
mypy.sequence = [
"mypy --config-file ../../pyproject.toml --exclude src/autogen_core/application/protos --exclude tests/protos src tests",
"nbqa mypy docs/src --config-file ../../pyproject.toml",
]
# Docs
docs-clean = "rm -rf docs/build"
# Inline tables are WAY easier to read but for some reason they break pyright. So we have to write it out this way.
# Example of inline table:
# docs-build = [
# "docs-apidoc-all",
# { cmd = "sphinx-build docs/src docs/build" }
# ]
docs-build = "sphinx-build docs/src docs/build"
docs-serve = "sphinx-autobuild --watch src docs/src docs/build --port 8000 --jobs auto"
docs-check = "sphinx-build --fail-on-warning docs/src docs/build"
docs-check-examples = "sphinx-build -b code_lint docs/src docs/build"