mirror of
https://github.com/exo-explore/exo.git
synced 2025-12-23 22:27:50 -05:00
112 lines
2.0 KiB
TOML
112 lines
2.0 KiB
TOML
[project]
|
|
name = "exo"
|
|
version = "0.2.0"
|
|
description = "Exo"
|
|
readme = "README.md"
|
|
requires-python = ">=3.13"
|
|
dependencies = [
|
|
"exo-master",
|
|
"exo-worker",
|
|
]
|
|
|
|
# dependencies only required for development
|
|
[dependency-groups]
|
|
dev = [
|
|
"basedpyright>=1.29.4",
|
|
"maturin>=1.9.0",
|
|
"pytest>=8.4.0",
|
|
"pytest-asyncio>=1.0.0",
|
|
"ruff>=0.11.13",
|
|
]
|
|
|
|
# dependencies only required for Apple Silicon
|
|
[project.optional-dependencies]
|
|
darwin = [
|
|
"mlx",
|
|
]
|
|
|
|
###
|
|
# workspace configuration
|
|
###
|
|
|
|
[tool.uv.workspace]
|
|
members = [
|
|
"master",
|
|
"worker",
|
|
"shared",
|
|
"engines/*",
|
|
"networking",
|
|
]
|
|
|
|
[tool.uv.sources]
|
|
exo-shared = { workspace = true }
|
|
exo-master = { workspace = true }
|
|
exo-worker = { workspace = true }
|
|
exo-engine-mlx = { workspace = true }
|
|
exo-networking = { workspace = true }
|
|
|
|
[build-system]
|
|
requires = ["hatchling"]
|
|
build-backend = "hatchling.build"
|
|
|
|
[tool.hatch.build]
|
|
clean = true
|
|
|
|
[tool.hatch.build.targets.wheel]
|
|
packages = []
|
|
only-include = ["pyproject.toml", "README.md"]
|
|
|
|
[tool.hatch.build.targets.sdist]
|
|
packages = []
|
|
only-include = ["pyproject.toml", "README.md"]
|
|
|
|
###
|
|
# type-checker configuration
|
|
###
|
|
|
|
[tool.basedpyright]
|
|
typeCheckingMode = "strict"
|
|
failOnWarnings = true
|
|
|
|
reportAny = "error"
|
|
reportUnknownVariableType = "error"
|
|
reportUnknownParameterType = "error"
|
|
reportMissingParameterType = "error"
|
|
reportMissingTypeStubs = "error"
|
|
reportInvalidCast = "error"
|
|
reportUnnecessaryCast = "error"
|
|
reportUnnecessaryTypeIgnoreComment = "error"
|
|
|
|
include = ["master", "worker", "shared", "engines/*"]
|
|
pythonVersion = "3.13"
|
|
pythonPlatform = "Darwin"
|
|
|
|
stubPath = "shared/protobufs/types"
|
|
ignore = [
|
|
"shared/protobufs/types/**/*",
|
|
]
|
|
|
|
###
|
|
# uv configuration
|
|
###
|
|
|
|
# supported platforms for this project
|
|
[tool.uv]
|
|
environments = [
|
|
"sys_platform == 'darwin'",
|
|
"sys_platform == 'linux'",
|
|
]
|
|
|
|
###
|
|
# ruff configuration
|
|
###
|
|
|
|
[tool.ruff]
|
|
extend-exclude = ["shared/protobufs/**"]
|
|
|
|
[tool.ruff.lint]
|
|
extend-select = ["I", "N", "B", "A", "PIE", "SIM"]
|
|
|
|
[tool.pytest.ini_options]
|
|
pythonpath = "."
|
|
asyncio_mode = "auto" |