pyproject.toml
[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",
]