diff --git a/mailman-3.3.8.tar.gz b/mailman-3.3.8.tar.gz deleted file mode 100644 index 87918b1..0000000 --- a/mailman-3.3.8.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:83ac07ee55ea2b4c89f00c4ed4717132f06270127d3465a53de3c5cb197d41ce -size 1676901 diff --git a/mailman-3.3.9.tar.gz b/mailman-3.3.9.tar.gz new file mode 100644 index 0000000..a33d000 --- /dev/null +++ b/mailman-3.3.9.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19b95723a23090b97e5758046cc01ed5b695c9938731a61a6084d7713929d8ca +size 2173293 diff --git a/mailman-fix-importlib-resources.patch b/mailman-fix-importlib-resources.patch deleted file mode 100644 index 0e6f518..0000000 --- a/mailman-fix-importlib-resources.patch +++ /dev/null @@ -1,656 +0,0 @@ -From 1346ffdbd2ad36e3f37732f3217be3b34dc7bc48 Mon Sep 17 00:00:00 2001 -From: Abhilash Raj -Date: Sun, 9 Jul 2023 16:03:17 +0530 -Subject: [PATCH 1/6] fix: Remove dependency on importlib_resources - ---- - _ext/configplugin.py | 2 +- - setup.py | 1 - - src/mailman/archiving/tests/test_mhonarc.py | 2 +- - src/mailman/bin/tests/test_mailman.py | 2 +- - src/mailman/bin/tests/test_master.py | 2 +- - src/mailman/chains/tests/test_hold.py | 2 +- - src/mailman/commands/docs/import.rst | 2 +- - src/mailman/commands/tests/test_cli_control.py | 2 +- - src/mailman/commands/tests/test_cli_import.py | 2 +- - src/mailman/config/config.py | 2 +- - src/mailman/config/tests/test_configuration.py | 2 +- - src/mailman/core/initialize.py | 2 +- - src/mailman/email/tests/test_message.py | 2 +- - src/mailman/handlers/tests/test_decorate.py | 2 +- - src/mailman/handlers/tests/test_mimedel.py | 2 +- - src/mailman/plugins/docs/intro.rst | 2 +- - src/mailman/plugins/testing/layer.py | 2 +- - src/mailman/rules/dmarc.py | 2 +- - src/mailman/rules/tests/test_dmarc.py | 2 +- - src/mailman/runners/tests/test_digest.py | 2 +- - src/mailman/testing/i18n.py | 2 +- - src/mailman/testing/layers.py | 2 +- - src/mailman/utilities/filesystem.py | 10 +++++----- - src/mailman/utilities/modules.py | 2 +- - src/mailman/utilities/tests/test_import.py | 2 +- - src/mailman/utilities/tests/test_scrubber.py | 2 +- - 27 files changed, 29 insertions(+), 40 deletions(-) - -diff --git a/_ext/configplugin.py b/_ext/configplugin.py -index 9ed5c98526..1979ce855e 100644 ---- a/_ext/configplugin.py -+++ b/_ext/configplugin.py -@@ -23,7 +23,7 @@ import configparser - from docutils import nodes - from docutils.parsers.rst import Directive, directives - from docutils.statemachine import ViewList --from importlib_resources import files -+from importlib.resources import files - from sphinx.util.nodes import nested_parse_with_titles - - -diff --git a/setup.py b/setup.py -index 5448b7cf95..714468cc4b 100644 ---- a/setup.py -+++ b/setup.py -@@ -121,7 +121,6 @@ case second 'm'. Any other spelling is incorrect.""", - 'flufl.bounce>=4.0', - 'flufl.i18n>=3.2', - 'flufl.lock>=5.1', -- 'importlib_resources>=1.1.0', - 'gunicorn', - 'lazr.config', - 'python-dateutil>=2.0', -diff --git a/src/mailman/archiving/tests/test_mhonarc.py b/src/mailman/archiving/tests/test_mhonarc.py -index 7cb19f35bd..b6c009e361 100644 ---- a/src/mailman/archiving/tests/test_mhonarc.py -+++ b/src/mailman/archiving/tests/test_mhonarc.py -@@ -23,7 +23,7 @@ import shutil - import tempfile - import unittest - --from importlib_resources import path -+from importlib.resources import path - from mailman.app.lifecycle import create_list - from mailman.archiving.mhonarc import MHonArc - from mailman.database.transaction import transaction -diff --git a/src/mailman/bin/tests/test_mailman.py b/src/mailman/bin/tests/test_mailman.py -index 13c02c7c90..9247877f7b 100644 ---- a/src/mailman/bin/tests/test_mailman.py -+++ b/src/mailman/bin/tests/test_mailman.py -@@ -21,7 +21,7 @@ import unittest - - from click.testing import CliRunner - from datetime import timedelta --from importlib_resources import path -+from importlib.resources import path - from mailman.app.lifecycle import create_list - from mailman.bin.mailman import main - from mailman.config import config -diff --git a/src/mailman/bin/tests/test_master.py b/src/mailman/bin/tests/test_master.py -index 092c337c9c..75041dd591 100644 ---- a/src/mailman/bin/tests/test_master.py -+++ b/src/mailman/bin/tests/test_master.py -@@ -27,7 +27,7 @@ from click.testing import CliRunner - from contextlib import ExitStack, suppress - from datetime import timedelta - from flufl.lock import Lock, TimeOutError --from importlib_resources import path -+from importlib.resources import path - from io import StringIO - from mailman.bin import master - from mailman.config import config -diff --git a/src/mailman/chains/tests/test_hold.py b/src/mailman/chains/tests/test_hold.py -index da579605d7..42da9ed8be 100644 ---- a/src/mailman/chains/tests/test_hold.py -+++ b/src/mailman/chains/tests/test_hold.py -@@ -20,7 +20,7 @@ - import unittest - - from email import message_from_bytes as mfb --from importlib_resources import read_binary -+from importlib.resources import read_binary - from mailman.app.lifecycle import create_list - from mailman.chains.builtin import BuiltInChain - from mailman.chains.hold import autorespond_to_sender, HoldChain -diff --git a/src/mailman/commands/docs/import.rst b/src/mailman/commands/docs/import.rst -index 66f72be163..e4f741dbb2 100644 ---- a/src/mailman/commands/docs/import.rst -+++ b/src/mailman/commands/docs/import.rst -@@ -26,7 +26,7 @@ You must also specify a pickle file to import. - - Too bad the list doesn't exist. - -- >>> from importlib_resources import path -+ >>> from importlib.resources import path - >>> with path('mailman.testing', 'config.pck') as pickle_path: - ... pickle_file = str(pickle_path) - ... command('mailman import21 import@example.com ' + pickle_file) -diff --git a/src/mailman/commands/tests/test_cli_control.py b/src/mailman/commands/tests/test_cli_control.py -index 43364490d6..b6fdbc10cd 100644 ---- a/src/mailman/commands/tests/test_cli_control.py -+++ b/src/mailman/commands/tests/test_cli_control.py -@@ -29,7 +29,7 @@ from click.testing import CliRunner - from contextlib import ExitStack, suppress - from datetime import datetime, timedelta - from flufl.lock import SEP --from importlib_resources import path -+from importlib.resources import path - from mailman.bin.master import WatcherState - from mailman.commands.cli_control import reopen, restart, start - from mailman.config import config -diff --git a/src/mailman/commands/tests/test_cli_import.py b/src/mailman/commands/tests/test_cli_import.py -index 5e26a2d9eb..bf35d9b7a3 100644 ---- a/src/mailman/commands/tests/test_cli_import.py -+++ b/src/mailman/commands/tests/test_cli_import.py -@@ -21,7 +21,7 @@ import unittest - - from click.testing import CliRunner - from contextlib import ExitStack --from importlib_resources import path -+from importlib.resources import path - from mailman.app.lifecycle import create_list - from mailman.commands.cli_import import import21 - from mailman.testing.layers import ConfigLayer -diff --git a/src/mailman/config/config.py b/src/mailman/config/config.py -index da0f542332..6028b32359 100644 ---- a/src/mailman/config/config.py -+++ b/src/mailman/config/config.py -@@ -24,7 +24,7 @@ import mailman.templates - from configparser import ConfigParser - from contextlib import ExitStack - from flufl.lock import Lock --from importlib_resources import path, read_text -+from importlib.resources import path, read_text - from lazr.config import as_boolean, ConfigSchema - from mailman import version - from mailman.interfaces.configuration import ( -diff --git a/src/mailman/config/tests/test_configuration.py b/src/mailman/config/tests/test_configuration.py -index 7c79574096..00919cf458 100644 ---- a/src/mailman/config/tests/test_configuration.py -+++ b/src/mailman/config/tests/test_configuration.py -@@ -22,7 +22,7 @@ import tempfile - import unittest - - from contextlib import ExitStack --from importlib_resources import path -+from importlib.resources import path - from mailman.config.config import ( - Configuration, - external_configuration, -diff --git a/src/mailman/core/initialize.py b/src/mailman/core/initialize.py -index c5ff1e219b..5ebbb412bb 100644 ---- a/src/mailman/core/initialize.py -+++ b/src/mailman/core/initialize.py -@@ -30,7 +30,7 @@ import logging - import mailman.core.logging - import mailman.config.config - --from importlib_resources import read_text -+from importlib.resources import read_text - from mailman.interfaces.database import IDatabaseFactory - from public import public - from zope.component import getUtility -diff --git a/src/mailman/email/tests/test_message.py b/src/mailman/email/tests/test_message.py -index 439cf64b04..73abfc8445 100644 ---- a/src/mailman/email/tests/test_message.py -+++ b/src/mailman/email/tests/test_message.py -@@ -24,7 +24,7 @@ from email import message_from_binary_file - from email.header import Header - from email.parser import FeedParser - from email.utils import _has_surrogates --from importlib_resources import path -+from importlib.resources import path - from mailman.app.lifecycle import create_list - from mailman.email.message import Message, UserNotification - from mailman.testing.helpers import ( -diff --git a/src/mailman/handlers/tests/test_decorate.py b/src/mailman/handlers/tests/test_decorate.py -index 90134329ce..3b8bed2f03 100644 ---- a/src/mailman/handlers/tests/test_decorate.py -+++ b/src/mailman/handlers/tests/test_decorate.py -@@ -22,7 +22,7 @@ import re - import email - import unittest - --from importlib_resources import open_binary as resource_open -+from importlib.resources import open_binary as resource_open - from mailman.app.lifecycle import create_list - from mailman.config import config - from mailman.email.message import Message -diff --git a/src/mailman/handlers/tests/test_mimedel.py b/src/mailman/handlers/tests/test_mimedel.py -index f7bababe22..c21c599d7f 100644 ---- a/src/mailman/handlers/tests/test_mimedel.py -+++ b/src/mailman/handlers/tests/test_mimedel.py -@@ -25,7 +25,7 @@ import tempfile - import unittest - - from contextlib import contextmanager, ExitStack --from importlib_resources import open_binary as resource_open, read_text -+from importlib.resources import open_binary as resource_open, read_text - from io import StringIO - from mailman.app.lifecycle import create_list - from mailman.config import config -diff --git a/src/mailman/plugins/docs/intro.rst b/src/mailman/plugins/docs/intro.rst -index b6827627c8..1e65c991e2 100644 ---- a/src/mailman/plugins/docs/intro.rst -+++ b/src/mailman/plugins/docs/intro.rst -@@ -20,7 +20,7 @@ enabled by adding a section to your ``mailman.cfg`` file, such as: - - We have such a configuration file handy. - -- >>> from importlib_resources import path -+ >>> from importlib.resources import path - >>> config_file = str(cleanups.enter_context( - ... path('mailman.plugins.testing', 'hooks.cfg'))) - -diff --git a/src/mailman/plugins/testing/layer.py b/src/mailman/plugins/testing/layer.py -index 1ac00463f4..0d40240ace 100644 ---- a/src/mailman/plugins/testing/layer.py -+++ b/src/mailman/plugins/testing/layer.py -@@ -20,7 +20,7 @@ - import os - - from contextlib import ExitStack --from importlib_resources import path -+from importlib.resources import path - from mailman.testing.helpers import ( - hackenv, - TestableMaster, -diff --git a/src/mailman/rules/dmarc.py b/src/mailman/rules/dmarc.py -index b9a22f39b5..e014937512 100644 ---- a/src/mailman/rules/dmarc.py -+++ b/src/mailman/rules/dmarc.py -@@ -24,7 +24,7 @@ import dns.resolver - - from dns.exception import DNSException - from email.utils import parseaddr --from importlib_resources import read_binary -+from importlib.resources import read_binary - from lazr.config import as_timedelta - from mailman.config import config - from mailman.core.i18n import _ -diff --git a/src/mailman/rules/tests/test_dmarc.py b/src/mailman/rules/tests/test_dmarc.py -index 73777a11f8..eb31537a08 100644 ---- a/src/mailman/rules/tests/test_dmarc.py -+++ b/src/mailman/rules/tests/test_dmarc.py -@@ -27,7 +27,7 @@ from dns.rdatatype import CNAME, TXT - from dns.resolver import NoAnswer, NoNameservers, NXDOMAIN - from email import message_from_bytes - from http.server import BaseHTTPRequestHandler, HTTPServer --from importlib_resources import path -+from importlib.resources import path - from lazr.config import as_timedelta - from mailman.app.lifecycle import create_list - from mailman.config import config -diff --git a/src/mailman/runners/tests/test_digest.py b/src/mailman/runners/tests/test_digest.py -index 97d587f8a8..fb75175dbd 100644 ---- a/src/mailman/runners/tests/test_digest.py -+++ b/src/mailman/runners/tests/test_digest.py -@@ -24,7 +24,7 @@ import unittest - from email import message_from_binary_file, message_from_bytes - from email.iterators import _structure as structure - from email.mime.text import MIMEText --from importlib_resources import open_binary -+from importlib.resources import open_binary - from io import StringIO - from mailman.app.lifecycle import create_list - from mailman.config import config -diff --git a/src/mailman/testing/i18n.py b/src/mailman/testing/i18n.py -index 9ce0f20f47..42e8e8b21b 100644 ---- a/src/mailman/testing/i18n.py -+++ b/src/mailman/testing/i18n.py -@@ -19,7 +19,7 @@ - - from flufl.i18n import registry - from gettext import GNUTranslations, NullTranslations --from importlib_resources import open_binary -+from importlib.resources import open_binary - from public import public - - -diff --git a/src/mailman/testing/layers.py b/src/mailman/testing/layers.py -index 6ea9f67f9e..8afd35752f 100644 ---- a/src/mailman/testing/layers.py -+++ b/src/mailman/testing/layers.py -@@ -32,7 +32,7 @@ import logging - import datetime - import tempfile - --from importlib_resources import files, read_text -+from importlib.resources import files, read_text - from lazr.config import as_boolean - from mailman.config import config - from mailman.core import initialize -diff --git a/src/mailman/utilities/filesystem.py b/src/mailman/utilities/filesystem.py -index 226d54dfe6..af9bef88a6 100644 ---- a/src/mailman/utilities/filesystem.py -+++ b/src/mailman/utilities/filesystem.py -@@ -116,12 +116,12 @@ def first_inexistent_directory(path): - def path(package, module, *args, **kw): - """Wrap around importlib.resources.path. - -- importlib_resources.path (PyPI package we use for compatibility in Python < -+ importlib.resources.path (PyPI package we use for compatibility in Python < - 3.7) has now diverged in behavior from importlib.resources.path (in Python - >= 3.7), especially in terms of supporting directories. Even though we can - just jump to the new version of the library, many distributions packaging -- Mailman do not package importlib_resources at all and instead patch the -- source code to simply replace importlib_resources with importlib.resources. -+ Mailman do not package importlib.resources at all and instead patch the -+ source code to simply replace importlib.resources with importlib.resources. - - This utility method is meant to keep that patching ability without any - complicated patches to make Mailman work with standard library -@@ -129,7 +129,7 @@ def path(package, module, *args, **kw): - behavior causes problems for us. - """ - # Note to packaging teams: This function will handle both standard library -- # and 3rd party importlib_resources package. Please do not patch it. -+ # and 3rd party importlib.resources package. Please do not patch it. - if module: - module_package = '{}.{}'.format(package, module) - else: -@@ -143,5 +143,5 @@ def path(package, module, *args, **kw): - from importlib.resources import files # pragma: nocover - return files(module_package, *args, **kw) # pragma: nocover - except ImportError: # pragma: nocover -- from importlib_resources import files # pragma: nocover -+ from importlib.resources import files # pragma: nocover - return files(module_package, *args, **kw) # pragma: nocover -diff --git a/src/mailman/utilities/modules.py b/src/mailman/utilities/modules.py -index 0ec9e679b7..dc40376719 100644 ---- a/src/mailman/utilities/modules.py -+++ b/src/mailman/utilities/modules.py -@@ -22,7 +22,7 @@ import sys - - from contextlib import contextmanager - from importlib import import_module --from importlib_resources import contents, is_resource, path -+from importlib.resources import contents, is_resource, path - from public import public - - -diff --git a/src/mailman/utilities/tests/test_import.py b/src/mailman/utilities/tests/test_import.py -index e104c95091..9ffdebba0c 100644 ---- a/src/mailman/utilities/tests/test_import.py -+++ b/src/mailman/utilities/tests/test_import.py -@@ -23,7 +23,7 @@ import unittest - from contextlib import ExitStack, redirect_stderr - from datetime import datetime, timedelta - from enum import Enum --from importlib_resources import open_binary -+from importlib.resources import open_binary - from io import StringIO - from mailman.app.lifecycle import create_list - from mailman.config import config -diff --git a/src/mailman/utilities/tests/test_scrubber.py b/src/mailman/utilities/tests/test_scrubber.py -index 8f6de03cdb..9fa2862b10 100644 ---- a/src/mailman/utilities/tests/test_scrubber.py -+++ b/src/mailman/utilities/tests/test_scrubber.py -@@ -19,7 +19,7 @@ - - import unittest - --from importlib_resources import open_text -+from importlib.resources import open_text - from mailman.testing.helpers import specialized_message_from_string as mfs - from mailman.utilities import scrubber - --- -GitLab - - -From 974da30f392d8cfb3bc9d7fd7ce168a707af139e Mon Sep 17 00:00:00 2001 -From: Abhilash Raj -Date: Sun, 9 Jul 2023 16:08:37 +0530 -Subject: [PATCH 2/6] remove compat function to handle patching to - importlib.resources - ---- - src/mailman/utilities/filesystem.py | 35 ------------------- - src/mailman/utilities/i18n.py | 2 +- - src/mailman/utilities/tests/test_modules.py | 2 +- - src/mailman/utilities/tests/test_templates.py | 2 +- - 4 files changed, 3 insertions(+), 38 deletions(-) - -diff --git a/src/mailman/utilities/filesystem.py b/src/mailman/utilities/filesystem.py -index af9bef88a6..cc4b3e3218 100644 ---- a/src/mailman/utilities/filesystem.py -+++ b/src/mailman/utilities/filesystem.py -@@ -110,38 +110,3 @@ def first_inexistent_directory(path): - "The path %s exists but is not a directory.", - directory) - directory, rhs = os.path.split(directory) -- -- --@public --def path(package, module, *args, **kw): -- """Wrap around importlib.resources.path. -- -- importlib.resources.path (PyPI package we use for compatibility in Python < -- 3.7) has now diverged in behavior from importlib.resources.path (in Python -- >= 3.7), especially in terms of supporting directories. Even though we can -- just jump to the new version of the library, many distributions packaging -- Mailman do not package importlib.resources at all and instead patch the -- source code to simply replace importlib.resources with importlib.resources. -- -- This utility method is meant to keep that patching ability without any -- complicated patches to make Mailman work with standard library -- importlib.resources. This is only supposed to be used where the divergent -- behavior causes problems for us. -- """ -- # Note to packaging teams: This function will handle both standard library -- # and 3rd party importlib.resources package. Please do not patch it. -- if module: -- module_package = '{}.{}'.format(package, module) -- else: -- module_package = package -- -- try: -- if sys.version_info < (3, 9): -- from importlib.resources import path -- return path(package, module, *args, **kw) -- else: -- from importlib.resources import files # pragma: nocover -- return files(module_package, *args, **kw) # pragma: nocover -- except ImportError: # pragma: nocover -- from importlib.resources import files # pragma: nocover -- return files(module_package, *args, **kw) # pragma: nocover -diff --git a/src/mailman/utilities/i18n.py b/src/mailman/utilities/i18n.py -index 9f2bb1dea0..cbc3f8392b 100644 ---- a/src/mailman/utilities/i18n.py -+++ b/src/mailman/utilities/i18n.py -@@ -21,11 +21,11 @@ import os - import sys - - from contextlib import ExitStack -+from importlib.resources import path - from itertools import product - from mailman.config import config - from mailman.core.constants import system_preferences - from mailman.interfaces.errors import MailmanError --from mailman.utilities.filesystem import path - from public import public - - -diff --git a/src/mailman/utilities/tests/test_modules.py b/src/mailman/utilities/tests/test_modules.py -index ac5aae8ffb..f5db1697f9 100644 ---- a/src/mailman/utilities/tests/test_modules.py -+++ b/src/mailman/utilities/tests/test_modules.py -@@ -22,11 +22,11 @@ import sys - import unittest - - from contextlib import contextmanager, ExitStack -+from importlib.resources import path - from mailman.interfaces.rules import IRule - from mailman.interfaces.styles import IStyle - from mailman.testing.helpers import configuration - from mailman.testing.layers import ConfigLayer --from mailman.utilities.filesystem import path - from mailman.utilities.modules import ( - find_components, - find_pluggable_components, -diff --git a/src/mailman/utilities/tests/test_templates.py b/src/mailman/utilities/tests/test_templates.py -index 251a5d392b..60b12858a9 100644 ---- a/src/mailman/utilities/tests/test_templates.py -+++ b/src/mailman/utilities/tests/test_templates.py -@@ -23,11 +23,11 @@ import tempfile - import unittest - - from contextlib import ExitStack -+from importlib.resources import path as resource_path - from mailman.app.lifecycle import create_list - from mailman.config import config - from mailman.interfaces.languages import ILanguageManager - from mailman.testing.layers import ConfigLayer --from mailman.utilities.filesystem import path as resource_path - from mailman.utilities.i18n import find, search, TemplateNotFoundError - from zope.component import getUtility - --- -GitLab - - -From 0b9dbc5cbff7813b21cbeb4716ea64eca5177f51 Mon Sep 17 00:00:00 2001 -From: Abhilash Raj -Date: Sun, 9 Jul 2023 16:20:52 +0530 -Subject: [PATCH 3/6] qa fixes - ---- - src/mailman/utilities/filesystem.py | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/src/mailman/utilities/filesystem.py b/src/mailman/utilities/filesystem.py -index cc4b3e3218..ae110dd5af 100644 ---- a/src/mailman/utilities/filesystem.py -+++ b/src/mailman/utilities/filesystem.py -@@ -18,7 +18,6 @@ - """Filesystem utilities.""" - - import os --import sys - - from contextlib import suppress - from public import public --- -GitLab - - -From edabcae8d05909c21ae9b923b75b4f6fa92853a8 Mon Sep 17 00:00:00 2001 -From: Mark Sapiro -Date: Fri, 4 Aug 2023 18:54:06 -0700 -Subject: [PATCH 5/6] Fix to avoid IsADirectoryError from - importlib.resources.path with Python 3.9 - ---- - src/mailman/utilities/i18n.py | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/src/mailman/utilities/i18n.py b/src/mailman/utilities/i18n.py -index cbc3f8392b..913412320f 100644 ---- a/src/mailman/utilities/i18n.py -+++ b/src/mailman/utilities/i18n.py -@@ -21,7 +21,7 @@ import os - import sys - - from contextlib import ExitStack --from importlib.resources import path -+from importlib.resources import files - from itertools import product - from mailman.config import config - from mailman.core.constants import system_preferences -@@ -114,7 +114,7 @@ def search(resources, template_file, mlist=None, language=None): - languages.append(language) - languages.reverse() - # The non-language qualified $template_dir paths in search order. -- templates_dir = str(resources.enter_context(path('mailman', 'templates'))) -+ templates_dir = files('mailman').joinpath('templates') - paths = [templates_dir, os.path.join(config.TEMPLATE_DIR, 'site')] - if mlist is not None: - # Don't forget these are in REVERSE search order! --- -GitLab - - -From edd4a5e8d4b0a6fa1b5f0ba40b2dab66de30102b Mon Sep 17 00:00:00 2001 -From: Mark Sapiro -Date: Fri, 4 Aug 2023 22:41:49 -0700 -Subject: [PATCH 6/6] More importlib.resources.path fixes. - ---- - src/mailman/mta/tests/data/__init__.py | 0 - src/mailman/utilities/i18n.py | 3 ++- - src/mailman/utilities/tests/test_modules.py | 6 +++--- - src/mailman/utilities/tests/test_templates.py | 4 ++-- - 4 files changed, 7 insertions(+), 6 deletions(-) - create mode 100644 src/mailman/mta/tests/data/__init__.py - -diff --git a/src/mailman/mta/tests/data/__init__.py b/src/mailman/mta/tests/data/__init__.py -new file mode 100644 -index 0000000000..e69de29bb2 -diff --git a/src/mailman/utilities/i18n.py b/src/mailman/utilities/i18n.py -index 913412320f..a694ae8ddc 100644 ---- a/src/mailman/utilities/i18n.py -+++ b/src/mailman/utilities/i18n.py -@@ -114,7 +114,8 @@ def search(resources, template_file, mlist=None, language=None): - languages.append(language) - languages.reverse() - # The non-language qualified $template_dir paths in search order. -- templates_dir = files('mailman').joinpath('templates') -+ templates_dir = str(resources.enter_context( -+ files('mailman').joinpath('templates'))) - paths = [templates_dir, os.path.join(config.TEMPLATE_DIR, 'site')] - if mlist is not None: - # Don't forget these are in REVERSE search order! -diff --git a/src/mailman/utilities/tests/test_modules.py b/src/mailman/utilities/tests/test_modules.py -index f5db1697f9..baa39417b3 100644 ---- a/src/mailman/utilities/tests/test_modules.py -+++ b/src/mailman/utilities/tests/test_modules.py -@@ -22,7 +22,7 @@ import sys - import unittest - - from contextlib import contextmanager, ExitStack --from importlib.resources import path -+from importlib.resources import files - from mailman.interfaces.rules import IRule - from mailman.interfaces.styles import IStyle - from mailman.testing.helpers import configuration -@@ -165,7 +165,7 @@ class AbstractStyle: - def test_find_pluggable_components_by_plugin_name(self): - with ExitStack() as resources: - testing_path = resources.enter_context( -- path('mailman.plugins.testing', '')) -+ files('mailman.plugins.testing')) - resources.enter_context(hack_syspath(0, str(testing_path))) - resources.enter_context(configuration('plugin.example', **{ - 'class': 'example.hooks.ExamplePlugin', -@@ -177,7 +177,7 @@ class AbstractStyle: - def test_find_pluggable_components_by_component_package(self): - with ExitStack() as resources: - testing_path = resources.enter_context( -- path('mailman.plugins.testing', '')) -+ files('mailman.plugins.testing')) - resources.enter_context(hack_syspath(0, str(testing_path))) - resources.enter_context(configuration('plugin.example', **{ - 'class': 'example.hooks.ExamplePlugin', -diff --git a/src/mailman/utilities/tests/test_templates.py b/src/mailman/utilities/tests/test_templates.py -index 60b12858a9..43c680b23e 100644 ---- a/src/mailman/utilities/tests/test_templates.py -+++ b/src/mailman/utilities/tests/test_templates.py -@@ -23,7 +23,7 @@ import tempfile - import unittest - - from contextlib import ExitStack --from importlib.resources import path as resource_path -+from importlib.resources import files as resource_path - from mailman.app.lifecycle import create_list - from mailman.config import config - from mailman.interfaces.languages import ILanguageManager -@@ -64,7 +64,7 @@ class TestSearchOrder(unittest.TestCase): - # /m/ as the root. - with ExitStack() as resources: - in_tree = str(resources.enter_context( -- resource_path('mailman', 'templates')).parent) -+ resource_path('mailman').joinpath('templates')).parent) - raw_search_order = search( - resources, template_file, mailing_list, language) - for path in raw_search_order: --- -GitLab - diff --git a/python-mailman.changes b/python-mailman.changes index ead154c..ef7ad7a 100644 --- a/python-mailman.changes +++ b/python-mailman.changes @@ -1,3 +1,16 @@ +------------------------------------------------------------------- +Thu Nov 2 16:02:35 UTC 2023 - Andreas Schneider + +- Require authheaders >= 0.15.2 + +------------------------------------------------------------------- +Thu Nov 2 08:52:18 UTC 2023 - Andreas Schneider + +- Update to version 3.3.9 + * See https://gitlab.com/mailman/mailman/-/blob/v3.3.9/src/mailman/docs/NEWS.rst + or the file NEWS.rst in this package +- Removed mailman-fix-importlib-resources.patch + ------------------------------------------------------------------- Thu Sep 21 08:01:21 UTC 2023 - Andreas Schneider diff --git a/python-mailman.spec b/python-mailman.spec index 3ddf8c3..99b1a30 100644 --- a/python-mailman.spec +++ b/python-mailman.spec @@ -47,7 +47,7 @@ %define mypython_sitelib %{python3_sitelib} %endif Name: python-mailman%{psuffix} -Version: 3.3.8 +Version: 3.3.9 Release: 0 Summary: A Mailing List Manager Group: Productivity/Networking/Email/Mailinglists @@ -71,9 +71,6 @@ Source31: python-mailman.rpmlintrc Source100: https://gitlab.com/mailman/mailman/-/raw/master/src/mailman/testing/ssl_test_cert.crt Source101: https://gitlab.com/mailman/mailman/-/raw/master/src/mailman/testing/ssl_test_key.key # -# Backport of https://gitlab.com/mailman/mailman/-/merge_requests/1130.patch -Patch0: mailman-fix-importlib-resources.patch -# BuildRequires: %{python_module setuptools} BuildRequires: fdupes BuildRequires: python-rpm-macros @@ -98,7 +95,7 @@ Requires: %{mypython}-SQLAlchemy >= 1.2.3 Requires: %{mypython}-aiosmtpd >= 1.4.3 Requires: %{mypython}-alembic Requires: %{mypython}-atpublic -Requires: %{mypython}-authheaders >= 0.14.0 +Requires: %{mypython}-authheaders >= 0.15.2 Requires: %{mypython}-authres >= 1.0.1 Requires: %{mypython}-click >= 8.0 Requires: %{mypython}-dnspython >= 1.14.0 @@ -261,7 +258,7 @@ done %service_del_postun %{mailman_services} %files -n mailman3 -%doc README.rst README.SUSE.md +%doc README.rst README.SUSE.md src/mailman/docs/NEWS.rst %license COPYING %{_sbindir}/rc%{mailman_name}* %{_bindir}/runner