Matt Harbison <matt_harbison@yahoo.com> [Fri, 06 Dec 2019 20:29:02 -0500] rev 43953
tests: show that fileset patterns don't work with `fix` when not in repo root
Differential Revision: https://phab.mercurial-scm.org/D7569
Georges Racinet <georges.racinet@octobus.net> [Fri, 20 Dec 2019 17:19:25 +0100] rev 43952
tests-pure: fixing test-parseindex2
This is a followup to D7603 (49fa0b31ee1d) which broke
the tests for pure Python implementation. There are two
divergences between pure and C implementations:
- the pure implementation would accept only -1 as slice end,
whereas C accepts both -1 and len(index)
- in pure Python, `headrevs` is provided by revlog.py, not
by the index.
Differential Revision: https://phab.mercurial-scm.org/D7707
Pierre-Yves David <pierre-yves.david@octobus.net> [Fri, 13 Dec 2019 19:59:59 +0100] rev 43951
rust-index: add a function to convert PyObject index for hg-core
Function in hg-core need something implementing the `Graph` trait. Right now,
the `hg-cpython` entry points directly turn the PyObject passed as argument
into a `cindex::Index`. However, if we start having the option to use an Index
in Rust, we need to dispatch between the different possible PyObject we could
receive.
So move the "duplicate" call into a unified function. When time come. It will be
easy to update the logic of all interface when the time come.
Differential Revision: https://phab.mercurial-scm.org/D7653
Pierre-Yves David <pierre-yves.david@octobus.net> [Wed, 11 Dec 2019 18:40:04 +0100] rev 43950
test: extract some generic data and utility from test-rust-ancestor.py
We will reuse this for more tests related to revlog index. In pratice this
series of changesets add an index implementation provided from Rust and we want
to be able to test it.
Differential Revision: https://phab.mercurial-scm.org/D7652
Matt Harbison <matt_harbison@yahoo.com> [Tue, 17 Dec 2019 23:33:35 -0500] rev 43949
patch: fix header.__repr__() to not have `b''` prefixes in file names
Spotted by Denis Laxalde.
Differential Revision: https://phab.mercurial-scm.org/D7695
Martin von Zweigbergk <martinvonz@google.com> [Wed, 18 Dec 2019 11:11:40 -0800] rev 43948
cmdutil: allow native string as input to check_at_most_one_arg()
We seem to always convert **opts args to use bytes as keys early on in
Mercurial core, but I'm not sure we have good reason to do that, and
not all extensions do that. It's therefore helpful to be able to pass
in a native string to check_at_most_one_arg().
Differential Revision: https://phab.mercurial-scm.org/D7699
Martin von Zweigbergk <martinvonz@google.com> [Wed, 18 Dec 2019 10:52:49 -0800] rev 43947
cmdutil: return underscore-separate name from check_at_most_one_arg()
As noticed by Yuya, when I changed the function (during review) to
work with underscore-separated names as input, I forgot to make sure
the returned name was also underscore-separated. We don't have any
cases where it matters yet, but it should still clearly be fixed.
Instead of converting the hyphen-separated value we already have in
`previous`, I'm changing it so we convert to the underscore-separated
values to be hyphen-separated only when we need to display them. This
will also help a coming change where we allow the inputs to native
strings instead only bytes.
Differential Revision: https://phab.mercurial-scm.org/D7698
Martin von Zweigbergk <martinvonz@google.com> [Wed, 18 Dec 2019 10:55:06 -0800] rev 43946
rebase: restore i18n of a hint message
As noticed by Yuya, I lost the _() call in 71fee4564410 (rebase: use
rewriteutil.precheck() instead of reimplementing it, 2019-12-18).
Differential Revision: https://phab.mercurial-scm.org/D7697
Rodrigo Damazio Bovendorp <rdamazio@google.com> [Wed, 18 Dec 2019 23:45:11 -0800] rev 43945
status: make unresolved files always be in the morestatus structured output
We don't know the status of those files, only that they're unresolved, so
we don't output the status for those - any code parsing this will have to be
tolerant to that.
Differential Revision: https://phab.mercurial-scm.org/D7668
Rodrigo Damazio Bovendorp <rdamazio@google.com> [Wed, 18 Dec 2019 23:43:21 -0800] rev 43944
status: make morestatus call out unresolved conflicts after update
Differential Revision: https://phab.mercurial-scm.org/D7704
Rodrigo Damazio Bovendorp <rdamazio@google.com> [Wed, 18 Dec 2019 23:41:36 -0800] rev 43943
status: extract active-merge state for reuse
Differential Revision: https://phab.mercurial-scm.org/D7667
Martin von Zweigbergk <martinvonz@google.com> [Tue, 17 Dec 2019 10:55:50 -0800] rev 43942
fix: use rewriteutil.precheck() instead of reimplementing it
Differential Revision: https://phab.mercurial-scm.org/D7687
Martin von Zweigbergk <martinvonz@google.com> [Tue, 17 Dec 2019 11:09:22 -0800] rev 43941
split: use rewriteutil.precheck() instead of reimplementing it
As you can see from the patch, I disagree with most of the comment
saying that `rewriteutil.precheck()` is not worthwhile.
Differential Revision: https://phab.mercurial-scm.org/D7686
Martin von Zweigbergk <martinvonz@google.com> [Wed, 18 Dec 2019 09:18:02 +0300] rev 43940
rebase: use rewriteutil.precheck() instead of reimplementing it
After this patch, there's still another place in `rebase.py`, in the
`--stop` code path, that reimplements `rewriteutil.precheck()`. I
couldn't fix that place because it `rewriteutil.precheck()` checks
that there is only one dirstate parent, which fails because we have
two parents at that point. I think it's incorrect that rebase leaves
the user with two parents during conflicts, but changing that is way
out of scope for this series.
Differential Revision: https://phab.mercurial-scm.org/D7685
Martin von Zweigbergk <martinvonz@google.com> [Tue, 17 Dec 2019 10:53:51 -0800] rev 43939
histedit: use rewriteutil.precheck() instead of reimplementing it
We have had this nice utility since 490df753894d (rewriteutil: add a
precheck function to check if revs can be rewritten, 2017-11-24). We
got two callers soon thereafter, in 98f97eb20597 (rewriteutil: use
precheck() in uncommit and amend commands, 2017-11-28). It's about
time we use it in other places.
rewriteutil.precheck() looks unfortunate for i18n (it seems to rely on
an English verb for the action making sense in other languages), but
hopefully not bad enough that we should avoid using it.
Differential Revision: https://phab.mercurial-scm.org/D7684
Martin von Zweigbergk <martinvonz@google.com> [Thu, 12 Dec 2019 23:25:16 -0800] rev 43938
rebase: inline single-use variables passed to _definedestmap()
Differential Revision: https://phab.mercurial-scm.org/D7646