53 lines
1.5 KiB
TOML
53 lines
1.5 KiB
TOML
[project]
|
|
name = "multi-swarm-coevolutive"
|
|
version = "0.1.0"
|
|
description = "Multi-Swarm Coevolutive: monorepo workspace (core + strategie)"
|
|
authors = [{ name = "Adriano Dal Pastro", email = "adrianodalpastro@tielogic.com" }]
|
|
requires-python = ">=3.13"
|
|
# I due workspace member sono dipendenze runtime del deployable app root.
|
|
# Cosi' `uv sync --frozen --no-dev` (nel builder Docker) li installa entrambi
|
|
# come editable nella venv senza tirare pytest/ruff/mypy.
|
|
dependencies = [
|
|
"multi-swarm-core",
|
|
"strategy-crypto",
|
|
"strategy-pythagoras",
|
|
]
|
|
|
|
[tool.uv.workspace]
|
|
members = ["src/multi_swarm_core", "src/strategy_crypto", "src/strategy_pythagoras"]
|
|
|
|
[tool.uv.sources]
|
|
multi-swarm-core = { workspace = true }
|
|
strategy-crypto = { workspace = true }
|
|
strategy-pythagoras = { workspace = true }
|
|
|
|
[dependency-groups]
|
|
dev = [
|
|
"pytest>=8.3",
|
|
"pytest-mock>=3.14",
|
|
"pytest-asyncio>=0.24",
|
|
"responses>=0.25",
|
|
"ruff>=0.7",
|
|
"mypy>=1.13",
|
|
"types-requests>=2.32",
|
|
]
|
|
|
|
[tool.ruff]
|
|
line-length = 100
|
|
target-version = "py313"
|
|
|
|
[tool.ruff.lint]
|
|
select = ["E", "F", "W", "I", "N", "UP", "B", "RUF"]
|
|
|
|
[tool.mypy]
|
|
python_version = "3.13"
|
|
strict = true
|
|
|
|
[tool.pytest.ini_options]
|
|
testpaths = ["src/multi_swarm_core/tests", "src/strategy_crypto/tests", "src/strategy_pythagoras/tests"]
|
|
addopts = "-v --tb=short --import-mode=importlib"
|
|
markers = [
|
|
"integration: tests that require external services (Cerbero, LLM API)",
|
|
"slow: tests that take more than 5 seconds",
|
|
]
|