[PATCH 4 of 4] Make it easier to debug templater issues

Ryan McElroy ryanmce at gmail.com
Mon Jun 23 12:55:19 CDT 2014


# HG changeset patch
# User Ryan McElroy <rmcelroy at fb.com>
# Date 1402621641 25200
#      Thu Jun 12 18:07:21 2014 -0700
# Node ID 711c6978111f49a248a292d9300614bdb3ccd1be
# Parent  d2066ea5ea9943205a0dbef0c3e5cb36b8afd236
Make it easier to debug templater issues

diff -r d2066ea5ea99 -r 711c6978111f mercurial/templater.py
--- a/mercurial/templater.py	Thu Jun 12 18:02:23 2014 -0700
+++ b/mercurial/templater.py	Thu Jun 12 18:07:21 2014 -0700
@@ -111,7 +111,7 @@
 def getsymbol(exp):
     if exp[0] == 'symbol':
         return exp[1]
-    raise error.ParseError(_("expected a symbol"))
+    raise error.ParseError(_("expected a symbol, got '%s'") % exp[0])
 
 def getlist(x):
     if not x:
diff -r d2066ea5ea99 -r 711c6978111f tests/test-command-template.t
--- a/tests/test-command-template.t	Thu Jun 12 18:02:23 2014 -0700
+++ b/tests/test-command-template.t	Thu Jun 12 18:07:21 2014 -0700
@@ -1956,3 +1956,9 @@
   |
   o  line 1
      line 2
+
+Test bad template with better error message
+
+  $ hg log -Gv -R a --template '{desc|user()}'
+  hg: parse error: expected a symbol, got 'func'
+  [255]


More information about the Mercurial-devel mailing list