tries to decode debian/changelog as ascii, and fails when it's not

Bug #853664 reported by Paul Sladen
56
This bug affects 6 people
Affects Status Importance Assigned to Milestone
bzr-builddeb
Fix Released
Medium
Martin Packman
bzr-builddeb (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

cat <<EOF > debian/changelog
  * Revert "power-cog" to combined design (System-Devices indicator)
    {dark,light}/…/system-devices-panel{,-alert,-warming} (LP: #844049)
EOF

bzr: ERROR: exceptions.UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 105: ordinal not in range(128)

Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/bzrlib/commands.py", line 946, in exception_to_return_code
    return the_callable(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/bzrlib/commands.py", line 1150, in run_bzr
    ret = run(*run_argv)
  File "/usr/lib/python2.7/dist-packages/bzrlib/commands.py", line 699, in run_argv_aliases
    return self.run(**all_cmd_args)
  File "/usr/lib/python2.7/dist-packages/bzrlib/commands.py", line 721, in run
    return self._operation.run_simple(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/bzrlib/cleanup.py", line 135, in run_simple
    self.cleanups, self.func, *args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/bzrlib/cleanup.py", line 165, in _do_with_cleanups
    result = func(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/bzrlib/builtins.py", line 3316, in run
    lossy=lossy)
  File "/usr/lib/python2.7/dist-packages/bzrlib/decorators.py", line 217, in write_locked
    result = unbound(self, *args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/bzrlib/workingtree_4.py", line 209, in commit
    result = WorkingTree.commit(self, message, revprops, *args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/bzrlib/decorators.py", line 217, in write_locked
    result = unbound(self, *args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/bzrlib/mutabletree.py", line 210, in commit
    *args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/bzrlib/commit.py", line 289, in commit
    lossy=lossy)
  File "/usr/lib/python2.7/dist-packages/bzrlib/cleanup.py", line 131, in run
    self.cleanups, self.func, self, *args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/bzrlib/cleanup.py", line 165, in _do_with_cleanups
    result = func(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/bzrlib/commit.py", line 440, in _commit
    self.rev_id = self.builder.commit(self.message)
  File "/usr/lib/python2.7/dist-packages/bzrlib/vf_repository.py", line 198, in commit
    self.new_inventory, self._config)
  File "/usr/lib/python2.7/dist-packages/bzrlib/vf_repository.py", line 1062, in add_revision
    self._add_revision(rev)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 105: ordinal not in range(128)

You can report this problem to Bazaar's developers by running
    apport-bug /var/crash/bzr.1000.2011-09-19T06:10.crash
if a bug-reporting window does not automatically appear.

Related branches

Revision history for this message
Martin Pool (mbp) wrote :

The unicode here, since it's not visually obvious, is the '...' elipsis.

I think this is actually the fault of the bzr-builddeb hook that's loading the changelog.

affects: bzr → bzr-builddeb
Changed in bzr-builddeb:
importance: Undecided → Medium
status: New → Confirmed
Revision history for this message
Martin Packman (gz) wrote :

This was somewhat annoying to track down. Happens during commit on bzr versions new enough to have the set_commit_message hook rather than the previously used commit_messsage_template hook. There's a bit of blame for bzr having confusingly specified interfaces in msgeditor but decoding in the builddeb callback should be enough.

Changed in bzr-builddeb:
assignee: nobody → Martin Packman (gz)
status: Confirmed → In Progress
Martin Packman (gz)
Changed in bzr-builddeb:
status: In Progress → Fix Committed
Jelmer Vernooij (jelmer)
Changed in bzr-builddeb:
status: Fix Committed → Fix Released
Philip Muškovac (yofel)
Changed in bzr-builddeb (Ubuntu):
status: New → Invalid
Jelmer Vernooij (jelmer)
Changed in bzr-builddeb:
status: Fix Released → Fix Committed
milestone: none → 2.8
status: Fix Committed → Fix Released
milestone: 2.8 → none
Revision history for this message
Martin Packman (gz) wrote :

This was fixed in builddeb 2.7.9, however there have been a number of recent bug reports from Oneiric users on 2.7.0dev which have a slightly different traceback but the same underlying cause. This may be related to bzr getting backports, while builddeb has not been updated.

Changed in bzr-builddeb (Ubuntu):
status: Invalid → Confirmed
Revision history for this message
Jackson Doak (noskcaj) wrote :

Fixed in all supported releases

Changed in bzr-builddeb (Ubuntu):
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.