Skip to main content

pyproject.toml

1[build-system]
2requires = [
3 "setuptools >= 65",
4]
5build-backend = "setuptools.build_meta"
7[project]
8name = "alexwlchan-chives"
9description = "Utility functions for working with my local media archives"
10readme = "README.md"
11authors = [
12 {name = "Alex Chan", email = "alex@alexwlchan.net"},
14maintainers = [
15 {name = "Alex Chan", email="alex@alexwlchan.net"},
17classifiers = [
18 "Development Status :: 4 - Beta",
19 "Programming Language :: Python :: 3.13",
21requires-python = ">=3.13"
22dependencies = []
23dynamic = ["version"]
24license = "MIT"
26[project.optional-dependencies]
27fetch = ["certifi"]
28media = ["Pillow"]
29static_site_tests = ["playwright", "pytest", "rapidfuzz"]
30text = ["smartypants"]
31urls = ["certifi"]
33[project.urls]
34"Homepage" = "https://github.com/alexwlchan/chives"
35"Changelog" = "https://github.com/alexwlchan/chives/blob/main/CHANGELOG.md"
37[tool.setuptools.dynamic]
38version = {attr = "chives.__version__"}
40[tool.setuptools.packages.find]
41where = ["src"]
43[tool.coverage.run]
44branch = true
45source = ["chives", "tests",]
47[tool.coverage.report]
48show_missing = true
49skip_covered = true
50fail_under = 100
52[tool.pytest.ini_options]
53filterwarnings = ["error"]
55[tool.mypy]
56mypy_path = "src"
57strict = true
59[tool.ruff.lint]
60select = ["D", "E", "F"]
61ignore = [
62 "D200", # unnecessary-multiline-docstring
63 "D203", # incorrect-blank-line-before-class
64 "D205", # missing-blank-line-after-summary
65 "D211", # blank-line-before-class
66 "D212", # multi-line-summary-first-line