Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 04 Apr 2016 17:45:54 -0700] rev 28786
revset: force ascending order for baseset initialized from a set
It is possible to initialize a baseset directly from a set object. However, in
this case the iteration order was inherited from the set. Set have undefined
iteration order (especially cpython and pypy will have different one) so we
should not rely on it anywhere.
Therefor we declare the baseset "ascending" to enforce a consistent iteration
order. The sorting is done lazily by the baseset class and should have no
performance impact when it does not matter.
This makes test-revset.t pass with pypy.
Pierre-Yves David <pierre-yves.david@fb.com> [Mon, 04 Apr 2016 17:45:15 -0700] rev 28785
revset: stabilize repr of baseset initialized with a set
Cpython and pypy have different way to build and order set, so the result of
list(myset) is different. We work around this by using the sorted version of the
data when displaying a list.
This get pypy closer to pass test-revset.t.
Martijn Pieters <mjpieters@fb.com> [Mon, 04 Apr 2016 17:27:37 +0100] rev 28784
dispatch: factor out command failure handling into a function
Moving the warning generation to a function allows for wrapping and
alternative error handling.
Maciej Fijalkowski <fijall@gmail.com> [Tue, 05 Apr 2016 10:59:46 +0300] rev 28783
pypy: fix overeager pattern matching on mpatchError
Pypy have difference in error reporting.