Mercurial > hg
comparison mercurial/changelog.py @ 26061:be8a4e0800d8
reachableroots: use baseset lazy sorting
smartset sorting is lazy (so faster in some case) and better (informs that the
set is sorted allowing some optimisation). So we rely on it directly.
Some test output are updated because we now have more information (ordering).
author | Pierre-Yves David <pierre-yves.david@fb.com> |
---|---|
date | Thu, 20 Aug 2015 17:23:21 -0700 |
parents | b68c9d232db6 |
children | df41c7be16d6 |
comparison
equal
deleted
inserted
replaced
26060:4ee2af2194d4 | 26061:be8a4e0800d8 |
---|---|
184 # XXX need filtering too | 184 # XXX need filtering too |
185 self.rev(self.node(0)) | 185 self.rev(self.node(0)) |
186 return self._nodecache | 186 return self._nodecache |
187 | 187 |
188 def reachableroots(self, minroot, heads, roots, includepath=False): | 188 def reachableroots(self, minroot, heads, roots, includepath=False): |
189 return revset.baseset(sorted( | 189 rroots = self.index.reachableroots2(minroot, heads, roots, includepath) |
190 self.index.reachableroots2(minroot, heads, roots, includepath))) | 190 rroots = revset.baseset(rroots) |
191 rroots.sort() | |
192 return rroots | |
191 | 193 |
192 def headrevs(self): | 194 def headrevs(self): |
193 if self.filteredrevs: | 195 if self.filteredrevs: |
194 try: | 196 try: |
195 return self.index.headrevsfiltered(self.filteredrevs) | 197 return self.index.headrevsfiltered(self.filteredrevs) |