[Mailman-Users] UnicodeDecodeError with Mailman 2.1 and Python 2.6

Stephen J. Turnbull stephen at xemacs.org
Wed Sep 2 08:31:51 CEST 2015

David Magda writes:

 > Debian is fairly conservative about these things,

Debian may be conservative, but individual maintainers vary.  Cf. that
OpenSSL patch fiasco.  There was no excuse for that patch, the
maintainer just thought he was smarter than the OpenSSL people.
Mailman itself has spent a fair amount of time on questions that ended
up being related to Debian patches (specifically the execrable
mailman-to-postfix script, although that did at least have a good
reason behind it from the point of view of the distro, it was very
fragile but Debian saw no need to fix it).

 > and AFAIK, the OS default was to use UTF-8, either en_US or
 > en_CA. The locale did not change during the upgrade.

OK, unless your old Debian was *really* old, that's very likely true
and a locale change was not the source of any of the issues.

 > We are running 2.1.13 from tarballs

Sorry, I confused your thread with somebody else's, then.

At 2.1.13, don't you have any DMARC problems?  Or do you just prohibit
users from posting from p=reject addresses?

 > and so the Mailman code did not change when the archive web page
 > generation stopped. The only thing that changed was the version of
 > Python (2.5 -> 2.6?) under the OS.

Python 2.5 was released in September 2006.  That's long enough ago
that I'm sure handling of Unicode and charsets changed significantly
between then and the release of 2.6 in October 2008, although I'm not
familiar with the details.  In Python 2, str is "promoted" to unicode
when operated on (eg, concatenation and comparison), but that is
inherently fragile, and it's quite likely the rules (eg, default
codecs and error handlers) changed between Python 2.5 and 2.6.

Stability of the system is of course a concern, but you may want to
consider installing python2.7 as an alternative (but *not* the system
default), and pointing Mailman at that in setup.py.  Going forward,
it's unlikely that python2.7 will see more changes (barring a major
security issue, there will be no more releases AFAIK), and Mailman
2.1.20 is very near the end of the line for Mailman 2, as well (but
keep your fingers crossed against a Yahoo!-style email security
debacle that DMARC doesn't handle -- who knows what the freemail
services might come up with in that scenario :-( ).

 > Doing a "arch --wipe mylist" seems to have solved the issue, though
 > now I'm curious to know why \xea was a problem before but suddenly
 > isn't after the wipe.

I expect Mark's explanation is correct, that without --wipe you had an
existing partial archive and processing that is where the error occurred.

More information about the Mailman-Users mailing list