diff mercurial/revlog.py @ 16866:91f3ac205816

revlog: ancestors(*revs) becomes ancestors(revs) (API) Accepting a variable number of arguments as the old API did is deeply ugly, particularly as it means the API can't be extended with new arguments. Partly as a result, we have at least three different implementations of the same ancestors algorithm (!?). Most callers were forced to call ancestors(*somelist), adding to both inefficiency and ugliness.
author Bryan O'Sullivan <bryano@fb.com>
date Fri, 01 Jun 2012 12:37:18 -0700
parents cafd8a8fb713
children 1093ad1e8903
line wrap: on
line diff
--- a/mercurial/revlog.py	Tue May 29 23:26:55 2012 +0200
+++ b/mercurial/revlog.py	Fri Jun 01 12:37:18 2012 -0700
@@ -381,7 +381,7 @@
                     visit.append(p)
         return reachable
 
-    def ancestors(self, *revs):
+    def ancestors(self, revs):
         """Generate the ancestors of 'revs' in reverse topological order.
 
         Yield a sequence of revision numbers starting with the parents
@@ -441,7 +441,7 @@
         heads = [self.rev(n) for n in heads]
 
         # we want the ancestors, but inclusive
-        has = set(self.ancestors(*common))
+        has = set(self.ancestors(common))
         has.add(nullrev)
         has.update(common)