[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"