Acontece que é devido à extensão agora incompatível terse-status .
Estou trabalhando em um sistema multiusuário com o mercurial. Eu não tenho usado o sistema ultimamente, e hoje eu queria começar de novo, mas mercurial se recusa a trabalhar:
$ hg help
*** failed to import extension transplant from
mercurial_keyring =: [Errno 2] No such file or directory: '\nmercurial_keyring ='
** Unknown exception encountered with possibly-broken third-party extension hgflow
** which supports versions unknown of Mercurial.
** Please disable hgflow and try your action again.
** If that fixes the bug please report it to the extension author.
** Python 2.7.10 (default, May 26 2015, 04:16:29) [GCC 5.1.0]
** Mercurial Distributed SCM (version 3.4)
** Extensions loaded: color, largefiles, graphlog, hgk, strip, mq, rebase, record, shelve, hgflow, terse-status
Traceback (most recent call last):
File "/usr/bin/hg", line 43, in <module>
mercurial.dispatch.run()
File "/usr/lib/python2.7/site-packages/mercurial/dispatch.py", line 29, in run
sys.exit((dispatch(request(sys.argv[1:])) or 0) & 255)
File "/usr/lib/python2.7/site-packages/mercurial/dispatch.py", line 91, in dispatch
ret = _runcatch(req)
File "/usr/lib/python2.7/site-packages/mercurial/dispatch.py", line 160, in _runcatch
return _dispatch(req)
File "/usr/lib/python2.7/site-packages/mercurial/dispatch.py", line 746, in _dispatch
extensions.loadall(lui)
File "/usr/lib/python2.7/site-packages/mercurial/extensions.py", line 123, in loadall
extsetup(ui)
File "/home/UNISIEGEN/gk784/.hg/terse-status/terse-status.py", line 40, in extsetup
'_poststatus', _poststatus)
File "/usr/lib/python2.7/site-packages/mercurial/extensions.py", line 255, in wrapfunction
origfn = getattr(container, funcname)
AttributeError: type object 'workingctx' has no attribute '_poststatus'
O Mercurial funciona para todos os outros usuários. Minha primeira observação foi sobre o uso do Python 2.7 em vez do padrão Python 3.4:
$ python --version
Python 3.4.3
Também remover o módulo do hgrc global não ajuda. Então o erro ocorre para outro módulo:
$ hg parent
** Unknown exception encountered with possibly-broken third-party extension hgflow
Mesma mensagem de erro, mesmo callstack.
Nada no meu env parece suspeito, não há módulos carregados, então estou um pouco confuso agora.
Acontece que é devido à extensão agora incompatível terse-status .