Gab's Notes backend
https://gabnotes.org
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
111 lines
2.7 KiB
111 lines
2.7 KiB
[tool.poetry] |
|
name = "blog" |
|
version = "0.1.0" |
|
description = "" |
|
authors = ["Gabriel Augendre <gabriel@augendre.info>"] |
|
license = "GPLv3" |
|
|
|
[tool.poetry.dependencies] |
|
python = "^3.10" |
|
django = "^4.0" |
|
markdown = "^3.2" |
|
gunicorn = "^20.0" |
|
Pygments = "^2.6" |
|
django-anymail = {version = "^8.4", extras = ["mailgun"]} |
|
pillow = "^8.4" |
|
django-cleanup = "^5.0" |
|
requests = "^2.24" |
|
readtime = "^1.1.1" |
|
django-debug-toolbar = "^3.2" |
|
whitenoise = {extras = ["brotli"], version = "^5.2.0"} |
|
rcssmin = "^1.0.6" |
|
django-csp = "^3.7" |
|
django-two-factor-auth = {extras = ["phonenumberslite"], git = "https://github.com/Bouke/django-two-factor-auth.git", rev = "ffe4422e"} |
|
beautifulsoup4 = "^4.10.0" |
|
django-environ = "^0.8.1" |
|
|
|
[tool.poetry.dev-dependencies] |
|
pre-commit = "^2.7" |
|
pytest = "^6.0" |
|
pytest-django = "^4.5" |
|
model-bakery = "^1.1" |
|
pytest-cov = "^3.0" |
|
pytest-recording = "^0.12.0" |
|
pytest-rerunfailures = "^10.2" |
|
pytest-env = "^0.6.2" |
|
poetry-deps-scanner = "^1.0.1" |
|
invoke = "^1.6.0" |
|
mypy = "^0.930" |
|
types-Markdown = "^3.3.10" |
|
types-requests = "^2.26.3" |
|
types-setuptools = "^57.4.5" |
|
types-toml = "^0.10.1" |
|
types-beautifulsoup4 = "^4.10.7" |
|
types-Pillow = "^8.3.11" |
|
|
|
[tool.black] |
|
target-version = ['py310'] |
|
|
|
[tool.isort] |
|
profile = "black" |
|
|
|
[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:$MYPY_CONFIG_FILE_DIR/src" |
|
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 |
|
|
|
[tool.flakehell] |
|
max_complexity = 10 |
|
format = "grouped" |
|
|
|
[tool.flakehell.plugins] |
|
"flake8-*" = [ |
|
"+*", |
|
# long lines |
|
"-E501", |
|
# conflict with black on PEP8 interpretation |
|
"-E203", |
|
# deprecated rule: https://www.flake8rules.com/rules/W503.html |
|
"-W503", |
|
] |
|
flake8-builtins = ["-A003"] # class attribute is shadowing a python builtin |
|
flake8-quotes = ["-Q000"] # found double quotes, conflict with black |
|
flake8-commas = ["-C812"] # missing trailing comma, conflict with black |
|
flake8-docstrings = ["-D1??"] # missing docstring |
|
flake8-rst-docstrings = ["-*"] |
|
|
|
[tool.flakehell.exceptions."**/migrations/*"] |
|
|
|
[tool.flakehell.exceptions."**/tests/*"] |
|
flake8-bandit = ["-S101"] # Use of assert detected. |
|
|
|
[build-system] |
|
requires = ["poetry-core>=1.0.0"] |
|
build-backend = "poetry.core.masonry.api"
|
|
|