surplus/pyproject.toml

98 lines
2.1 KiB
TOML

[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[project]
name = "surplus"
dynamic = ["version"]
description = 'convert Plus Codes, coordinates or location strings to shareable text'
readme = "README.md"
requires-python = ">=3.11"
license = "Unlicense"
keywords = ["pluscodes", "openlocationcode"]
authors = [
{ name = "Mark Joshwel", email = "mark@joshwel.co" },
]
classifiers = [
"Development Status :: 6 - Mature",
"Programming Language :: Python",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: Implementation :: CPython",
"Programming Language :: Python :: Implementation :: PyPy",
]
dependencies = [
"pluscodes~=2022.1.3",
"geopy~=2.4.1",
]
[project.scripts]
surplus = "surplus:cli"
"s+" = "surplus:cli"
[tool.hatch.build.targets.sdist]
exclude = [
"/.github",
"/.devbox",
"/src/surplus-on-wheels",
"/src/spow*",
]
[tool.hatch.build.targets.wheel]
packages = ["src.surplus"]
[project.urls]
Documentation = "https://surplus.joshwel.co"
Issues = "https://surplus.joshwel.co/issues"
Source = "https://github.com/markjoshwel/surplus"
Changelog = "https://surplus.joshwel.co/changelog"
[tool.ruff]
line-length = 100
target-version = "py311"
[tool.isort]
line_length = 100
profile = "black"
[tool.hatch.version]
path = "src/surplus/surplus.py"
[[tool.hatch.envs.all.matrix]]
python = ["3.11", "3.12"]
[tool.hatch.envs.default]
description = "default development environment"
dependencies = ["mypy", "ruff", "isort"]
[tool.hatch.envs.default.scripts]
check = [
"mypy src",
"hatch fmt --check",
"isort --check src"
]
format = [
"hatch fmt -f",
"isort src"
]
[tool.hatch.envs.hatch-static-analysis]
dependencies = ["ruff>=0.3.2"]
[tool.hatch.envs.docs]
detached = true
description = "env for generator documentation"
dependencies = [
"mkdocs",
"mkdocs-material",
"mkdocs-git-revision-date-localized-plugin",
"mkdocs-exporter",
"playwright",
]
[tool.hatch.envs.docs.scripts]
build = [
"python src/tools/docs-prebuild.py",
"mkdocs build --clean --strict",
]
serve = "mkdocs serve --dev-addr localhost:8000"