Issue with kallithea 0.6.2 in combination with mercurial hook

Mads Kiilerich mads at kiilerich.com
Thu Dec 3 23:43:26 UTC 2020


If you can get the same error when launching your scripts manually 
without Kallithea, then the problem must be in your local system - not 
directly related to Kallithea.

Again, I can only advise against installing in /usr/local - it is very 
easy to get inconsistent installations, and very hard to clean up.

But also, I guess Kallithea should do something to ensure that we 
actually invoke the hg installed in a Kallithea virtualenv. You can do 
the same in your scripts.

/Mads


On 12/1/20 11:24 AM, Benny Bürger wrote:
>
> Sorry, just noticed it was the wrong hook.
>
> Actually the changegroup.update fails (hg update >&2)
>
> I guess the >&2 is not working.
>
> In my own script I did a hg clone and I had to add a </dev/null in 
> order to work, otherwise I would get the same error.
>
> Unfortunately I cannot change the update command because it is read-only.
>
> I already have mercurial 5.4 installed, although did a test with 5.6 
> but there was another error.
>
> *Von:*Mads Kiilerich <mads at kiilerich.com>
> *Gesendet:* Montag, 30. November 2020 17:59
> *An:* Benny Bürger <buerger at simba.de>; kallithea-general at sfconservancy.org
> *Betreff:* Re: Issue with kallithea 0.6.2 in combination with 
> mercurial hook
>
> On 11/30/20 5:30 PM, Benny Bürger wrote:
>
>     Hi,
>
>     I use the pretxnchangegroup.check with a bash script.
>
>     The script executes but the error code is ignored because of the
>     following error:
>
>     Gegenseite: Traceback (most recent call last):
>
>     Gegenseite:   File "/usr/local/bin/hg", line 43, in <module>
>
>     Gegenseite:     dispatch.run()
>
>     Gegenseite:   File "/usr/lib/python3.8/importlib/util.py", line
>     245, in __getattribute__
>
>     Gegenseite: self.__spec__.loader.exec_module(self)
>
>     Gegenseite:   File "<frozen importlib._bootstrap_external>", line
>     783, in exec_module
>
>     Gegenseite:   File "<frozen importlib._bootstrap>", line 219, in
>     _call_with_frames_removed
>
>     Gegenseite:   File
>     "/usr/local/lib/python3.8/dist-packages/mercurial/dispatch.py",
>     line 22, in <module>
>
>     Gegenseite:     from .i18n import _
>
>     Gegenseite:   File "/usr/lib/python3.8/importlib/util.py", line
>     245, in __getattribute__
>
>     Gegenseite: self.__spec__.loader.exec_module(self)
>
>     Gegenseite:   File
>     "/usr/local/lib/python3.8/dist-packages/mercurial/i18n.py", line
>     15, in <module>
>
>     Gegenseite:     from .pycompat import getattr
>
>     Gegenseite: ImportError: cannot import name 'getattr' from
>     'mercurial.pycompat'
>     (/usr/local/lib/python3.8/dist-packages/mercurial/pycompat.py)
>
>     Environment: Linux repository 5.4.0-48-generic #52-Ubuntu SMP Thu
>     Sep 10 10:58:49 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
>
>     I used pip to install Kallithea and all dependencies…
>
> Is the hook working when launched manually with python3?
>
> It looks like a problem in the installation of /usr/local/bin/hg . 
> /usr/local/lib/python3.8/dist-packages/mercurial/pycompat.py must be a 
> version less than 5.2 if it doesn't have getattr . That one year old 
> version didn't have good support for Python 3. I suggest using latest 
> Mercurial version. Python3 support is still improving.
>
> How was Kallithea installed? Using virtualenv?
>
> How was /usr/local/bin/hg installed?
>
> Instead of installing in /usr/local , I would suggest using the hg in 
> the Kallithea virtualenv.
>
> /Mads
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sfconservancy.org/pipermail/kallithea-general/attachments/20201204/09d62716/attachment.html>


More information about the kallithea-general mailing list