Upload rejection fails if email template parameters contain non-ASCII text
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Launchpad itself |
Fix Released
|
Critical
|
Ioana Lasc |
Bug Description
https:/
UnicodeDecode
Traceback (most recent call last):
Module lp.archiveuploa
changes_file, self.processor.
Module lp.archiveuploa
upload.
Module lp.archiveuploa
changes_
Module lp.soyuz.
mailer.
Module lp.services.
self.
Module lp.services.
ctrl = self.generateEm
Module lp.soyuz.
email, recipient, force_no_
Module lp.services.
body = self._getBody(
Module lp.services.
body = template % params
UnicodeDecodeError: 'ascii' codec can't decode byte 0xd0 in position 10: ordinal not in range(128)
I've looked at the upload itself, and I think the problem here is that the Maintainer field has no email address, which causes parse_maintainer to return an error message as bytes rather than as text:
m = re_parse_
if not m:
raise ParseMaintError(
% (maintainer.
I think that making the exception be text rather than bytes should fix this, but of course we'll need to reproduce this in the test suite first to confirm my analysis.
Related branches
- Colin Watson (community): Approve
-
Diff: 108 lines (+29/-24)2 files modifiedlib/lp/archiveuploader/tests/test_utils.py (+25/-10)
lib/lp/archiveuploader/utils.py (+4/-14)
Changed in launchpad: | |
status: | Triaged → In Progress |
assignee: | nobody → Ioana Lasc (ilasc) |
Changed in launchpad: | |
status: | In Progress → Fix Committed |
Changed in launchpad: | |
status: | Fix Committed → Fix Released |