Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 20 Nov 2020 10:49:32 +0100] rev 45976
copies: fast path no-op merge
If the two sides of the merge are the same (they come an unaltered common
ancestors) we don't need any merging.
Differential Revision: https://phab.mercurial-scm.org/D9415
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 05 Oct 2020 01:49:04 +0200] rev 45975
copies-rust: encapsulate internal sets on `changes`
The goal is to eventually stop creating the underlying set. So we need to
encapsulate the call first.
Differential Revision: https://phab.mercurial-scm.org/D9306
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 30 Oct 2020 19:06:12 +0100] rev 45974
copies-rust: pre-indent some code to clarify the next patch
The next patch will need this new indentation, having it done explicitly
beforehand makes that next patch clearer.
Differential Revision: https://phab.mercurial-scm.org/D9305
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 05 Oct 2020 01:31:32 +0200] rev 45973
copies-rust: combine the iteration over remove and copies into one
In the underlying data, the copies information and the removal information are
interleaved. And in the consumer code, the consumption could be interleaved too.
So, we make the processing closer to the underlying data by fusing the two
iterators into one. Later, we will directly consume the underlying data and that
logic to combine the two iterators will be unnecessary.
Differential Revision: https://phab.mercurial-scm.org/D9304