Files
smavs/pyproject.toml
T
larry a8ad01d04c
Continuous Integration / Quality Assurance (push) Canceled after 0s
ci: configura pipeline di integrazione continua
2026-08-06 15:36:53 +02:00

192 lines
2.7 KiB
TOML

[build-system]
requires = ["setuptools>=69.0"]
build-backend = "setuptools.build_meta"
[project]
name = "smavs"
version = "0.1.0"
description = "SMAVS - Spiral Composition Engine."
readme = "README.md"
requires-python = ">=3.11"
license = { file = "LICENSE" }
authors = [
{ name = "Spiral" }
]
keywords = [
"composition",
"engine",
"framework",
"modular",
"spiral",
"smavs",
]
classifiers = [
"Development Status :: 2 - Pre-Alpha",
"Intended Audience :: Developers",
"License :: Other/Proprietary License",
"Operating System :: OS Independent",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.11",
"Typing :: Typed",
]
dependencies = []
[project.urls]
Homepage = "https://gitea.netbird.smavs.duckdns.org/SMAVS/smavs"
Repository = "https://gitea.netbird.smavs.duckdns.org/SMAVS/smavs"
Documentation = "https://gitea.netbird.smavs.duckdns.org/SMAVS/smavs"
[project.optional-dependencies]
dev = [
"ruff",
"mypy",
"pytest",
"pytest-cov",
"coverage",
"mkdocs",
"mkdocs-material",
]
[tool.setuptools]
include-package-data = true
[tool.ruff]
target-version = "py311"
line-length = 88
src = ["api", "artifacts", "core", "modules", "shared", "tests"]
[tool.ruff.lint]
select = [
"E",
"F",
"W",
"I",
"UP",
"B",
"SIM",
"C4",
"N",
"ANN",
"RET",
"RUF",
]
ignore = [
"ANN101",
"ANN102",
]
fixable = ["ALL"]
[tool.ruff.format]
quote-style = "double"
indent-style = "space"
line-ending = "lf"
docstring-code-format = true
[tool.mypy]
python_version = "3.11"
strict = true
warn_unused_configs = true
warn_unused_ignores = true
warn_return_any = true
warn_redundant_casts = true
warn_unreachable = true
disallow_untyped_defs = true
disallow_incomplete_defs = true
disallow_untyped_calls = true
check_untyped_defs = true
no_implicit_optional = true
strict_equality = true
pretty = true
show_error_codes = true
exclude = [
"^docs/",
"^examples/",
]
[tool.pytest.ini_options]
minversion = "8.0"
testpaths = [
"tests",
]
python_files = [
"test_*.py",
]
python_classes = [
"Test*",
]
python_functions = [
"test_*",
]
addopts = [
"-ra",
"--strict-markers",
"--strict-config",
]
[tool.coverage.run]
branch = true
source = [
"api",
"artifacts",
"core",
"modules",
"shared",
]
omit = [
"tests/*",
]
[tool.coverage.report]
show_missing = true
skip_empty = true
fail_under = 95
exclude_lines = [
"pragma: no cover",
"if TYPE_CHECKING:",
"raise NotImplementedError",
"pass",
]
[tool.mkdocs]
config_file = "mkdocs.yml"
[tool.coverage.paths]
source = [
".",
]
[tool.coverage.html]
directory = "htmlcov"