revsets: more informative syntax error message
authorRyan McElroy <rmcelroy@fb.com>
Mon, 13 Apr 2015 20:53:05 -0700
changeset 24708 fb47816e1a9c
parent 24707 57f58f96f850
child 24709 69154e0ae384
revsets: more informative syntax error message I came across a case where an internal command was using a revset that I didn't immediately pass in and it was difficult to debug what was going wrong with the revset. This prints out the revset and informs the user that the error is with a rebset so it should be more obvious what and where the error is.
mercurial/revset.py
tests/test-revset.t
--- a/mercurial/revset.py	Mon Apr 13 21:06:21 2015 -0700
+++ b/mercurial/revset.py	Mon Apr 13 20:53:05 2015 -0700
@@ -241,7 +241,8 @@
                 yield ('symbol', sym, s)
             pos -= 1
         else:
-            raise error.ParseError(_("syntax error"), pos)
+            raise error.ParseError(_("syntax error in revset '%s'") %
+                                   program, pos)
         pos += 1
     yield ('end', None, pos)
 
--- a/tests/test-revset.t	Mon Apr 13 21:06:21 2015 -0700
+++ b/tests/test-revset.t	Mon Apr 13 20:53:05 2015 -0700
@@ -1535,7 +1535,7 @@
 
 test error message of bad revset
   $ hg log -r 'foo\\'
-  hg: parse error at 3: syntax error
+  hg: parse error at 3: syntax error in revset 'foo\\'
   [255]
 
   $ cd ..