chore: update pyproject config

This commit is contained in:
sebthom
2025-02-10 21:16:38 +01:00
parent 367ef07798
commit 5ade82b54d
2 changed files with 40 additions and 37 deletions

View File

@@ -44,11 +44,29 @@ dependencies = [
"wcmatch",
]
[dependency-groups] # https://peps.python.org/pep-0735/
dev = [
# testing:
"pytest>=8.3.4",
"pytest-asyncio>=0.25.3",
"pytest-rerunfailures",
"pytest-cov>=6.0.0",
# linting:
"autopep8",
"pylint",
"mypy",
"pyright",
# security:
"bandit",
# packaging:
"pyinstaller",
]
[project.urls]
Homepage = "https://github.com/Second-Hand-Friends/kleinanzeigen-bot"
Repository = "https://github.com/Second-Hand-Friends/kleinanzeigen-bot.git"
Homepage = "https://github.com/Second-Hand-Friends/kleinanzeigen-bot"
Repository = "https://github.com/Second-Hand-Friends/kleinanzeigen-bot.git"
Documentation = "https://github.com/Second-Hand-Friends/kleinanzeigen-bot/README.md"
Issues = "https://github.com/Second-Hand-Friends/kleinanzeigen-bot/issues"
Issues = "https://github.com/Second-Hand-Friends/kleinanzeigen-bot/issues"
#####################
@@ -61,7 +79,7 @@ write_to = "kleinanzeigen_bot/_version.py"
write_template = "__version__ = '{}'\n"
[tool.pdm.scripts] # https://pdm-project.org/latest/usage/scripts/
app = "python -m kleinanzeigen_bot"
app = "python -m kleinanzeigen_bot"
compile.cmd = "python -O -m PyInstaller pyinstaller.spec --clean"
compile.env = {PYTHONHASHSEED = "1", SOURCE_DATE_EPOCH = "0"} # https://pyinstaller.org/en/stable/advanced-topics.html#creating-a-reproducible-build
debug = "python -m pdb -m kleinanzeigen_bot"
@@ -216,7 +234,7 @@ max-branches = 40 # max. number of branch for function / method body (R0912)
max-locals = 30 # max. number of local vars for function / method body (R0914)
max-returns = 15 # max. number of return / yield for function / method body (R0911)
max-statements = 150 # max. number of statements in function / method body (R0915)
max-public-methods = 30 # max. number of public methods for a class (R0904)
max-public-methods = 30 # max. number of public methods for a class (R0904)
max-positional-arguments = 6 # max. number of positional args for function / method (R0917)
@@ -226,7 +244,18 @@ max-positional-arguments = 6 # max. number of positional args for function / me
#####################
[tool.pytest.ini_options]
# https://docs.pytest.org/en/stable/reference.html#confval-addopts
addopts = "--strict-markers -p no:cacheprovider --doctest-modules --cov=kleinanzeigen_bot --cov-report=term-missing --ignore=kleinanzeigen_bot/__main__.py"
addopts = """
--strict-markers
-p no:cacheprovider
--doctest-modules
--ignore=_LOCAL
--ignore=docker
--ignore=data
--ignore=dist
--ignore=src/kleinanzeigen_bot/__main__.py
--cov=kleinanzeigen_bot
--cov-report=term-missing
"""
markers = [
"itest: marks a test as an integration test (i.e. a test with external dependencies)",
"asyncio: mark test as async"
@@ -234,22 +263,6 @@ markers = [
asyncio_mode = "auto"
asyncio_default_fixture_loop_scope = "function"
filterwarnings = [
"ignore:Exception ignored in:pytest.PytestUnraisableExceptionWarning",
"ignore::DeprecationWarning"
]
[dependency-groups]
dev = [
"autopep8",
"bandit",
"toml",
"tomli",
"pytest>=8.3.4",
"pytest-asyncio>=0.25.3",
"pytest-rerunfailures",
"pyinstaller",
"pylint",
"mypy",
"pyright",
"pytest-cov>=6.0.0",
"ignore:Exception ignored in:pytest.PytestUnraisableExceptionWarning",
"ignore::DeprecationWarning"
]