Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 16 Dec 2020 10:59:00 +0100] rev 46619
copies-rust: refactor the "deletion" case
We rearrange the code to single out the case where information need to be
overwritten on both side of the merge. This open the way to better dealing with
this case.
Differential Revision: https://phab.mercurial-scm.org/D9651
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 16 Dec 2020 10:46:08 +0100] rev 46618
copies-rust: process copy information of both parent at the same time
This avoid a double iteration and this open the way to a better handing of
deletion. That better handling of deletion is the core reason we are doing this
refactoring.
Differential Revision: https://phab.mercurial-scm.org/D9650
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 21 Dec 2020 10:24:16 +0100] rev 46617
copies-rust: yield both p1 and p2 copies in `ChangedFiles.actions()`
Instead of filtering the relevant parent inside de ChangedFiles method, we now
yield all copies information and let the caller do the filtering. Soon, the
filtering will be replaced by dispatching.
Differential Revision: https://phab.mercurial-scm.org/D9649
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 16 Dec 2020 10:01:34 +0100] rev 46616
copies-rust: extract the processing of a single copy information
This will make it easy to process copy from both p1 and p2 in the same
`add_from_changes` call.
Differential Revision: https://phab.mercurial-scm.org/D9648
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 16 Dec 2020 09:42:04 +0100] rev 46615
copies-rust: use matching to select the final copies information
This is a bit more idiomatic and this prepare a future refactoring where
InternalCopies from both parent would be updated at the same time.
Differential Revision: https://phab.mercurial-scm.org/D9647
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 16 Dec 2020 09:30:25 +0100] rev 46614
copies-rust: get the parents' copies earlier
This remove some conditional nesting and prepare for future work were we will
unify the handling of copies from p1 and p2.
Differential Revision: https://phab.mercurial-scm.org/D9646
Pierre-Yves David <pierre-yves.david@octobus.net> [Tue, 15 Dec 2020 18:22:57 +0100] rev 46613
copies-rust: remove the ancestor Oracle logic
We are not doing any `is_ancestor` call anymore. So we can drop that logic and
associated arguments.
Differential Revision: https://phab.mercurial-scm.org/D9645