python/pyproject.toml
Stefan Schmidt-Egermann fa81aba944
feat: initial python content (v0.1.0)
- Installierbares Package mit pyproject.toml
- Client-Klasse mit Sync, Async (mit Polling), Webhook, Verify, Download
- Typisierte Exception-Hierarchie
- Webhook-Signatur-Verifikation (HMAC-SHA-256)
- Pytest-Suite + Quickstart und Webhook-Receiver-Beispiel
2026-04-25 12:26:03 +02:00

69 lines
2.1 KiB
TOML

[build-system]
requires = ["setuptools>=68", "wheel"]
build-backend = "setuptools.build_meta"
[project]
name = "hightrusted-capture"
version = "0.1.0"
description = "Python SDK für die hightrusted CAPTURE API — forensische Web-Captures mit qualifiziertem Zeitstempel"
readme = "README.md"
requires-python = ">=3.9"
license = { text = "MIT" }
authors = [
{ name = "hightrusted GmbH", email = "developers@hightrusted.net" }
]
keywords = ["capture", "screenshot", "rfc3161", "timestamp", "eidas", "forensic", "evidence"]
classifiers = [
"Development Status :: 4 - Beta",
"Intended Audience :: Developers",
"Intended Audience :: Legal Industry",
"License :: OSI Approved :: MIT 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 :: Internet :: WWW/HTTP",
"Topic :: Office/Business",
"Topic :: Security :: Cryptography",
]
dependencies = [
"requests>=2.31",
]
[project.optional-dependencies]
dev = [
"pytest>=8.0",
"pytest-cov>=4.1",
"responses>=0.25",
"ruff>=0.5",
"mypy>=1.10",
"types-requests",
]
[project.urls]
Homepage = "https://capture.hightrusted.net"
Documentation = "https://capture.hightrusted.net/api/docs"
Repository = "https://git.hightrusted.net/hightrusted-capture/python"
Changelog = "https://git.hightrusted.net/hightrusted-capture/python/src/branch/main/CHANGELOG.md"
"Bug Tracker" = "https://git.hightrusted.net/hightrusted-capture/python/issues"
[tool.setuptools.packages.find]
include = ["hightrusted_capture*"]
[tool.ruff]
line-length = 100
target-version = "py39"
[tool.ruff.lint]
select = ["E", "F", "W", "I", "B", "UP", "S", "C4"]
ignore = ["S101"] # asserts in tests sind ok
[tool.ruff.lint.per-file-ignores]
"tests/*" = ["S"]
[tool.pytest.ini_options]
testpaths = ["tests"]
addopts = "-ra --strict-markers --cov=hightrusted_capture --cov-report=term-missing"