diff --git a/mercurial/revset.py b/mercurial/revset.py --- a/mercurial/revset.py +++ b/mercurial/revset.py @@ -2154,7 +2154,8 @@ class revsetalias(object): # Check for placeholder injection _checkaliasarg(self.replacement, self.args) except error.ParseError, inst: - self.error = parseerrordetail(inst) + self.error = _('failed to parse the definition of revset alias' + ' "%s": %s') % (self.name, parseerrordetail(inst)) def _getalias(aliases, tree): """If tree looks like an unexpanded alias, return it. Return None @@ -2197,8 +2198,7 @@ def _expandaliases(aliases, tree, expand alias = _getalias(aliases, tree) if alias is not None: if alias.error: - raise util.Abort(_('failed to parse revset alias "%s": %s') % - (alias.name, alias.error)) + raise util.Abort(alias.error) if alias in expanding: raise error.ParseError(_('infinite expansion of revset alias "%s" ' 'detected') % alias.name) @@ -2231,9 +2231,7 @@ def findaliases(ui, tree, showwarning=No # warn about problematic (but not referred) aliases for name, alias in sorted(aliases.iteritems()): if alias.error and not alias.warned: - msg = _('failed to parse revset alias "%s": %s' - ) % (name, alias.error) - showwarning(_('warning: %s\n') % (msg)) + showwarning(_('warning: %s\n') % (alias.error)) alias.warned = True return tree diff --git a/tests/test-revset.t b/tests/test-revset.t --- a/tests/test-revset.t +++ b/tests/test-revset.t @@ -985,12 +985,12 @@ far away. (range ('symbol', '2') ('symbol', '5'))) - abort: failed to parse revset alias "injectparamasstring2": not a function: _aliasarg + abort: failed to parse the definition of revset alias "injectparamasstring2": not a function: _aliasarg [255] $ hg debugrevspec --debug --config revsetalias.anotherbadone='branch(' "tip" ('symbol', 'tip') - warning: failed to parse revset alias "anotherbadone": at 7: not a prefix: end - warning: failed to parse revset alias "injectparamasstring2": not a function: _aliasarg + warning: failed to parse the definition of revset alias "anotherbadone": at 7: not a prefix: end + warning: failed to parse the definition of revset alias "injectparamasstring2": not a function: _aliasarg 9 >>> data = file('.hg/hgrc', 'rb').read() >>> file('.hg/hgrc', 'wb').write(data.replace('_aliasarg', ''))