This repository has been archived on 2023-05-31. You can view files and clone it, but cannot push or open issues or pull requests.
python-blog/pyproject.toml
2023-03-14 11:05:58 +01:00

77 lines
2 KiB
TOML

[tool.pytest.ini_options]
addopts = "--color=yes"
minversion = "6.0"
DJANGO_SETTINGS_MODULE = "blog.settings"
testpaths = [
"src",
]
env = [
"GOATCOUNTER_DOMAIN=gc.gabnotes.org"
]
[tool.mypy]
mypy_path = "$MYPY_CONFIG_FILE_DIR/stubs"
disallow_untyped_defs = true
warn_redundant_casts = true
strict_equality = true
disallow_untyped_calls = true
warn_unreachable = true
enable_error_code = ["redundant-expr"]
[[tool.mypy.overrides]]
module = [
"django.*",
"environ",
"django_otp.plugins.otp_static.models",
"two_factor.models",
"django_otp.plugins.otp_totp.models",
"model_bakery",
"invoke",
]
ignore_missing_imports = true
###############################################################################
# ruff
###############################################################################
[tool.ruff]
src = ["src"]
target-version = "py311"
select = ["ALL"]
unfixable = ["T20", "RUF001", "RUF002", "RUF003"]
ignore = [
"ANN", # flake8-annotations
"BLE", # flake8-blind-except
"TCH", # flake8-type-checking / TODO: revisit later ?
"E501", # long lines
"D1", # missing docstring
"TRY003", # Avoid specifying long messages outside the exception class
"PLC1901", # {} can be simplified to {} as an empty string is falsey
]
[tool.ruff.per-file-ignores]
"**/tests/*" = [
"S101", # Use of assert detected.
"S106", # Possible hardcoded password.
"B011", # Do not call assert False since python -O removes these calls.
"ARG001", # Unused function argument (mostly fixtures)
"PLR2004", # Magic value used in comparison, consider replacing {value} with a constant variable
]
# File {name} is part of an implicit namespace package. Add an `__init__.py`.
"tasks.py" = ["INP001"]
"src/conftest.py" = ["INP001"]
"src/manage.py" = ["INP001"]
"**/migrations/*" = [
"ARG001", # Unused function argument
"N806", # Variable in function should be lowercase
]
"**/*.pyi" = ["ALL"]
[tool.ruff.pydocstyle]
convention = "pep257"
[tool.ruff.mccabe]
max-complexity = 10