WesternFriend/WF-website

View on GitHub
pyproject.toml

Summary

Maintainability
Test Coverage
[project]
name = "Western-Friend-website"
version = "0.1.0"
description = "A website for Western Friend (westernfriend.org), a Quaker publication that provides resources and support for Quaker communities and individuals seeking to live out their faith in the world."
readme = "README.md"
requires-python = ">=3.10"
license = { text = "agpl-3.0-or-later" }
authors = [
    { name = "Brylie Christopher Oxley", email = "brylie@amble.fi" },
    { name = "Mary Klein", email = "editor@westernfriend.org" },
    { name = "Western Friend" },
    { name = "Western Friend Board" },
]
maintainers = [{ name = "Brylie Christopher Oxley", email = "brylie@amble.fi" }]
keywords = [
    # keep-sorted start
    "django",
    "interfaith",
    "quaker",
    "quaker-activism",
    "quaker-archives",
    "quaker-arts",
    "quaker-ecology",
    "quaker-ecumenism",
    "quaker-education",
    "quaker-epistles",
    "quaker-faith",
    "quaker-faith-and-practice",
    "quaker-friends",
    "quaker-history",
    "quaker-letters",
    "quaker-meetings",
    "quaker-organizations",
    "quaker-peace",
    "quaker-philanthropy",
    "quaker-philosophy",
    "quaker-testimonies",
    "quaker-worship",
    "quakerism",
    "wagtail",
    "website",
    "western-friend",
    # keep-sorted end

]
classifiers = [
    # keep-sorted start
    "Development Status :: 4 - Beta",
    "Environment :: Web Environment",
    "Framework :: Django :: 3.2",
    "Framework :: Django",
    "Framework :: Wagtail",
    "License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)",
    "Natural Language :: English",
    "Operating System :: OS Independent",
    "Programming Language :: Python :: 3",
    "Programming Language :: Python :: 3.10",
    "Programming Language :: Python :: 3.11",
    "Programming Language :: Python",
    "Topic :: Religion :: Quaker",
    "Topic :: Religion",
    # keep-sorted end

]
dependencies = [
    # keep-sorted start
    "boto3",
    "crispy-bootstrap5",
    "dj-database-url",
    "django",
    "django-crispy-forms",
    "django-extensions",
    "django-flatpickr",
    "django-honeypot",
    "django-registration",
    "django-storages",
    "django-timezone-field",
    "django_coverage_plugin",
    "gunicorn",
    "psycopg2-binary",
    "python-dotenv",
    "requests",
    "sentry-sdk",
    "tzdata",
    "wagtail",
    "wagtail-color-panel",
    "wagtailmedia",
    # keep-sorted end

]

[project.urls]
Homepage = "https://westernfriend.org"
Repository = "https://github.com/WesternFriend/WF-website"

[project.optional-dependencies]
dev = [
    # keep-sorted start
    "coverage",
    "django-browser-reload",
    "django-stubs[compatible-mypy]",
    "factory_boy",
    "mypy",
    "pip-tools",
    "pre-commit",
    "types-beautifulsoup4",
    "types-factory-boy",
    "types-requests",
    "validate-pyproject",
    "wagtail-factories",
    # keep-sorted end

]

[tool.isort]
profile = "black"

# TODO: add this back in when we figure out how to make it work
[tool.mypy]
plugins = ["mypy_django_plugin.main"]

[[tool.mypy.overrides]]
module = "wagtail.*"
ignore_missing_imports = true

[tool.django-stubs]
django_settings_module = "core.settings"
# Exclude a variety of commonly ignored directories.
exclude = [".git", ".mypy_cache", ".ruff_cache", ".venv", "**/migrations"]
# Assume Python 3.11
target-version = "py311"

[tool.setuptools]
py-modules = []

[tool.coverage.run]
plugins = ['django_coverage_plugin']

[tool.coverage.django_coverage_plugin]
template_extensions = 'html, txt, tex, email'