psyinfra/onyo

View on GitHub
pyproject.toml

Summary

Maintainability
Test Coverage
[build-system]
requires = ["setuptools", "setuptools-scm"]
build-backend = "setuptools.build_meta"

[project]
name = "onyo"
authors = [
    {name = "Alex Waite", email = "alex@waite.eu"},
    {name = "Tobias Kadelka", email = "t.kadelka@fz-juelich.de"},
    {name = "Benjamin Poldrack", email = "benjaminpoldrack@gmail.com"},
]
description = "Textual inventory system backed by git"
readme = "README.md"
requires-python = ">=3.11"
keywords = ["inventory", "git"]
license = {text = "ISC"}
classifiers = [
    "Programming Language :: Python :: 3",
]
dependencies = [
    "ruamel.yaml",
    "rich",
    "natsort",
    "fastnumbers"  # not strictly neccessary, but makes natsort's number parsing faster
]
dynamic = ["version"]

[project.urls]
"Bug Reports" = "https://github.com/psyinfra/onyo/issues"
"Source" = "https://github.com/psyinfra/onyo/"

[project.optional-dependencies]
tests = [
    'pyre-check',
    'pytest',
    'pytest-cov',
    'pytest-randomly',
    'ruff',
]
docs = [
    'sphinx',
    'sphinx-argparse',
    'sphinx-autodoc-typehints',
    'sphinx-rtd-theme',
    'typing-extensions',
]

[project.scripts]
onyo = "onyo.main:main"

[tool.setuptools_scm]
version_file = "onyo/_version.py"

#[tool.setuptools]
## If there are data files included in your packages that need to be
## installed, specify them here.
#package-data = {"sample" = ["*.dat"]}

[tool.setuptools.packages]
find = {}  # Scanning implicit namespaces is active by default

[tool.ruff]
exclude = ["build/"]
# E501: Line too long (82 > 79 characters)
lint.ignore = ["E501"]
lint.select = [
    "E",
    "F",
    "W",
]