synapse-invite-checker/pyproject.toml
Nils Büchner 3a1b0379b0 initial
2024-09-14 19:12:42 +02:00

79 lines
2.1 KiB
TOML

[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[project]
name = "synapse-invite-checker"
description = 'Synapse module to handle TIM contact management and invite permissions'
readme = "README.md"
requires-python = ">=3.11"
license = "AGPL-3.0-only"
keywords = []
authors = [
{ name = "Nicolas Werner", email = "n.werner@famedly.com" },
]
classifiers = [
"Development Status :: 4 - Beta",
"Programming Language :: Python",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: Implementation :: CPython",
"Programming Language :: Python :: Implementation :: PyPy",
]
dependencies = [
"twisted",
"cachetools",
"asyncache",
]
version = "0.2.0"
[project.urls]
Documentation = "https://github.com/famedly/synapse-invite-checker#synapse-invite-checker"
Issues = "https://github.com/famedly/synapse-invite-checker/-/issues"
Source = "https://github.com/famedly/synapse-invite-checker/"
[tool.hatch.envs.default]
dependencies = [
"black",
"pytest",
"pytest-cov",
"mock",
"matrix-synapse" # we don't depend on synapse directly to prevent pip from pulling the wrong synapse, when we just want to install the module
]
[tool.hatch.envs.default.scripts]
cov = "pytest --cov-report=term-missing --cov-config=pyproject.toml --cov=synapse_invite_checker --cov=tests"
format = "black ."
# For CI use
head-cov = "pytest --cov-report=lcov:../head.lcov --cov-config=pyproject.toml --cov=synapse_invite_checker --cov=tests"
base-cov = "pytest --cov-report=lcov:../base.lcov --cov-config=pyproject.toml --cov=synapse_invite_checker --cov=tests"
[tool.hatch.envs.ci.scripts]
format = "black --check ."
[tool.coverage.run]
branch = true
parallel = true
omit = ["tests/*"]
[tool.ruff]
target-version = "py311"
[tool.ruff.lint]
ignore = [
"FBT001",
"FBT002",
"TRY002",
"TRY003",
"PLW0603",
"N802"
]
[tool.ruff.per-file-ignores]
"tests/*" = ["RUF012", "S101", "PLR2004", "N803", "SLF001", "S105"]
[tool.coverage.report]
exclude_lines = [
"no cov",
"if __name__ == .__main__.:",
"if TYPE_CHECKING:",
]