[build-system] requires = ["setuptools>=42", "wheel", "setuptools_scm>=8"] build-backend = "setuptools.build_meta" [project] name = "django-constance" dynamic = ["version"] description = "Django live settings with pluggable backends, including Redis." readme = "README.rst" license = { text = "BSD" } requires-python = ">=3.8" authors = [ { name = "Jannis Leidel", email = "jannis@leidel.info" }, ] keywords = ["django", "libraries", "redis", "settings"] classifiers = [ "Development Status :: 5 - Production/Stable", "Environment :: Web Environment", "Framework :: Django", "Framework :: Django :: 4.2", "Framework :: Django :: 5.0", "Framework :: Django :: 5.1", "Framework :: Django :: 5.2", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Programming Language :: Python :: Implementation :: CPython", "Topic :: Utilities", ] [project.optional-dependencies] redis = [ "redis", ] [project.entry-points.pytest11] pytest-django-constance = "constance.test.pytest" [project.urls] homepage = "https://github.com/jazzband/django-constance/" documentation = "https://django-constance.readthedocs.io/en/latest/" repository = "https://github.com/jazzband/django-constance/" changelog = "https://github.com/jazzband/django-constance/releases/" [tool.setuptools] license-files = [] # see https://github.com/pypa/twine/issues/1216#issuecomment-2609745412 [tool.setuptools.packages.find] include = ["constance*"] [tool.setuptools_scm] version_file = "constance/_version.py" [tool.ruff] line-length = 120 indent-width = 4 [tool.ruff.format] indent-style = "space" skip-magic-trailing-comma = false line-ending = "auto" [tool.ruff.lint] select = [ "B", "D", "E", "ERA", "EXE", "F", "FBT", "FURB", "G", "FA", "I", "ICN", "INP", "LOG", "PGH", "RET", "RUF", "S", "SIM", "TID", "UP", "W", ] ignore = ["D1", "D203", "D205", "D415", "D212", "RUF012", "D400", "D401"] [tool.ruff.lint.per-file-ignores] "docs/*" = ["INP"] "example/*" = ["S"] "tests/*" = ["S"] [tool.ruff.lint.isort] force-single-line = true [tool.ruff.lint.flake8-boolean-trap] extend-allowed-calls = ["unittest.mock.patch", "django.db.models.Value"]