So, I'm thinking (in broad brush strokes) that if I'm stuck with this "http glitch" I could write a script to:
1. extract the text of the custom message from the database, 2. write that message text to a file 3. update the templates.uri entries to replace the http://localhost... with file:///path/to/file 4. cron the script to run every few minutes.
It screams of utter clunk I know...
but it would work.
Note that this may not be as big an issue as it seems. It doesn't affect all templates, for example list:member:digest:footer, list:member:digest:header, list:member:digest:masthead, list:member:regular:footer, list:member:regular:header and list:member:generic:footer are only used by the
out
runner when sending messages, so these aren't affected.
Right. Affected are all the "list:user:notice:***" (eg. goodbye, hold, reject,...)
I'm still trying to determine what the issue is. To this end can you tell me what Python version your Mailman uses and what is the output from
pip freeze
with your venv active?
$ mailman info GNU Mailman 3.3.9 (Tom Sawyer) Python 3.11.2 (main, Mar 13 2023, 12:18:29) [GCC 12.2.0]
$ pip freeze aiosmtpd==1.4.4.post2 alembic==1.13.1 arrow==1.3.0 asgiref==3.7.2 atpublic==4.0 attrs==23.2.0 authheaders==0.16.2 authres==1.2.0 blessed==1.20.0 certifi==2023.11.17 cffi==1.16.0 charset-normalizer==3.3.2 click==8.1.7 cmarkgfm==2024.1.14 cryptography==42.0.1 defusedxml==0.7.1 Django==4.2.11 django-allauth==0.60.1 django-appconf==1.0.6 django-compressor==4.4 django-extensions==3.2.3 django-gravatar2==1.4.4 django-haystack==3.2.1 django-mailman3==1.3.12 django-picklefield==3.1 django-q==1.3.9 djangorestframework==3.14.0 dkimpy==1.1.5 dnspython==2.5.0 docutils==0.20.1 falcon==3.1.3 filelock==3.13.1 flufl.bounce==4.0 flufl.i18n==5.0.2 flufl.lock==8.0.2 greenlet==3.0.3 gunicorn==21.2.0 HyperKitty==1.3.9 idna==3.6 lazr.config==3.0 lazr.delegates==2.1.0 mailman==3.3.9 mailman-hyperkitty==1.2.1 mailman-web==0.0.9 mailmanclient==3.3.5 Mako==1.3.0 MarkupSafe==2.1.4 mistune==3.0.2 networkx==3.2.1 nh3==0.2.15 oauthlib==3.2.2 packaging==23.2 passlib==1.7.4 postorius==1.3.10 psutil==5.9.8 psycopg2-binary==2.9.9 publicsuffix2==2.20191221 pycparser==2.21 Pygments==2.17.2 PyJWT==2.8.0 python-dateutil==2.8.2 python3-openid==3.2.0 pytz==2023.3.post1 rcssmin==1.1.1 readme-renderer==42.0 redis==3.5.3 requests==2.31.0 requests-oauthlib==1.3.1 rjsmin==1.2.1 robot-detection==0.4 six==1.16.0 SQLAlchemy==2.0.25 sqlparse==0.4.4 types-python-dateutil==2.8.19.20240106 typing_extensions==4.9.0 urllib3==2.1.0 wcwidth==0.2.13 Whoosh==2.7.4 xapian @ file:///opt/mailman/xapian-1.4.24-cp311-cp311-linux_aarch64.whl xapian-haystack==3.1.0 zope.component==6.0 zope.configuration==5.0 zope.event==5.0 zope.hookable==6.0 zope.i18nmessageid==6.1.0 zope.interface==6.1 zope.schema==7.0.1