pyspamsum/pyproject.toml
2025-02-19 12:37:37 +08:00

89 lines
2 KiB
TOML

[build-system]
requires = [
"setuptools==75.8.0",
"setuptools_scm==8.1.0",
]
build-backend = "setuptools.build_meta"
[project]
dynamic = ["version"]
name = "pyspamsum"
description = "A Python wrapper for Andrew Tridgell's spamsum algorithm"
readme = "README.rst"
requires-python = ">= 3.9"
authors = [
{name="Russell Keith-Magee", email="russell@keith-magee.com"}
]
maintainers = [
{name="Russell Keith-Magee", email="russell@keith-magee.com"}
]
keywords = [
"spamsum",
]
license.text = "New BSD"
classifiers=[
"Development Status :: 5 - Production/Stable",
"License :: OSI Approved :: BSD License",
"Operating System :: OS Independent",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Topic :: Text Processing",
"Topic :: Utilities",
]
[project.optional-dependencies]
# Extras used by developers *of* briefcase are pinned to specific versions to
# ensure environment consistency.
dev = [
"pre-commit == 4.1.0",
"pytest == 8.3.4",
"ruff == 0.9.6",
"setuptools_scm == 8.1.0",
"tox == 4.24.1",
]
[project.urls]
Homepage = "https://github.com/freakboy3742/pyspamsum/"
Tracker = "https://github.com/freakboy3742/pyspamsum/issues"
Source = "https://github.com/freakboy3742/pyspamsum/"
[tool.cibuildwheel]
test-command = "pytest"
test-sources = ["tests"]
[tool.pytest.ini_options]
testpaths = ["tests"]
filterwarnings = [
"error",
]
[tool.ruff.lint]
select = [
# pycodestyle
"E",
# Pyflakes
"F",
# pyupgrade
"UP",
# flake8-bugbear
"B",
# flake8-simplify
"SIM",
# isort
"I",
]
[tool.ruff.lint.isort]
known-first-party = ["spamsum"]
[tool.setuptools]
ext-modules = [
{name="spamsum", sources=["src/pyspamsum.c", "src/spamsum.c", "src/edit_dist.c"]},
]
[tool.setuptools_scm]
# To enable SCM versioning, we need an empty tool configuration for setuptools_scm