/ pyproject.toml
pyproject.toml
  1  [build-system]
  2  requires = ["pdm-backend"]
  3  build-backend = "pdm.backend"
  4  
  5  [project]
  6  name = "pawamoy-testing"
  7  description = "Testing this great template"
  8  authors = [{name = "Timothee Mazzucotelli", email = "dev@pawamoy.fr"}]
  9  license = "ISC"
 10  license-files = ["LICENSE"]
 11  readme = "README.md"
 12  requires-python = ">=3.9"
 13  keywords = []
 14  dynamic = ["version"]
 15  classifiers = [
 16      "Development Status :: 4 - Beta",
 17      "Intended Audience :: Developers",
 18      "Programming Language :: Python",
 19      "Programming Language :: Python :: 3",
 20      "Programming Language :: Python :: 3 :: Only",
 21      "Programming Language :: Python :: 3.9",
 22      "Programming Language :: Python :: 3.10",
 23      "Programming Language :: Python :: 3.11",
 24      "Programming Language :: Python :: 3.12",
 25      "Programming Language :: Python :: 3.13",
 26      "Programming Language :: Python :: 3.14",
 27      "Topic :: Documentation",
 28      "Topic :: Software Development",
 29      "Topic :: Utilities",
 30      "Typing :: Typed",
 31  ]
 32  dependencies = []
 33  
 34  [project.urls]
 35  Homepage = "https://pawamoy.github.io/pawamoy-testing"
 36  Documentation = "https://pawamoy.github.io/pawamoy-testing"
 37  Changelog = "https://pawamoy.github.io/pawamoy-testing/changelog"
 38  Repository = "https://github.com/pawamoy/pawamoy-testing"
 39  Issues = "https://github.com/pawamoy/pawamoy-testing/issues"
 40  Discussions = "https://github.com/pawamoy/pawamoy-testing/discussions"
 41  Gitter = "https://gitter.im/pawamoy-testing/community"
 42  Funding = "https://github.com/sponsors/pawamoy"
 43  
 44  [project.scripts]
 45  pawamoy-testing = "pawamoy_testing.cli:main"
 46  
 47  [tool.pdm.version]
 48  source = "call"
 49  getter = "scripts.get_version:get_version"
 50  
 51  [tool.pdm.build]
 52  # Include as much as possible in the source distribution, to help redistributors.
 53  excludes = ["**/.pytest_cache", "**/.mypy_cache"]
 54  source-includes = [
 55      "config",
 56      "docs",
 57      "scripts",
 58      "share",
 59      "tests",
 60      "duties.py",
 61      "mkdocs.yml",
 62      "*.md",
 63      "LICENSE",
 64  ]
 65  
 66  [tool.pdm.build.wheel-data]
 67  # Manual pages can be included in the wheel.
 68  # Depending on the installation tool, they will be accessible to users.
 69  # pipx supports it, uv does not yet, see https://github.com/astral-sh/uv/issues/4731.
 70  data = [
 71      {path = "share/**/*", relative-to = "."},
 72  ]
 73  
 74  [dependency-groups]
 75  maintain = [
 76      "build>=1.2",
 77      "git-changelog>=2.5",
 78      "twine>=5.1",
 79      "yore>=0.3.3",
 80  ]
 81  ci = [
 82      "duty>=1.6",
 83      "ruff>=0.4",
 84      "pytest>=8.2",
 85      "pytest-cov>=5.0",
 86      "pytest-randomly>=3.15",
 87      "pytest-xdist>=3.6",
 88      "mypy>=1.10",
 89      "types-markdown>=3.6",
 90      "types-pyyaml>=6.0",
 91  ]
 92   docs = [
 93      "markdown-callouts>=0.4",
 94      "markdown-exec>=1.8",
 95      "mkdocs>=1.6",
 96      "mkdocs-coverage>=1.0",
 97      "mkdocs-git-revision-date-localized-plugin>=1.2",
 98      "mkdocs-llmstxt>=0.2",
 99      "mkdocs-material>=9.5",
100      "mkdocs-minify-plugin>=0.8",
101      "mkdocs-section-index>=0.3",
102      "mkdocstrings[python]>=0.29",
103      # YORE: EOL 3.10: Remove line.
104      "tomli>=2.0; python_version < '3.11'",
105  ]
106  
107  [tool.uv]
108  default-groups = ["maintain", "ci", "docs"]