TortoiseHg - Баг UnicodeEncodeError в Workbench под Ubuntu

2012-10-01
Mercurial, Hg, TortoiseHg

Столкнулся с багом в TortoiseHg в Workbench под Ubuntu. С определенного момента, при запуске TortoiseHg Workbench начало выводиться окно с ошибкой:

{{{
#!python
** Mercurial version (2.3.1). TortoiseHg version (2.5+26-87dfb02f6ddd)
** Command: -R /home/username/www/myproject
** CWD: /home/username/www/myproject
** Encoding: UTF-8
** Extensions loaded:
** Python version: 2.7.3 (default, Apr 20 2012, 22:39:59) [GCC 4.6.3]
** Qt-4.8.1 PyQt-4.9.1
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/tortoisehg/hgqt/run.py", line 554, in __call__
dlg = dlgfunc(ui, *args, **opts)
File "/usr/lib/python2.7/dist-packages/tortoisehg/hgqt/workbench.py", line 1280, in run
w = Workbench(createserver=mustcreateserver)
File "/usr/lib/python2.7/dist-packages/tortoisehg/hgqt/workbench.py", line 53, in __init__
self.reporegistry = rr = RepoRegistryView(self)
File "/usr/lib/python2.7/dist-packages/tortoisehg/hgqt/reporegistry.py", line 252, in __init__
showNetworkSubrepos=self.showNetworkSubrepos))
File "/usr/lib/python2.7/dist-packages/tortoisehg/hgqt/repotreemodel.py", line 94, in __init__
root = readXml(f, reporegistryXmlElementName)
File "/usr/lib/python2.7/dist-packages/tortoisehg/hgqt/repotreemodel.py", line 50, in readXml
print str(xr.errorString())
UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-10: ordinal not in range(128)

}}}

Что бы исправить, открываем /home/username/.config/TortoiseHg/thg-reporegistry.xml в текстовом редакторе. Этот файл должен быть пустым, если не пустой, сохраняем копию данного файла, что бы можно было восстановить. Далее добавляем в него следующий XML:

<?xml version="1.0" encoding="UTF-8"?>
<reporegistry>
<treeitem>
<allgroup name="default">
</allgroup>
</treeitem>
</reporegistry>

После этого, TortoiseHg Workbench должен успешно запуститься.