changeset 22712:093df3b77f27

revert: bring back usage of `subset & ps` in `parents` Changeset 95af98616aa7 switched the order of the operand of the "&" computation to work around an issue from repo-wide spanset. The need for a workaround has been alleviated by the introduction of `fullreposet`. So we restore it to normal. The benchmark shows no significant changes as expected. We also revert the bogus test change introduced by 95af98616aa7. The order is actually important.
author Pierre-Yves David <pierre-yves.david@fb.com>
date Wed, 17 Sep 2014 04:55:55 -0700
parents 60ac52a21512
children f5f51872883d
files mercurial/revset.py tests/test-revset.t
diffstat 2 files changed, 2 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/revset.py	Sun Aug 24 17:40:27 2014 -0400
+++ b/mercurial/revset.py	Wed Sep 17 04:55:55 2014 -0700
@@ -1242,7 +1242,7 @@
         for r in getset(repo, spanset(repo), x):
             ps.update(cl.parentrevs(r))
     ps -= set([node.nullrev])
-    return baseset(ps) & subset
+    return subset & ps
 
 def parentspec(repo, subset, x, n):
     """``set^0``
--- a/tests/test-revset.t	Sun Aug 24 17:40:27 2014 -0400
+++ b/tests/test-revset.t	Wed Sep 17 04:55:55 2014 -0700
@@ -567,10 +567,10 @@
 test intersecting something with an addset
 
   $ log 'parents(outgoing() or removes(a))'
-  8
   1
   4
   5
+  8
 
 check that conversion to only works
   $ try --optimize '::3 - ::1'