From: "Ludovic Courtès" <ludo@gnu.org>
To: Xinglu Chen <public@yoctocell.xyz>
Cc: 48232@debbugs.gnu.org
Subject: [bug#48232] [PATCH 0/2] Add mercurial-commitsigs and some changes to Mercurial.
Date: Tue, 11 May 2021 14:29:20 +0200 [thread overview]
Message-ID: <87zgx1zc67.fsf@gnu.org> (raw)
In-Reply-To: <87bl9hh5nw.fsf@yoctocell.xyz> (Xinglu Chen's message of "Tue, 11 May 2021 13:27:15 +0200")
Xinglu Chen <public@yoctocell.xyz> skribis:
> On Tue, May 11 2021, Ludovic Courtès wrote:
>
>> Hi,
>>
>> Xinglu Chen <public@yoctocell.xyz> skribis:
>>
>>> The second patch adds PYTHONPATH to the ‘native-search-paths’ field of
>>> Mercurial, this allows Mercurial to automatically find third-party
>>> extensions (like commitsigs) installed in
>>> /gnu/store/...-profile/lib/python3.8/site-packages/hgext3rd. By
>>> default, it only looks at
>>> /gnu/store/...-mercurial/lib/python3.8/site-packages/hgext3rd.
>>
>> Is /hgext3rd a convention that upstream recommends?
>
> I don’t think they mention it in their docs, but the hgext3rd/ directory
> already contained one file (__init__.py), and I have seen one Mercurial
> extension that put their Python files in a hgext3rd/ directory[1].
OK, sounds good.
>>> However, I am not sure this is the best approach since it messes with
>>> PYTHONPATH, AFAIK there is no such things as a HGEXTENSIONS variable I
>>> could set. Another problem is that I have to hardcode “python3.8”, this
>>> would obviously have to be updated if the default Python version gets
>>> updated. I did try to do something like this:
>>
>> Messing up with PYTHONPATH is indeed not great since it “belongs” to
>> Python.
>>
>> Could we instead patch Mercurial so it honors a specific environment
>> variable, like HG_EXTENSION_PATH?
>
> I am not familiar with the Mercurial codebase, but I guess we could try.
> Or perhaps we could wrap the ‘hg’ binary to set PYTHONPATH so it finds
> the extensions.
I think wrapping is not an option because the wrapper doesn’t know where
the profile is. Let’s see if you can adjust hg to honor a new
environment variable, and if not, we’ll see…
Thanks!
Ludo’.
next prev parent reply other threads:[~2021-05-11 12:32 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <cover.1620159508.git.public@yoctocell.xyz>
2021-05-04 20:58 ` [bug#48232] [PATCH 0/2] Add mercurial-commitsigs and some changes to Mercurial Xinglu Chen
2021-05-11 10:26 ` Ludovic Courtès
2021-05-11 11:27 ` Xinglu Chen
2021-05-11 12:29 ` Ludovic Courtès [this message]
2021-05-11 13:17 ` Xinglu Chen
2021-05-12 9:21 ` Xinglu Chen
2021-05-12 20:56 ` Ludovic Courtès
2021-05-14 11:52 ` Xinglu Chen
2021-05-15 9:17 ` [bug#48232] [PATCH v2 0/2] Add hg-commitsigs " Xinglu Chen
2021-05-15 9:17 ` [bug#48232] [PATCH v2 1/2] gnu: Add hg-commitsigs Xinglu Chen
2021-05-16 21:14 ` Ludovic Courtès
2021-05-16 21:33 ` Xinglu Chen
2021-05-15 9:17 ` [bug#48232] [PATCH v2 2/2] gnu: mercurial: Patch to make it read HGEXTENSIONPATH Xinglu Chen
2021-05-16 21:16 ` Ludovic Courtès
2021-05-17 20:07 ` bug#48232: [PATCH v2 0/2] Add hg-commitsigs and some changes to Mercurial Xinglu Chen
2021-05-04 21:00 ` [bug#48232] [PATCH 1/2] gnu: Add mercurial-commitsigs Xinglu Chen
2021-05-04 21:00 ` [bug#48232] [PATCH 2/2] gnu: mercurial: Add PYTHONPATH to Xinglu Chen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87zgx1zc67.fsf@gnu.org \
--to=ludo@gnu.org \
--cc=48232@debbugs.gnu.org \
--cc=public@yoctocell.xyz \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).