diff mercurial/scmutil.py @ 20364:a6cf48b2880d

revset: added baseset class (still empty) to improve revset performance This class is going to be used to cache the set that is created from this list in many cases while evaluating a revset.
author Lucas Moscovicz <lmoscovicz@fb.com>
date Tue, 21 Jan 2014 11:39:26 -0800
parents 88d8e568add1
children d4f804caa0ed
line wrap: on
line diff
--- a/mercurial/scmutil.py	Mon Feb 03 21:34:13 2014 +0100
+++ b/mercurial/scmutil.py	Tue Jan 21 11:39:26 2014 -0800
@@ -524,11 +524,11 @@
 
         # fall through to new-style queries if old-style fails
         m = revset.match(repo.ui, spec)
-        dl = [r for r in m(repo, list(repo)) if r not in seen]
+        dl = [r for r in m(repo, revset.baseset(repo)) if r not in seen]
         l.extend(dl)
         seen.update(dl)
 
-    return l
+    return revset.baseset(l)
 
 def expandpats(pats):
     if not util.expandglobs: