[project] name = 'newsreader' version = '0.5.3' authors = [{ name = 'Sonny', email= 'sonny871@hotmail.com' }] license = {text = 'GPL-3.0'} requires-python = '>=3.11' dependencies = [ 'django~=4.2', 'celery~=5.4', 'psycopg', 'django-axes', 'django-celery-beat~=2.7.0', 'django-rest-framework', 'djangorestframework-camel-case', 'pymemcache', 'python-dotenv~=1.0.1', 'ftfy~=6.2', 'requests', 'feedparser', 'bleach', 'beautifulsoup4', 'lxml', ] [dependency-groups] test-tools = ['ruff', 'factory_boy', 'freezegun'] development = [ 'django-debug-toolbar', 'django-stubs', 'django-extensions', ] ci = ['coverage~=7.6.1'] production = ['gunicorn~=23.0'] [project.optional-dependencies] sentry = ['sentry-sdk~=2.0'] [tool.uv] environments = ["sys_platform == 'linux'"] default-groups = ['test-tools'] [tool.ruff] include = ['pyproject.toml', 'src/**/*.py'] line-length = 88 [tool.ruff.lint] select = ['E4', 'E7', 'E9', 'F', 'I'] [tool.ruff.lint.isort] lines-between-types=1 lines-after-imports=2 default-section = 'third-party' known-first-party = ['transip_client'] section-order = [ 'future', 'standard-library', 'django', 'third-party', 'first-party', 'local-folder', ] [tool.ruff.lint.isort.sections] django = ['django']