quark added inline comments.

INLINE COMMENTS

> yuja wrote in revset.py:129
> `subset & xs` should be correct since `dagrange` doesn't have
> its own order unlike `rangeset`.
> 
> Most revset functions "follow" the default order even if they
> are used where they may "define" order.

For `subset & xs` to be correct, `subset` needs to be in ascending order. That 
is true currently. But it is not very obvious why `subset` is in ascending 
order here (or, the question is, who is responsible to sort it?).

I think it's simpler to not depend on it and make every revset respect 
`defineorder` explicitly. That also allows us to remove some unnecessary 
sorting.

> yuja wrote in revset.py:893
> IIUC, `followorder` is correct because the ordering flags of
> `x and y` are flipped as if they were `y and x`.

In this case, `y` is expected to completely redefine the order. So `y`'s 
`subset`'s order does not matter.

> yuja wrote in revset.py:1830
> Can you split this to new patch, and preferably include a micro benchmark?
> 
> Revset had historically lots of subtle ordering bugs, and I believe
> there are still some. Fewer "if"s should be better in general.

I can do that.

REPOSITORY
  rHG Mercurial

REVISION DETAIL
  https://phab.mercurial-scm.org/D451

To: quark, #hg-reviewers
Cc: yuja, mercurial-devel
_______________________________________________
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel

Reply via email to