[Request] [+ ] D8907: templater: teach template loader to use open_template() function
martinvonz (Martin von Zweigbergk)
phabricator at mercurial-scm.org
Thu Aug 6 18:29:46 UTC 2020
martinvonz created this revision.
Herald added a reviewer: hg-reviewers.
Herald added a subscriber: mercurial-patches.
REVISION SUMMARY
The template loader can apparently load templates from relative paths,
so I needed to add that support to `open_template()`.
This takes the number of failing tests with PyOxidizer from 54 to 34.
REPOSITORY
rHG Mercurial
BRANCH
default
REVISION DETAIL
https://phab.mercurial-scm.org/D8907
AFFECTED FILES
mercurial/templater.py
CHANGE DETAILS
diff --git a/mercurial/templater.py b/mercurial/templater.py
--- a/mercurial/templater.py
+++ b/mercurial/templater.py
@@ -913,7 +913,8 @@
"""Get parsed tree for the given template name. Use a local cache."""
if t not in self.cache:
try:
- self.cache[t] = util.readfile(self._map[t])
+ mapfile, fp = open_template(self._map[t])
+ self.cache[t] = fp.read()
except KeyError as inst:
raise templateutil.TemplateNotFound(
_(b'"%s" not in template map') % inst.args[0]
@@ -1092,7 +1093,7 @@
will then be the relative path.
'''
# Does the name point directly to a map file?
- if os.path.isabs(name):
+ if os.path.isfile(name) or os.path.isabs(name):
return name, open(name, mode='rb')
# Does the name point to a template in the provided templatepath, or
To: martinvonz, #hg-reviewers
Cc: mercurial-patches, mercurial-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mercurial-scm.org/pipermail/mercurial-patches/attachments/20200806/c39e03bd/attachment-0001.html>
More information about the Mercurial-patches
mailing list