[ Web Proxy ]
URL:
Viewing: https://raw.githubusercontent.com/python-project-templates/python-template-cpp/main/pyproject.toml [Back]  [Original]

[build-system]
requires = [
    "hatchling",
    "hatch-cpp>=0.5.0",
    "pybind11",
]
build-backend = "hatchling.build"

[project]
name = "python-template-cpp"
authors = [
    {name = "Python Project Template Authors", email = "3105306+timkpaine@users.noreply.github.com"},
]
description = "A C++-Python project template"
readme = "README.md"
license = { text = "Apache-2.0" }
version = "0.1.0"
requires-python = ">=3.11"
keywords = []

classifiers = [
    "Development Status :: 3 - Alpha",
    "Programming Language :: Python",
    "Programming Language :: Python :: Implementation :: CPython",
    "Programming Language :: Python :: Implementation :: PyPy",
    "Programming Language :: Python :: 3",
    "Programming Language :: Python :: 3.11",
    "Programming Language :: Python :: 3.12",
    "Programming Language :: Python :: 3.13",
    "Programming Language :: Python :: 3.14",
]

dependencies = []

[project.optional-dependencies]
develop = [
    "build",
    "bump-my-version",
    "check-dist",
    "cibuildwheel",
    "codespell",
    "hatch-cpp>=0.5.0",
    "hatchling",
    "mdformat",
    "mdformat-tables>=1",
    "pybind11",
    "pytest",
    "pytest-cov",
    "ruff",
    "twine",
    "ty",
    "uv",
    "wheel",
]

[project.scripts]

[project.urls]
Repository = "https://github.com/python-project-templates/python-template-cpp"
Homepage = "https://github.com/python-project-templates/python-template-cpp"

[tool.bumpversion]
current_version = "0.1.0"
commit = true
tag = true
commit_args = "-s"

[[tool.bumpversion.files]]
filename = "python_template_cpp/__init__.py"
search = '__version__ = "{current_version}"'
replace = '__version__ = "{new_version}"'

[[tool.bumpversion.files]]
filename = "pyproject.toml"
search = 'version = "{current_version}"'
replace = 'version = "{new_version}"'

[tool.cibuildwheel]
build = "cp311-* cp312-* cp313-*"
test-command = "pytest -vvv {project}/python_template_cpp/tests"
test-extras = "develop"

[tool.cibuildwheel.linux]
manylinux-aarch64-image = "manylinux_2_28"
manylinux-x86_64-image = "manylinux_2_28"
skip = "*i686* *musllinux*"

[tool.cibuildwheel.macos]
environment = {MACOSX_DEPLOYMENT_TARGET="11.0"}
archs = "arm64"

[tool.cibuildwheel.windows]
archs = "AMD64"
skip = "*win32 *arm64"

[tool.cibuildwheel.pyodide]
test-command = "python -m pytest -vvv --pyargs python_template_cpp.tests"
test-extras = []
test-requires = ["pytest"]

[tool.coverage.run]
branch = true
omit = [
    "python_template_cpp/tests/integration/",
]

[tool.coverage.report]
exclude_also = [
    "raise NotImplementedError",
    "if __name__ == .__main__.:",
    "@(abc\\.)?abstractmethod",
]
ignore_errors = true
fail_under = 50

[tool.hatch.build]
artifacts = [
    "python_template_cpp/*.dll",
    "python_template_cpp/*.dylib",
    "python_template_cpp/*.so",
]

[tool.hatch.build.sources]
src = "/"

[tool.hatch.build.hooks.hatch-cpp]
verbose = true
libraries = [
    {name = "python_template_cpp/extension", sources = ["cpp/python-template-cpp/extension.cpp"], include-dirs = ["cpp"], binding="pybind11"}
]

[tool.hatch.build.targets.sdist]
packages = [
    "python_template_cpp",
    "cpp",
]

[tool.hatch.build.targets.sdist.force-include]
"vcpkg.json" = "vcpkg.json"
"vcpkg-overlays" = "vcpkg-overlays"


[tool.hatch.build.targets.wheel]
packages = [
    "python_template_cpp",
]

[tool.pytest.ini_options]
addopts = [
    "-vvv",
    "--junitxml=junit.xml",
]
testpaths = "python_template_cpp/tests"

[tool.ruff]
line-length = 150

[tool.ruff.lint]
extend-select = [
    "I",
]

[tool.ruff.lint.isort]
combine-as-imports = true
default-section = "third-party"
known-first-party = [
    "python_template_cpp",
]
section-order = [
    "future",
    "standard-library",
    "third-party",
    "first-party",
    "local-folder",
]

[tool.ruff.lint.per-file-ignores]
"__init__.py" = [
    "F401",
    "F403",
]

[tool.yardang]
title = "python template cpp"
root = "README.md"
pages = []
use-autoapi = true


Web Proxy Viewer  |  New URL  |  Original Page