absorb: be more specific when erroring out on merge commit
When you have a merge commit checked out and run `hg absorb`, it would
tell you
abort: no mutable changeset to change
That makes it sound like the problem is public commits when isn't
really. Let's be more specific in this case.
There was already a test case that test this, so that now prints the
new message. I added a new test case that shows the old message (when
a public commit is checked out).
Differential Revision: https://phab.mercurial-scm.org/D6354
remotefilelog: log when we're about to fetch files
I'm debugging a slow client situation and knowing how many files are
in the batch request would be a nice thing.
Differential Revision: https://phab.mercurial-scm.org/D6353
revset: populate wdir() by its hash or revision number
It belongs to the same category as the null hash/revision, and we do handle
these virtual identifiers in id()/rev() predicates. Let's do that more
consistently.
sslutil: fsencode path returned by certifi (
issue6132)
By inspection, this is the only codepath that could be returning a
string instead of a bytes on Python 3.
revset: extract private constant of {nullrev, wdirrev} set
I'll add a few more users of this constant to get around wdir identifiers.
help: suggest merge() revset instead of -m/--only-merges
Suggested by Dr Rainer Woitok.
tests: update annotate tests to work around simplemerge bug
test-annotate.t and test-fastannotate.hg were failing with --pure
since
57203e0210f8 (copies: calculate mergecopies() based on
pathcopies(), 2019-04-11). It turned out to be because the pure file
merge code behaved differently. I'm guessing it's the
mdiff.get_matching_blocks() that behaves differently, but I haven't
confirmed that.
With this content in the base:
a
a
a
And this on the local side:
a
z
a
And this on the other side:
a
a
a
b4
c
b6
It produced this conflict:
a
z
a
<<<<<<< working copy:
b80e3e32f75a - test: c
||||||| base
a
=======
a
b4
c
b5
>>>>>>> merge rev:
64afcdf8e29e - test: mergeb
I don't care enough about the pure Python code to fix it, so this
patch just updates the tests to manually resolve the conflict.
Differential Revision: https://phab.mercurial-scm.org/D6351
copies: delete misplaced comment
The comment was added in
78d760aa3607 (duplicatecopies: do not mark
items not in the dirstate as copies, 2013-03-28). It became misplaced
in
3666331164bb (cmdutil: add copy-filtering support to
duplicatecopies, 2014-06-07). Then the relevant code was moved far
away in
754b5117622f (context: add workingfilectx.markcopied,
2017-10-15).
Differential Revision: https://phab.mercurial-scm.org/D6352
phabricator: include branch in the phabread output
Depends on D6301
Differential Revision: https://phab.mercurial-scm.org/D6302