bzr crashes on 'bzr help x' where x is unicode alias

Bug #621652 reported by Parth Malwankar
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Bazaar
Confirmed
Medium
Unassigned

Bug Description

[~]% bzr alias €
bzr alias €="st"
[~]% bzr €
bzr: ERROR: Not a branch: "/home/parthm/".
[~]% bzr help €
bzr: failed to report crash using apport:
     OSError(17, 'File exists')
bzr: ERROR: exceptions.UnicodeEncodeError: 'ascii' codec can't encode character u'\u20ac' in position 5: ordinal not in range(128)

Traceback (most recent call last):
  File "/storage/parth/src/bzr.dev/trunk/bzrlib/commands.py", line 912, in exception_to_return_code
    return the_callable(*args, **kwargs)
  File "/storage/parth/src/bzr.dev/trunk/bzrlib/commands.py", line 1112, in run_bzr
    ret = run(*run_argv)
  File "/storage/parth/src/bzr.dev/trunk/bzrlib/commands.py", line 690, in run_argv_aliases
    return self.run(**all_cmd_args)
  File "/storage/parth/src/bzr.dev/trunk/bzrlib/commands.py", line 705, in run
    return self._operation.run_simple(*args, **kwargs)
  File "/storage/parth/src/bzr.dev/trunk/bzrlib/cleanup.py", line 135, in run_simple
    self.cleanups, self.func, *args, **kwargs)
  File "/storage/parth/src/bzr.dev/trunk/bzrlib/cleanup.py", line 165, in _do_with_cleanups
    result = func(*args, **kwargs)
  File "/storage/parth/src/bzr.dev/trunk/bzrlib/commands.py", line 1127, in ignore_pipe
    result = func(*args, **kwargs)
  File "/storage/parth/src/bzr.dev/trunk/bzrlib/builtins.py", line 4228, in run
    bzrlib.help.help(topic)
  File "/storage/parth/src/bzr.dev/trunk/bzrlib/help.py", line 58, in help
    " ".join(alias)))
UnicodeEncodeError: 'ascii' codec can't encode character u'\u20ac' in position 5: ordinal not in range(128)

bzr 2.3.0dev1 on python 2.6.5 (Linux-2.6.32-24-generic-i686-with-Ubuntu-10.04-lucid)
arguments: ['/home/parthm/src/bzr.dev/trunk/bzr', 'help', '\xe2\x82\xac']
encoding: 'UTF-8', fsenc: 'UTF-8', lang: 'en_IN'
plugins:
  bash_completion /storage/parth/src/bzr.dev/trunk/bzrlib/plugins/bash_completion [2.3.0dev1]
  bzrtools /home/parthm/.bazaar/plugins/bzrtools [2.2.0]
  etckeeper /usr/lib/python2.6/dist-packages/bzrlib/plugins/etckeeper [unknown]
  grep /home/parthm/.bazaar/plugins/grep [0.5.0dev]
  keywords /home/parthm/.bazaar/plugins/keywords [unknown]
  launchpad /storage/parth/src/bzr.dev/trunk/bzrlib/plugins/launchpad [2.3.0dev1]
  netrc_credential_store /storage/parth/src/bzr.dev/trunk/bzrlib/plugins/netrc_credential_store [2.3.0dev1]
  news_merge /storage/parth/src/bzr.dev/trunk/bzrlib/plugins/news_merge [2.3.0dev1]
  plugin_info /home/parthm/.bazaar/plugins/plugin_info [1.3.0dev]
  search /home/parthm/.bazaar/plugins/search [1.7.0dev]
  svn /home/parthm/.bazaar/plugins/svn [1.0.4dev]
  touch /home/parthm/.bazaar/plugins/touch [1.1]
  upload /home/parthm/.bazaar/plugins/upload [1.0.0dev]

*** Bazaar has encountered an internal error. This probably indicates a
    bug in Bazaar. You can help us fix it by filing a bug report at
        https://bugs.launchpad.net/bzr/+filebug
    including this traceback and a description of the problem.
[~]%

Revision history for this message
Parth Malwankar (parthm) wrote :

Also, related. If the command that is aliased has unicode characters, doing bzr help causes a crash with UnicodeDecodeError.

[~]% bzr alias ust
bzr alias ust="st русский тест"
[~]% bzr help ust
bzr: ERROR: exceptions.UnicodeEncodeError: 'ascii' codec can't encode characters in position 34-40: ordinal not in range(128)

Traceback (most recent call last):
  File "/storage/parth/src/bzr.dev/trunk/bzrlib/commands.py", line 912, in exception_to_return_code
    return the_callable(*args, **kwargs)
  File "/storage/parth/src/bzr.dev/trunk/bzrlib/commands.py", line 1112, in run_bzr
    ret = run(*run_argv)
  File "/storage/parth/src/bzr.dev/trunk/bzrlib/commands.py", line 690, in run_argv_aliases
    return self.run(**all_cmd_args)
  File "/storage/parth/src/bzr.dev/trunk/bzrlib/commands.py", line 705, in run
    return self._operation.run_simple(*args, **kwargs)
  File "/storage/parth/src/bzr.dev/trunk/bzrlib/cleanup.py", line 135, in run_simple
    self.cleanups, self.func, *args, **kwargs)
  File "/storage/parth/src/bzr.dev/trunk/bzrlib/cleanup.py", line 165, in _do_with_cleanups
    result = func(*args, **kwargs)
  File "/storage/parth/src/bzr.dev/trunk/bzrlib/commands.py", line 1127, in ignore_pipe
    result = func(*args, **kwargs)
  File "/storage/parth/src/bzr.dev/trunk/bzrlib/builtins.py", line 4228, in run
    bzrlib.help.help(topic)
  File "/storage/parth/src/bzr.dev/trunk/bzrlib/help.py", line 58, in help
    " ".join(alias)))
UnicodeEncodeError: 'ascii' codec can't encode characters in position 34-40: ordinal not in range(128)

You can report this problem to Bazaar's developers by running
    apport-bug /var/crash/bzr.1000.2010-08-21T08:41.crash
if a bug-reporting window does not automatically appear.
[~]%

description: updated
tags: added: unicode
Changed in bzr:
importance: Undecided → Medium
status: New → Confirmed
Jelmer Vernooij (jelmer)
tags: added: check-for-breezy
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.