Mercurial > public > mercurial-scm > hg-stable
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)