[Mailman-i18n] sync_members, list_members problem
Barry A. Warsaw
Mon Dec 2 16:23:10 2002
This is in reference to SF bug # 644005
When there are realnames of members with "funny" characters in them,
sync_members and list_members can throw UnicodeError exceptions
because it's trying to print strings with characters ord > 128.
I've implemented a fix to first sys.getdefaultencoding() and then
actually print ustr.encode(enc, 'replace') to stdout. That fixed the
problem for me, but is it the right solution?
On a related note, and I know this has been discussed on python-dev,
is it really not possible to call sys.setdefaultencoding() anywhere in
Python except by hacking site.py? PyUnicode_SetDefaultEncoding()
seems to only be exported to Python via sys, but that is deleted by
site.py after being called once.
This seems quite shortsighted (maybe I should raise this on
python-dev). Say my terminal can handle iso-8859-1. I'd like to be
able to set the default encoding to that somewhere that user-specific,
say PYTHONSTARTUP if I'm running interactively. But that seems
impossible, and I don't think hacking site.py is the appropriate
response. What if someone else at my site uses a different terminal
that can't print iso-8859-1?
More information about the Mailman-i18n