Regression: syncing packages with UTF-8 changelogs fails
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Launchpad itself |
Fix Released
|
High
|
Jelmer Vernooij |
Bug Description
lp_archive@
Getting binaries for maverick...
[Updating] dctrl-tools (2.14 [Ubuntu] < 2.15 [Debian])
* Trying to add dctrl-tools...
2010-09-11 07:53:51 INFO - <dctrl-
2010-09-11 07:53:51 INFO - <dctrl-
I: dctrl-tools [main] -> dctrl-tools_2.14 [main].
Traceback (most recent call last):
File "/srv/launchpad
main()
File "/srv/launchpad
do_
File "/srv/launchpad
Options.
File "/srv/launchpad
current_
File "/srv/launchpad
origin)
File "/srv/launchpad
changes += changelog
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 921: ordinal not in range(128)
The first time I tried this, my locale was C. I tried setting it to en_GB.UTF-8 (which exists on cocoplum), but that made no difference.
The relevant line from the changelog is this:
* French translation updated by David Prévot (closes: #593990)
I've checked that this is correctly encoded in UTF-8 as 0xC3 0xA9:
lp_archive@
00000000 20 20 2a 20 46 72 65 6e 63 68 20 74 72 61 6e 73 | * French trans|
00000010 6c 61 74 69 6f 6e 20 75 70 64 61 74 65 64 20 62 |lation updated b|
00000020 79 20 44 61 76 69 64 20 50 72 c3 a9 76 6f 74 20 |y David Pr..vot |
00000030 28 63 6c 6f 73 65 73 3a 20 23 35 39 33 39 39 30 |(closes: #593990|
00000040 29 0a |).|
00000042
I've marked this as a regression in the bug summary. While I'm not absolutely certain about this, Debian changelogs have been specified as UTF-8 for several years now and UTF-8 is often used in translation credits in changelogs, so I find it implausible that we wouldn't have run across this before now. However, none of the recent changes to sync-source.py seem to be likely candidates. Perhaps this is something to do with the recent upgrade of cocoplum to lucid?
Related branches
- Robert Collins (community): Approve
- Launchpad code reviewers: Pending (code) requested
-
Diff: 62 lines (+27/-1)2 files modifiedlib/lp/soyuz/scripts/ftpmaster.py (+1/-1)
lib/lp/soyuz/scripts/tests/test_sync_source.py (+26/-0)
Changed in soyuz: | |
assignee: | nobody → Jelmer Vernooij (jelmer) |
importance: | Undecided → High |
status: | New → Triaged |
tags: | added: qa-bad |
tags: |
added: qa-ok removed: qa-bad |
tags: |
added: qa-ok removed: qa-needstesting |
Changed in soyuz: | |
status: | Fix Committed → Fix Released |
This is also blocking bug 637640.