summaryrefslogtreecommitdiff
path: root/net-mail/mailman
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2021-10-01 20:54:53 +0100
committerV3n3RiX <venerix@redcorelinux.org>2021-10-01 20:54:53 +0100
commit391b5b359a346aff490103da7dddc85047f83830 (patch)
tree29eea460a0bd7e1ff21d43b9d6df9af4d8a175e1 /net-mail/mailman
parentc719fdcee603a5a706a45d10cb598762d56a727d (diff)
gentoo resync : 01.10.2021
Diffstat (limited to 'net-mail/mailman')
-rw-r--r--net-mail/mailman/Manifest6
-rw-r--r--net-mail/mailman/files/mailman-3.3.4-fix-click-8.patch75
-rw-r--r--net-mail/mailman/files/mailman-3.3.4-py3.9-importlib.patch73
-rw-r--r--net-mail/mailman/mailman-3.3.4.ebuild60
-rw-r--r--net-mail/mailman/metadata.xml1
5 files changed, 214 insertions, 1 deletions
diff --git a/net-mail/mailman/Manifest b/net-mail/mailman/Manifest
index ed025b0db8fc..c2643b58fed2 100644
--- a/net-mail/mailman/Manifest
+++ b/net-mail/mailman/Manifest
@@ -1,3 +1,7 @@
+AUX mailman-3.3.4-fix-click-8.patch 3704 BLAKE2B 4055807ee7546d94d6358c3d1c1cd46e8a964d7aca151cf4c11ba4b093809186bb75f3f01cf63b0a6a30a72c5b72b0cf86065038fa660e68ebd01342c2b48da2 SHA512 ab2ddc4ddcb8ab841c7de07749b78ae6856d3c86a80b84de5b0b06024fdf65a22b0f42b6e136282a5719b30d6980bb583187b7750c1df9402faff9d07d1d7ad9
+AUX mailman-3.3.4-py3.9-importlib.patch 2738 BLAKE2B a77f1d5a5a8ceb731484f290aa33734d2754b38594c40b7f7ecdea3321aa8dcd7902f6062b60357b34c99cddee11c77d2e6500022edf51e2c6fb9fba33b0e0c4 SHA512 0952811aa467ed7f30e206cf1132e3af120ac14b513c2edc2e00b05563e811f04d259d1e508c011a7c7b92e2fce12d6f7af4d934a5be6baf13cab86298683a94
DIST mailman-3.3.2.tar.gz 1396750 BLAKE2B f7db82d8cb217d80313ee7a6c28f7b62876a6d176a108b3fafdc744e0a9fcec3d11a0665069a5c27a42d49c22257bfe2ca8f18233d30fc9acb964027fea3bf12 SHA512 af8b300a9fea9e40a9a42f97531cf0fcd36f9b30a88a5b062994ec6480d91a698dbc37f4910045aacf3bedebf7c9ccacdf8d11bb0ee560d11e1eeef266f19b29
+DIST mailman-3.3.4.tar.gz 1578084 BLAKE2B d0c8ba6dd0df481915397b55521c9a524b44bbdb7c4efe789c6fe92c1383950b6107a76db43337b7a310a7d97eb3931a4289566271ac5b6360645ec8d316230a SHA512 52d7e8355744730f608605b05bc9c977c3e4daf22a78267b1ea6cd3922b2826d3f70dd61a591f13633fc7cbcc536b6d56a2076c00752a6590964cbd4e1aec3cc
EBUILD mailman-3.3.2.ebuild 1402 BLAKE2B 89a4684901834c58bd6cae588f917f686fecd0500df16ec42c26a324c59ddace83c55d2ef3f674b16f1da0d47b8c0d3459751ff64abe1ff67872b770fce5aaed SHA512 577e48ff8745a2221add6e4228ef7851c0762bbeea6d3e1d7e2e17d9b77a5da4b57a402b4de5d3692c069b572049928cf62f00dc0377cde393d4c0985dd42fd9
-MISC metadata.xml 342 BLAKE2B f8593b2132bcc582bea99d611092f1d3654de1fa352200fa84def65c55126e540ab03f475ab4a7338f5ce07a6bd1bd4efcd1cdf7d0da6ce373f30c7b535c8bce SHA512 facf7fec950cdedfe764bfa4d7c46c1c236c90caab5c48561ee724d2c7eeb2b1f9f9b94883ffc23eacb7bf80ebc59757876aa8cb8615f141dd87b4bec4059bc0
+EBUILD mailman-3.3.4.ebuild 1764 BLAKE2B 9e32da093e3b42b092cdcc9d226a1ac95f8862bd1ad239700aaf75dff653e2523c5715d245065225ae9295b97a5cdc97a7ad618372f115c1175340f4d9ca7eac SHA512 b3ec8bead3c034bd03cc698074e6b124ef2f37704f6d0269b7e82c21e82554ddf2fa3f40703c8239235e22b79cc7b2301670cb31c9408e245e79347f8e246317
+MISC metadata.xml 366 BLAKE2B c96d08478344ac29e91c7f8104b1669229e7d0b964a8ff6b07fc086118441fa16c9d2ed7e1f78a68a1316248f3b74fe144a526535871c4eb04dc94c587a7e9d7 SHA512 85eb201c452095f5ac8fdc1d6babd3fbad04b8d4452b69a5bc67c0589c90017475fa3edd6450898ec0da1a649077be2709121307a91329d3757e74839941f6ef
diff --git a/net-mail/mailman/files/mailman-3.3.4-fix-click-8.patch b/net-mail/mailman/files/mailman-3.3.4-fix-click-8.patch
new file mode 100644
index 000000000000..c5f5d774fdaa
--- /dev/null
+++ b/net-mail/mailman/files/mailman-3.3.4-fix-click-8.patch
@@ -0,0 +1,75 @@
+From 5d27492403f80c4b4ea1820b3d6f821bd8401ca8 Mon Sep 17 00:00:00 2001
+From: Mark Sapiro <mark@msapiro.net>
+Date: Tue, 11 May 2021 18:14:59 -0700
+Subject: [PATCH] Require click >=8.0.0 and fix the tests it breaks.
+
+--- a/src/mailman/commands/docs/import.rst
++++ b/src/mailman/commands/docs/import.rst
+@@ -58,5 +58,6 @@ import, the mailing list's "real name" will change.
+ Import
+
+ >>> command('mailman import21 import@example.com ' + pickle_file)
++ Importing ...
+ >>> print(mlist.display_name)
+ Test
+--- a/src/mailman/commands/tests/test_cli_addmembers.py
++++ b/src/mailman/commands/tests/test_cli_addmembers.py
+@@ -57,8 +57,8 @@ class TestCLIAddMembers(unittest.TestCase):
+ result.output,
+ 'Usage: addmembers [OPTIONS] FILENAME LISTSPEC\n'
+ 'Try \'addmembers --help\' for help.\n\n'
+- 'Error: Invalid value for \'FILENAME\': Could not open '
+- 'file: bad: No such file or directory\n')
++ 'Error: Invalid value for \'FILENAME\': '
++ '\'bad\': No such file or directory\n')
+
+ def test_already_subscribed_with_display_name(self):
+ subscribe(self._mlist, 'Anne')
+@@ -265,8 +265,8 @@ class TestCLIAddMembers(unittest.TestCase):
+ 'Usage: addmembers [OPTIONS] FILENAME LISTSPEC\n'
+ 'Try \'addmembers --help\' for help.\n\n'
+ 'Error: Invalid value for \'--delivery\' / \'-d\': '
+- 'invalid choice: bogus. (choose from regular, mime, '
+- 'plain, summary, disabled)\n')
++ '\'bogus\' is not one of \'regular\', \'mime\', '
++ '\'plain\', \'summary\', \'disabled\'.\n')
+
+ def test_invite_member(self):
+ with NamedTemporaryFile('w', buffering=1, encoding='utf-8') as infp:
+--- a/src/mailman/commands/tests/test_cli_delmembers.py
++++ b/src/mailman/commands/tests/test_cli_delmembers.py
+@@ -56,8 +56,8 @@ class TestCLIDelMembers(unittest.TestCase):
+ result.output,
+ 'Usage: delmembers [OPTIONS]\n'
+ 'Try \'delmembers --help\' for help.\n\n'
+- 'Error: Invalid value for \'--file\' / \'-f\': Could not open '
+- 'file: bad: No such file or directory\n')
++ 'Error: Invalid value for \'--file\' / \'-f\': '
++ '\'bad\': No such file or directory\n')
+
+ def test_not_subscribed_without_display_name(self):
+ with NamedTemporaryFile('w', buffering=1, encoding='utf-8') as infp:
+--- a/src/mailman/commands/tests/test_cli_syncmembers.py
++++ b/src/mailman/commands/tests/test_cli_syncmembers.py
+@@ -58,8 +58,8 @@ class TestCLISyncMembers(unittest.TestCase):
+ result.output,
+ 'Usage: syncmembers [OPTIONS] FILENAME LISTSPEC\n'
+ 'Try \'syncmembers --help\' for help.\n\n'
+- 'Error: Invalid value for \'FILENAME\': Could not open '
+- 'file: bad: No such file or directory\n')
++ 'Error: Invalid value for \'FILENAME\': '
++ '\'bad\': No such file or directory\n')
+
+ def test_sync_invalid_email(self):
+ with NamedTemporaryFile('w', buffering=1, encoding='utf-8') as infp:
+@@ -374,8 +374,8 @@ class TestCLISyncMembers(unittest.TestCase):
+ 'Usage: syncmembers [OPTIONS] FILENAME LISTSPEC\n'
+ 'Try \'syncmembers --help\' for help.\n\n'
+ 'Error: Invalid value for \'--delivery\' / \'-d\': '
+- 'invalid choice: bogus. (choose from regular, mime, '
+- 'plain, summary, disabled)\n')
++ '\'bogus\' is not one of \'regular\', \'mime\', '
++ '\'plain\', \'summary\', \'disabled\'.\n')
+
+ def test_override_no_welcome(self):
+ self._mlist.send_welcome_message = False
diff --git a/net-mail/mailman/files/mailman-3.3.4-py3.9-importlib.patch b/net-mail/mailman/files/mailman-3.3.4-py3.9-importlib.patch
new file mode 100644
index 000000000000..f8771678b3e9
--- /dev/null
+++ b/net-mail/mailman/files/mailman-3.3.4-py3.9-importlib.patch
@@ -0,0 +1,73 @@
+From 0eced2d273535577645493340c7319ebf27a559c Mon Sep 17 00:00:00 2001
+From: Neal Gompa <ngompa13@gmail.com>
+Date: Fri, 16 Oct 2020 03:47:38 -0400
+Subject: [PATCH] Use importlib.resources for Python 3.9+ and
+ importlib_resources otherwise
+
+This makes it possible to use Mailman 3 in environments where importlib_resources
+is not available.
+
+Signed-off-by: Neal Gompa <ngompa13@gmail.com>
+---
+ setup.py | 2 +-
+ src/mailman/__init__.py | 5 +++++
+ src/mailman/testing/__init__.py | 23 +++++++++++++++++++++++
+ 3 files changed, 29 insertions(+), 1 deletion(-)
+
+diff --git a/setup.py b/setup.py
+index cd3645611..6d871fbfd 100644
+--- a/setup.py
++++ b/setup.py
+@@ -121,7 +121,7 @@ case second 'm'. Any other spelling is incorrect.""",
+ 'flufl.bounce',
+ 'flufl.i18n>=2.0',
+ 'flufl.lock>=3.1',
+- 'importlib_resources>=1.1.0',
++ 'importlib_resources>=1.1.0 ; python_version<"3.9"',
+ 'gunicorn',
+ 'lazr.config',
+ 'python-dateutil>=2.0',
+diff --git a/src/mailman/__init__.py b/src/mailman/__init__.py
+index 2d94288e0..1c760008d 100644
+--- a/src/mailman/__init__.py
++++ b/src/mailman/__init__.py
+@@ -37,3 +37,8 @@ if 'build_sphinx' not in sys.argv: # pragma: nocover
+ else:
+ from mailman.core.i18n import initialize
+ initialize()
++
++# Switch over to the internal importlib.resources module on Python 3.9+
++if sys.version_info >= (3, 9, 0):
++ import importlib.resources
++ sys.modules['importlib_resources'] = importlib.resources
+diff --git a/src/mailman/testing/__init__.py b/src/mailman/testing/__init__.py
+index e69de29bb..2b2ed536a 100644
+--- a/src/mailman/testing/__init__.py
++++ b/src/mailman/testing/__init__.py
+@@ -0,0 +1,23 @@
++# Copyright (C) 2009-2020 by the Free Software Foundation, Inc.
++#
++# This file is part of GNU Mailman.
++#
++# GNU Mailman is free software: you can redistribute it and/or modify it under
++# the terms of the GNU General Public License as published by the Free
++# Software Foundation, either version 3 of the License, or (at your option)
++# any later version.
++#
++# GNU Mailman is distributed in the hope that it will be useful, but WITHOUT
++# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
++# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
++# more details.
++#
++# You should have received a copy of the GNU General Public License along with
++# GNU Mailman. If not, see <https://www.gnu.org/licenses/>.
++
++import sys
++
++# Switch over to the internal importlib.resources module on Python 3.9+
++if sys.version_info >= (3, 9, 0):
++ import importlib.resources
++ sys.modules['importlib_resources'] = importlib.resources
+--
+GitLab
+
diff --git a/net-mail/mailman/mailman-3.3.4.ebuild b/net-mail/mailman/mailman-3.3.4.ebuild
new file mode 100644
index 000000000000..d6f428c545b1
--- /dev/null
+++ b/net-mail/mailman/mailman-3.3.4.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{8..9} )
+inherit distutils-r1
+
+DESCRIPTION="Mailman -- the GNU mailing list manager"
+HOMEPAGE="https://www.list.org"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-3+"
+SLOT="3"
+KEYWORDS="~amd64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-python/aiosmtpd-1.4.1[${PYTHON_USEDEP}]
+ dev-python/alembic[${PYTHON_USEDEP}]
+ dev-python/atpublic[${PYTHON_USEDEP}]
+ >=dev-python/authheaders-0.13.0[${PYTHON_USEDEP}]
+ >=dev-python/authres-1.0.1[${PYTHON_USEDEP}]
+ >=dev-python/click-8.0[${PYTHON_USEDEP}]
+ >=dev-python/dnspython-1.14.0[${PYTHON_USEDEP}]
+ >=dev-python/falcon-2.0.0[${PYTHON_USEDEP}]
+ dev-python/flufl-bounce[${PYTHON_USEDEP}]
+ >=dev-python/flufl-i18n-2.0.1[${PYTHON_USEDEP}]
+ >=dev-python/flufl-lock-3.1[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/importlib_resources[${PYTHON_USEDEP}]
+ ' python3_8)
+ www-servers/gunicorn[${PYTHON_USEDEP}]
+ dev-python/lazr-config[${PYTHON_USEDEP}]
+ >=dev-python/python-dateutil-2.0[${PYTHON_USEDEP}]
+ dev-python/passlib[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ <dev-python/sqlalchemy-1.4[${PYTHON_USEDEP}]
+ dev-python/zope-component[${PYTHON_USEDEP}]
+ dev-python/zope-configuration[${PYTHON_USEDEP}]
+ dev-python/zope-event[${PYTHON_USEDEP}]
+ >=dev-python/zope-interface-5.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/flufl-testing[${PYTHON_USEDEP}]
+ virtual/python-greenlet[${PYTHON_USEDEP}]
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/${P}-py3.9-importlib.patch"
+ "${FILESDIR}/${P}-fix-click-8.patch"
+)
+
+python_test() {
+ distutils_install_for_testing --via-venv
+ "${EPYTHON}" -m nose2 -vv || die "Tests failed with ${EPYTHON}"
+}
diff --git a/net-mail/mailman/metadata.xml b/net-mail/mailman/metadata.xml
index 901e3a6f96e7..135f30d32da0 100644
--- a/net-mail/mailman/metadata.xml
+++ b/net-mail/mailman/metadata.xml
@@ -4,6 +4,7 @@
<maintainer type="person">
<email>hanno@gentoo.org</email>
</maintainer>
+ <stabilize-allarches/>
<upstream>
<remote-id type="pypi">mailman</remote-id>
<remote-id type="gitlab">mailman/mailman</remote-id>