Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 01 Oct 2021 16:52:44 +0200] rev 48132
dirstatemap: use a common __init__ for dirstatemap
This is the first and simplest things to put in common.
Differential Revision: https://phab.mercurial-scm.org/D11565
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 01 Oct 2021 16:14:29 +0200] rev 48131
dirstatemap: introduce a common base for the dirstatemap class
We have two dirstatemaps class. One for the python version of the dirstate map
and one for the Rust version (that has a python wrapper to deal with some
aspect of it). We end up with duplicated code between them, so we introduce a
common base class to start migrating common code in them.
Differential Revision: https://phab.mercurial-scm.org/D11564
Martin von Zweigbergk <martinvonz@google.com> [Tue, 28 Sep 2021 15:11:22 -0700] rev 48130
errors: raise InputError from revsingle() iff revset provided by the user
Same reasoning as for `revrange()` in an earlier patch.
Differential Revision: https://phab.mercurial-scm.org/D11562
Martin von Zweigbergk <martinvonz@google.com> [Tue, 28 Sep 2021 13:59:01 -0700] rev 48129
errors: raise InputError from revpair() iff revset provided by the user
Same reasoning as for `revrange()` in an earlier patch.
Differential Revision: https://phab.mercurial-scm.org/D11561
Martin von Zweigbergk <martinvonz@google.com> [Tue, 28 Sep 2021 08:47:11 -0700] rev 48128
errors: raise InputError on bad revset to revrange() iff provided by the user
Most callers of `scmutil.revrange()` pass in a revset provided by the
user. If there are problems resolving that, it should result in an
`InputError` and exit code 10 (when using detailed exit
codes). However, there are also some callers that pass in revsets not
provided by the user. `InputError` is not appropriate in those
cases. This patch therefore introduces a wrapper around
`scmutil.revrange()` that simply converts the exception type. I put it
in `logcmdutil.py` since that seems to be the lowest-level module in
the (poorly defined) UI layer.
Differential Revision: https://phab.mercurial-scm.org/D11560
Martin von Zweigbergk <martinvonz@google.com> [Tue, 28 Sep 2021 09:08:43 -0700] rev 48127
phase: avoid a no-op resolution of revset from revnums
I was surprised that `scmutil.revrange()` supports integers in the
list of revsets. I think it's clearer to not pass a list that's known
to contain only integers into the function.
Differential Revision: https://phab.mercurial-scm.org/D11559
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 01 Oct 2021 15:19:37 +0200] rev 48126
dirstate: push back the future a bit in the test
The future was set to 2021-01-01, we push it by 10 years.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 30 Sep 2021 18:07:31 +0200] rev 48125
dirstate-item: point out that `merged` is set only with p1_tracked
This is currently True, and we will use this fact to simplify the API in the
next commit. However, we add this assertion first to validate that this is
True in the whole test-suite.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 29 Sep 2021 01:23:10 +0200] rev 48124
dirstate-item: update the attribute documentation
It was very outdated. We are about to change these attribute so we should has
well have them documented so that the change get easier to grasp.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 01 Oct 2021 03:50:37 +0200] rev 48123
dirstate-item: use `any_tracked` more
This simplify more code.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 01 Oct 2021 03:49:03 +0200] rev 48122
dirstate-item: drop an outdated comments
This comment is no longer relevant since we moved away from the `state` internal
representation, multiple weeks ago.
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 01 Oct 2021 00:00:29 +0200] rev 48121
dirstate: remove a update_file's special case for `merged` file
This case was fishy and can be dealt with by passing more accurate data a higher
level.
This clarify the API and prepare for a larger rework of the data we feeds to
the dirstate.
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 30 Sep 2021 18:00:39 +0200] rev 48120
dirstate: remove a update_file's special case for tracked file with p2 data
This case was fishy and can be dealt with by passing more accurate data a higher
level.
This clarify the API and prepare for a larger rework of the data we feeds to
the dirstate.
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 29 Sep 2021 02:34:32 +0200] rev 48119
dirstate: deprecate `__getitem__` access
If we want to drop `state` usage, we need to deprecate this.
Differential Revision: https://phab.mercurial-scm.org/D11544
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 29 Sep 2021 18:39:02 +0200] rev 48118
dirstate-item: use item's property instead of `state` in largefile
Differential Revision: https://phab.mercurial-scm.org/D11543
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 29 Sep 2021 18:37:54 +0200] rev 48117
dirstate-item: use `added` instead of `state` when moving dirstate
Differential Revision: https://phab.mercurial-scm.org/D11542
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 29 Sep 2021 18:37:20 +0200] rev 48116
dirstate-item: use item's property instead of `state` in revert
Differential Revision: https://phab.mercurial-scm.org/D11541
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 29 Sep 2021 18:36:12 +0200] rev 48115
dirstate-item: use item's property when computing a copies
Differential Revision: https://phab.mercurial-scm.org/D11540
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 29 Sep 2021 18:32:21 +0200] rev 48114
dirstate-item: use item's property instead of `state` in copy
Differential Revision: https://phab.mercurial-scm.org/D11539
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 29 Sep 2021 17:52:39 +0200] rev 48113
dirstate-item: use `added` in debugrebuilddirstate
(instead of `state`)
Differential Revision: https://phab.mercurial-scm.org/D11538
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 29 Sep 2021 17:42:57 +0200] rev 48112
dirstate-item: use `maybe_clean` instead of `state` in record
Differential Revision: https://phab.mercurial-scm.org/D11537
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 29 Sep 2021 15:40:13 +0200] rev 48111
dirstate-item: use `any_tracked` instead of `state` to apply patches
Differential Revision: https://phab.mercurial-scm.org/D11536
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 29 Sep 2021 15:39:33 +0200] rev 48110
dirstate-item: use item's property instead of `state` in addremove
Differential Revision: https://phab.mercurial-scm.org/D11535
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 29 Sep 2021 15:26:30 +0200] rev 48109
dirstate-item: use `tracked` instead of `state` during copy detection
Differential Revision: https://phab.mercurial-scm.org/D11534
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 29 Sep 2021 15:23:57 +0200] rev 48108
dirstate-item: use `maybe_clean` instead of `state` in `strip`
Differential Revision: https://phab.mercurial-scm.org/D11533
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 29 Sep 2021 15:07:21 +0200] rev 48107
dirstate-item: use `tracked` instead of `state` in context.matches
Differential Revision: https://phab.mercurial-scm.org/D11532
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 30 Sep 2021 15:28:42 +0200] rev 48106
dirstate-item: use `tracked` instead of the `state` in context's iter
Differential Revision: https://phab.mercurial-scm.org/D11531
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 29 Sep 2021 14:57:54 +0200] rev 48105
dirstate-item: use `tracked` instead of the `state` in context
Differential Revision: https://phab.mercurial-scm.org/D11530
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 29 Sep 2021 14:56:23 +0200] rev 48104
dirstate-item: use item's property to deal with hgsubstate in mq
This is clearer than processing the `state`.
Differential Revision: https://phab.mercurial-scm.org/D11529
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 29 Sep 2021 14:56:05 +0200] rev 48103
dirstate-item: use `added` instead of the `state` in the `mq` extension
Differential Revision: https://phab.mercurial-scm.org/D11528
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 29 Sep 2021 14:55:29 +0200] rev 48102
dirstate-item: use maybe_clean instead of `state` in the eol extension
Differential Revision: https://phab.mercurial-scm.org/D11527
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 30 Sep 2021 12:00:15 +0200] rev 48101
dirstate: move verification code within the dirstate itself
This move implementation details further down the stack and make it the
verification code easier to discover.
Differential Revision: https://phab.mercurial-scm.org/D11526