On 23.09.2023 16:26, Stephen J. Turnbull wrote:
Jana Berger writes:
You can see the same or similar result by opening the EML I quoted. Does the list support attachments? Then I will attach the file directly.
No, I just misjudged the length of the email -- without the header it's way too short to generate that much mojibake. I'll take your word for it now.
I have multiple control messages, all received
By whom? Through what other systems have they passed?
Is this happening with any other domain than USERDOMAIN.NET? The remote MTA in the message you included earlier seems to be something called Nemesis, and Google suggests it may be a German homebrew MTA. That's another candidate for causing this issue.
It was (until now) only reported from this domain, but Nemesis is used by GMX, one of the largest mail providers in Germany. I am reluctant to pin this issue on their end for now.
from my instance which all contain the "Content-Transfer-Encoding: base64" marker, their contents is plain text (Content-Type: text/plain; charset="utf-8"), but they are still encoded using base64.
Yes. The question remains, where is it happening and why.
As mentioned earlier, Mark tried to reproduce on one of his systems, but did not get the body in UTF-8/base64. It came out us-ascii/7bit, which is what we expect. Given Mark's experiments and the "all English" configuration you report, it seems unlikely to be from our distribution of Mailman.
One possibility is that Mailman or Python is getting confused by something in your whole system configuration (not limited to Mailman). Where did you get Mailman? Did you install a OS distribution package, from PyPI, or from source? How about Python 3?
I am using the "docker-mailman" image from https://github.com/maxking/docker-mailman
It is using Python 3.11 with Alpine 3.18 as its base.
I wonder if some MTA is using SMTPUTF8 and to make life "easier" for themselves they convert everything to UTF-8, but gets confused about whether base64 encoding is done or not.
I am using Postfix as the main MTA which is set to "smtputf8_enable = yes" together with "smtputf8_autodetect_classes = sendmail, verify". Is this an issue?
Global "Preferred language" is "English (USA)", which is not overridden by the list in question. I have not changed the default encoding. Is there a surefire way to detect this?
My mailman.cfg has no section pertaining to encoding, and all related files also do not mention encoding.
Then everything is configured for UTF-8 except for English, which is US-ASCII.
The only way to change the site default language or any charset is in mailman.cfg (or in the code). If you have a distro package of Mailman, you could check in site-packages/mailman/config/schema.cfg to see the settings for default_language (should be en) and immediately after [language.master] (charset should be us-ascii). I think that changing language.master.charset to utf-8 is probably very tempting for distros so that people can safely put emojis and smartquotes in their template messages in English.
I checked the schema.cfg and it has "charset: us-ascii" in its "[language.master]" section, as well as "default_language: en".