Raphaël Gomès <rgomes@octobus.net> [Thu, 10 Jun 2021 17:58:03 +0200] rev 47614
windows: add windows behavior on broken pager
Apparently, Windows has "better" behavior than Unix in this case. This is an
edge case that led me down a rabbit hole, only to find a bug in the Python
documentation... I am not planning on trying to reproduce the same behavior
on Unix systems since it's not really useful, but other people are welcome to!
Differential Revision: https://phab.mercurial-scm.org/D11000
Pulkit Goyal <7895pulkit@gmail.com> [Wed, 07 Jul 2021 23:04:19 +0530] rev 47613
mergestate: use dirstate.update_file API in recordupdates()
Let's use the new single function to replace multiple different functions. This
is part of dirstate API refactor to make it more clearer and generic so that it
can be replicated in Rust.
Differential Revision: https://phab.mercurial-scm.org/D11077
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 09 Jul 2021 15:27:38 +0530] rev 47612
dirstate: add dedicated function for updating data of a file
`dirstate.normal()` is too generic to be a user facing function for that. This
is a part of effort to refactor dirstate APIs and make them clearer.
Differential Revision: https://phab.mercurial-scm.org/D11076
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 07 Jul 2021 19:36:14 +0200] rev 47611
dirstate: add a `update_file` function
This function is the other side of the `set_tracked`/`set_untracked` API revamp.
It is to be used when the dirstate is changing its parents during and update or
a merge. It states all the information we know about the file so that the
dirstate can update its internal data.
Unlike the `set_tracked`/`set_untracked` it has not regards for the information
previously tracked in the tristate.
Differential Revision: https://phab.mercurial-scm.org/D11075
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 08 Jul 2021 04:29:36 +0200] rev 47610
resolve: use the `parentchange` context manager to apply merge action
In an ideal world, we would not have to do that. However, we are miles away from
being ready to not have to do it.
So we add this context manager alongside a long comment. This will help use to
get to the point were have two distinct API with strict rules about when to call
them.
Differential Revision: https://phab.mercurial-scm.org/D11074
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 08 Jul 2021 22:08:32 +0200] rev 47609
sparse: adjust the temporary includes within a `parentchange` context
This is related to dirstate adjustment.
Differential Revision: https://phab.mercurial-scm.org/D11033
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 08 Jul 2021 21:26:21 +0200] rev 47608
amend: adjust the dirstate within a `parentchange` context
The adjustment in the direct consequence of the amend and the associated parents
change.
Differential Revision: https://phab.mercurial-scm.org/D11032
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 08 Jul 2021 21:20:37 +0200] rev 47607
dirstate: use the right internal API in a test script
The goal of the script it to perform arbitrary internal operation to create
incorrect state, so lets make it clear.
Differential Revision: https://phab.mercurial-scm.org/D11031
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 08 Jul 2021 19:06:32 +0200] rev 47606
sparse: clear rules in the context of a `parentchanges` context
This is the same logic as the change we did for narrow.
Differential Revision: https://phab.mercurial-scm.org/D11029
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 08 Jul 2021 18:59:55 +0200] rev 47605
sparse: make sure we adjust the dirstate at the same time as the parent
This is more correct and help our API split.
Differential Revision: https://phab.mercurial-scm.org/D11028