[tool.pdm]
package-dir = "src"

[tool.pdm.version]
source = "file"
path = "src/mailman/version.py"

[tool.pdm.build]
source-includes = [
    "*.rst",
    "*.md",
    "*.ini",
    "*.txt",
    "*.cfg",
    "COPYING",
    "*.py",
    "*.sh",
    ".coveragerc",
    "_ext/*",
]

[project]
name = "mailman"
dynamic = []
description = "Mailman -- the GNU mailing list manager"
keywords = [
    "email",
]
readme = "README.md"
authors = [
    { name = "The Mailman Developers", email = "mailman-developers@python.org" },
]
classifiers = [
    "Development Status :: 5 - Production/Stable",
    "Intended Audience :: System Administrators",
    "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)",
    "Operating System :: POSIX",
    "Programming Language :: Python :: 3.13",
    "Programming Language :: Python :: 3.12",
    "Programming Language :: Python :: 3.11",
    "Programming Language :: Python :: 3.10",
    "Programming Language :: Python :: 3.9",
    "Topic :: Communications :: Email :: Mailing List Servers",
    "Topic :: Communications :: Usenet News",
    "Topic :: Internet :: WWW/HTTP :: WSGI :: Application",
]
dependencies = [
    "aiosmtpd>=1.4.3",
    "alembic>=1.6.2,!=1.7.0",
    "atpublic",
    "authheaders>=0.16",
    "authres>=1.0.1",
    "click>=8.0.0,<8.2.0",
    "dnspython>=1.14.0",
    "falcon>=3.1.3",
    "flufl.bounce>=4.0",
    "flufl.i18n>=3.2",
    "flufl.lock>=5.1",
    "gunicorn",
    "lazr.config",
    "standard-nntplib; python_version>=\"3.13\"",
    "passlib",
    "requests",
    "sqlalchemy>=1.4.0",
    "zope.component",
    "zope.configuration",
    "zope.event",
    "zope.interface>=5.0",
]
requires-python = ">=3.9"
version = "3.3.11a20251117"

[project.license]
text = "GPLv3"

[project.optional-dependencies]
setproctitle = [
    "setproctitle",
]

[project.urls]
Homepage = "https://www.list.org"
Documentation = "https://docs.mailman3.org/projects/mailman/en/latest/index.html"
Source = "https://gitlab.com/mailman/mailman.git"
Tracker = "https://gitlab.com/mailman/mailman/-/issues"

[project.scripts]
mailman = "mailman.bin.mailman:main"
master = "mailman.bin.master:main"
runner = "mailman.bin.runner:main"

[build-system]
requires = [
    "pdm-backend",
]
build-backend = "pdm.backend"
