liab-deployments/pyproject.toml

116 lines
2.8 KiB
TOML

[build-system]
requires = [
"hatchling",
"hatch-vcs",
]
build-backend = "hatchling.build"
[project]
name = "lab-in-a-box-deployments"
dynamic = ["version"]
description = 'pyinfra-based tooling for service deployments'
readme = "README.md"
requires-python = ">=3.10"
license = "MIT"
keywords = [
"pyinfra",
]
authors = [
{ name = "Michael Hanke", email = "mih@ngln.eu" },
]
maintainers = [
{ name = "Michael Hanke", email = "mih@ngln.eu" },
]
classifiers = [
"License :: OSI Approved :: MIT License",
"Natural Language :: English",
"Development Status :: 4 - Beta",
"Programming Language :: Python",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Programming Language :: Python :: Implementation :: CPython",
"Programming Language :: Python :: Implementation :: PyPy",
]
dependencies = [
"pyinfra",
]
[project.urls]
Documentation = "https://hub.psychoinformatics.de/lab-in-a-box/liab-deployments#readme"
Issues = "https://hub.psychoinformatics.de/lab-in-a-box/liab-deployments/issues"
Source = "https://hub.psychoinformatics.de/lab-in-a-box/liab-deployments"
[tool.hatch.version]
source = "vcs"
[tool.hatch.build.hooks.vcs]
version-file = "liab_deployments/_version.py"
[tool.hatch.build.targets.wheel]
packages = ["liab_deployments"]
[tool.hatch.envs.types]
extra-dependencies = [
"mypy>=1.0.0",
]
[tool.hatch.envs.types.scripts]
check = "mypy --install-types --non-interactive {args:liab_deployments tests}"
[tool.coverage.run]
source_pkgs = ["liab_deployments", "tests"]
branch = true
parallel = true
omit = [
"liab_deployments/__about__.py",
]
[tool.coverage.paths]
liab_deployments = ["liab_deployments", "*/liab_deployments"]
tests = ["tests", "*/tests"]
[tool.coverage.report]
exclude_lines = [
"no cov",
"if __name__ == .__main__.:",
"if TYPE_CHECKING:",
]
[tool.hatch.envs.cz]
description = "commit compliance, changelog, and release generation"
detached = true
extra-dependencies = [
"commitizen",
]
[tool.hatch.envs.cz.scripts]
check-commits = [
# check all commit messages since we switched to conventional commits
# only (no merge commits also)
"cz check --rev-range 60175726184027f40b75338163f54fb87f14d7d2..HEAD",
]
show-changelog = [
# show the would-be changelog on stdout
"cz changelog --dry-run",
]
bump-version = [
# bump version (also tags) and update changelog
"cz bump --changelog",
]
[tool.hatch.envs.codespell]
description = "spell checking"
detached = true
extra-dependencies = [
"codespell",
]
[tool.hatch.envs.codespell.scripts]
check = "codespell"
fix = "codespell --write-changes"
[tool.codespell]
skip = ".git,build,.*cache,dist,./docs/_build/*"
#exclude-file = ".codespell-exclude"