[PATCH 6 of 6] revset: make follow() accept empty startrev

Yuya Nishihara yuya at tcha.org
Thu Dec 7 10:09:24 EST 2017


# HG changeset patch
# User Yuya Nishihara <yuya at tcha.org>
# Date 1474540902 -32400
#      Thu Sep 22 19:41:42 2016 +0900
# Node ID f2a19afb19c146c59956d33d48ab91a7b76896b8
# Parent  394d25004f912b5b104e2f56a042b3d1a3b2ca14
revset: make follow() accept empty startrev

This is the same behavior as ancestors(emptyset).

diff --git a/mercurial/revset.py b/mercurial/revset.py
--- a/mercurial/revset.py
+++ b/mercurial/revset.py
@@ -913,9 +913,6 @@ def _follow(repo, subset, x, name, follo
     revs = None
     if 'startrev' in args:
         revs = getset(repo, fullreposet(repo), args['startrev'])
-        if not revs:
-            raise error.RepoLookupError(
-                _("%s expected at least one starting revision") % name)
     if 'file' in args:
         x = getstring(args['file'], _("%s expected a pattern") % name)
         if revs is None:
diff --git a/tests/test-log.t b/tests/test-log.t
--- a/tests/test-log.t
+++ b/tests/test-log.t
@@ -742,8 +742,6 @@ follow files starting from multiple revi
 follow files starting from empty revision:
 
   $ hg log -T '{rev}: {files}\n' -r "follow('glob:*', startrev=.-.)"
-  abort: follow expected at least one starting revision!
-  [255]
 
 follow starting from revisions:
 


More information about the Mercurial-devel mailing list