# HG changeset patch # User Ryan McElroy # Date 1402621641 25200 # Node ID 028a481051919e3c985261ac62606704435f9c6a # Parent 4a445dc5abff7f0e971222bea1bf04ce02bead5e templater: add symbol to error This patch makes it easier to debug writing templater functions by telling the user exactly what was sent to the templater. diff -r 4a445dc5abff -r 028a48105191 mercurial/templater.py --- a/mercurial/templater.py Thu Jun 12 17:53:37 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 4a445dc5abff -r 028a48105191 tests/test-command-template.t --- a/tests/test-command-template.t Thu Jun 12 17:53:37 2014 -0700 +++ b/tests/test-command-template.t Thu Jun 12 18:07:21 2014 -0700 @@ -1911,3 +1911,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]