[tool.poetry] name = "feedvault" version = "0.1.0" description = "A small archive of RSS feeds" authors = ["Joakim Hellsén "] readme = "README.md" [tool.poetry.dependencies] python = "^3.12" celery = "^5.3.6" django = "^5.0.1" django-allauth = "^0.60.1" django-celery-results = "^2.5.1" django-debug-toolbar = "^4.2.0" django-ninja = "^1.1.0" django-pghistory = "^3.1.0" feedparser = "^6.0.11" flower = "^2.0.1" gunicorn = "^21.2.0" psycopg = { extras = ["binary"], version = "^3.1.17" } python-dotenv = "^1.0.1" redis = { extras = ["hiredis"], version = "^5.0.1" } whitenoise = { extras = ["brotli"], version = "^6.6.0" } listparser = {extras = ["http", "lxml"], version = "^0.19"} [tool.poetry.group.dev.dependencies] pre-commit = "^3.6.0" djlint = "^1.34.1" ruff = "^0.1.14" [build-system] build-backend = "poetry.core.masonry.api" requires = [ "poetry-core", ] [tool.ruff] exclude = ["migrations"] fix = true unsafe-fixes = true preview = true select = ["ALL"] ignore = [ "CPY001", # Missing copyright notice at top of file "ERA001", # Found commented-out code "FIX002", # Line contains TODO ] line-length = 120 [tool.ruff.pydocstyle] convention = "google" [tool.ruff.per-file-ignores] "**/tests.py" = [ "S101", # Allow asserts "ARG", # Allow unused arguments "FBT", # Don't care about booleans as positional arguments in tests, e.g. via @pytest.mark.parametrize() "PLR2004", # Allow "assert response.status_code == 200" when testing views "D102", # Allow missing docstrings in tests "PLR6301", # Checks for the presence of unused self parameter in methods definitions. ]