[Python-apps-team] Bug#662207: UnicodeDecodeError when refusing to update

Andrey Rahmatullin wrar at wrar.name
Sun Mar 4 17:35:55 UTC 2012

Package: mercurial
Version: 2.1.1-1
Severity: normal

Recent mercurial crashes in ru_RU.UTF-8 locale instead of displaying certain
messages, one of them is "not updating: crosses branches (merge branches or
update --check to force update)", here is the testcase:

mkdir dir1
cd dir1
hg init
echo '1\n2'>file1
hg add file1
hg ci file1 -m "foo"
cd ..
hg clone dir1 dir2
cd dir1
echo '\n3'>>file1
hg ci -m "foo"
cd ../dir2
echo '\n4'>>file1
hg ci -m "foo"
hg pull -u

затягиваем из /home/wrar/tmp/test2/dir1
ищем изменения
добавляем наборы изменений
добавляем манифесты
добавляем изменения в файлы
добавлено 1 наборов изменений с 1
изменениями в 1 файлах (+1 голов)
** неизвестное исключение, пожалуйте,
сообщите об этом по адресу
**  http://mercurial.selenic.com/wiki/BugTracker
** Python 2.7.2+ (default, Jan 20 2012, 17:51:10) [GCC 4.6.2]
** Распределенная система контроля версий
Mercurial (версия 2.1.1)
** Загруженные расширения:
Traceback (most recent call last):
  File "/usr/bin/hg", line 38, in <module>
  File "/usr/lib/python2.7/dist-packages/mercurial/dispatch.py", line 27, in
    sys.exit((dispatch(request(sys.argv[1:])) or 0) & 255)
  File "/usr/lib/python2.7/dist-packages/mercurial/dispatch.py", line 64, in
    return _runcatch(req)
  File "/usr/lib/python2.7/dist-packages/mercurial/dispatch.py", line 87, in
    return _dispatch(req)
  File "/usr/lib/python2.7/dist-packages/mercurial/dispatch.py", line 683, in
    cmdpats, cmdoptions)
  File "/usr/lib/python2.7/dist-packages/mercurial/dispatch.py", line 465, in
    ret = _runcommand(ui, options, cmd, d)
  File "/usr/lib/python2.7/dist-packages/mercurial/dispatch.py", line 737, in
    return checkargs()
  File "/usr/lib/python2.7/dist-packages/mercurial/dispatch.py", line 691, in
    return cmdfunc()
  File "/usr/lib/python2.7/dist-packages/mercurial/dispatch.py", line 680, in
    d = lambda: util.checksignature(func)(ui, *args, **cmdoptions)
  File "/usr/lib/python2.7/dist-packages/mercurial/util.py", line 456, in check
    return func(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/mercurial/commands.py", line 4346, in
    ret = postincoming(ui, repo, modheads, opts.get('update'), checkout)
  File "/usr/lib/python2.7/dist-packages/mercurial/commands.py", line 4271, in
    ui.warn(_("not updating: %s\n" % str(inst)))
  File "/usr/lib/python2.7/dist-packages/mercurial/i18n.py", line 42, in
    u = u'\n\n'.join([p and t.ugettext(p) or '' for p in paragraphs])
  File "/usr/lib/python2.7/gettext.py", line 404, in ugettext
    return unicode(message)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xd0 in position 14:
ordinal not in range(128)

It works in LC_ALL=C. It also fails when hg pull -u should create a file when
it's already exists and untracked.

-- System Information:
Debian Release: wheezy/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 3.3.0-rc3-wrar+ (SMP w/4 CPU cores; PREEMPT)
Locale: LANG=ru_RU.UTF-8, LC_CTYPE=ru_RU.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages mercurial depends on:
ii  libc6             2.13-27
ii  mercurial-common  2.1.1-1
ii  python            2.7.2-10
ii  python2.6         2.6.7-4
ii  python2.7         2.7.2-13
ii  ucf               3.0025+nmu2

Versions of packages mercurial recommends:
ii  openssh-client  1:5.9p1-3

Versions of packages mercurial suggests:
ii  kompare        4:4.7.4-1
ii  qct            <none>
ii  tk8.5 [wish]   8.5.11-1
ii  vim-gtk [vim]  2:7.3.429-2

-- no debconf information

More information about the Python-apps-team mailing list