Opened 11 years ago

Closed 11 years ago

Last modified 11 years ago

#11227 closed defect (duplicate)

UnicodeEncodeError with accented characters

Reported by: Stephan Geulette Owned by: Steffen Hoffmann
Priority: normal Component: AnnouncerPlugin
Severity: normal Keywords:
Cc: Trac Release: 1.0

Description (last modified by Jun Omae)

trac 1.0.1, python 2.7.3


Traceback (most recent call last):
  File "build/bdist.linux-x86_64/egg/announcer/", line 584, in _real_send
  File "build/bdist.linux-x86_64/egg/announcer/distributors/", line 330, in distribute
    self._do_send(transport, event, k, v, fmtdict[k])
  File "build/bdist.linux-x86_64/egg/announcer/distributors/", line 488, in _do_send
    msgText = MIMEText(output, msg_format)
  File "/srv/python/python273/lib/python2.7/email/mime/", line 30, in __init__
    self.set_payload(_text, _charset)
  File "/srv/python/python273/lib/python2.7/email/", line 226, in set_payload
  File "/srv/python/python273/lib/python2.7/email/", line 262, in set_charset
    self._payload = self._payload.encode(charset.output_charset)
UnicodeEncodeError: 'ascii' codec can't encode character u'\xe9' in position 12: ordinal not in range(128)

output contains :

u"#6373: ne cr\xe9er des utilisateurs qu'en mode developpement\nNOUVEAU Am\xe9lioration\n---------------------------------------------------------------------\nReporter: sgeulette\nOwner: (None)\nPriority: Normale\nMilestone: Project 0.1 PST Prototype\nSeverity: Non bloquant\n\n---------------------------------------------------------------------\nComment (by sgeulette):\n\ntest5\n--\nTicket URL: <URL:>\nIMIO <URL:>\nIntercommunale de Mutualisation Informatique et Organisationnelle\n"

The charset is not passed to MIMEText in msgText = MIMEText(output, msg_format) With MIMEText(output, msg_format, _charset=self._charset.output_charset), it's ok

Attachments (0)

Change History (5)

comment:1 Changed 11 years ago by Jun Omae

Description: modified (diff)

comment:2 Changed 11 years ago by Stephan Geulette

Beware, the proposed correction doesn't work !

comment:3 Changed 11 years ago by Stephan Geulette

when passing charset to MIMEText, in my case the cte is set to base64

It works if the cte already in msgText isn't modified ! # del msgTextContent-Transfer-Encoding? # msgText.set_charset(self._charset)

comment:4 Changed 11 years ago by Ryan J Ollos

Resolution: fixed
Status: newclosed

Duplicate of #10974.

comment:5 Changed 11 years ago by Ryan J Ollos

Resolution: fixedduplicate

Modify Ticket

Change Properties
Set your email in Preferences
as closed The owner will remain Steffen Hoffmann.
The resolution will be deleted. Next status will be 'reopened'.

Add Comment

E-mail address and name can be saved in the Preferences.

Note: See TracTickets for help on using tickets.