diff options
Diffstat (limited to 'gnu/packages/patches/mercurial-hg-extension-path.patch')
-rw-r--r-- | gnu/packages/patches/mercurial-hg-extension-path.patch | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/gnu/packages/patches/mercurial-hg-extension-path.patch b/gnu/packages/patches/mercurial-hg-extension-path.patch new file mode 100644 index 0000000000..d1073dd01c --- /dev/null +++ b/gnu/packages/patches/mercurial-hg-extension-path.patch @@ -0,0 +1,29 @@ +This is needed to make Mercurial read the HGEXTENSIONPATH to detect +third-party extensions. It is called HGEXTENSIONPATH and not +HG_EXTENSION_PATH to keep it consistent with other environment variables for +Mercurial, e.g. HGENCODINGAMBIGUOUS, HGEDITOR ... Hopefully I or someone else +will get this into Mercurial proper. + +diff --git a/mercurial/extensions.py b/mercurial/extensions.py +--- a/mercurial/extensions.py ++++ b/mercurial/extensions.py +@@ -13,6 +13,7 @@ + import imp + import inspect + import os ++import sys + + from .i18n import ( + _, +@@ -108,6 +109,11 @@ + + def _importh(name): + """import and return the <name> module""" ++ # Read HGEXTENSIONSPATH environment variable when import extensions. ++ extension_path = os.getenv("HGEXTENSIONSPATH") ++ if extension_path is not None: ++ for path in extension_path: ++ sys.path.append(path) + mod = __import__(pycompat.sysstr(name)) + components = name.split(b'.') + for comp in components[1:]: |