Martin von Zweigbergk <martinvonz@google.com> [Wed, 01 May 2019 20:54:27 -0700] rev 42298
releasenotes: add a file in which to record release notes
I've just spent a few very boring hours going through the changelog
for the 5.0 release (829 commits). We only had 5 commits that used the
syntax that the release notes extension expects. This commit adds a
file in which we can record important changes. The file should
preferably be edited in the patch that makes the important change, but
it can also be edited after (I think this is an important benefit
compared to the release notes extension).
I'm thinking that we can rename the file from "next" to "5.1" or
something when it's time, and then we'd create a new "next" file on
the default branch.
I've used the syntax that we use on the our wiki in the template, but
I don't care much that we use any valid syntax at all. The idea is
mostly to record important changes when they happen. I expect that
some copy editing will be needed at release time anyway.
Differential Revision: https://phab.mercurial-scm.org/D6332
Matt Harbison <matt_harbison@yahoo.com> [Sat, 11 May 2019 22:08:57 -0400] rev 42297
record: avoid modifying the matcher passed as a method parameter
No problem observed, but I remember the previous pattern causing problems with
largefiles and/or subrepos. This special matcher was added in 419ac63fe29c, so
directly modifying the `fail` callback was probably an oversight in
44611ad4fbd9.
Differential Revision: https://phab.mercurial-scm.org/D6371
Augie Fackler <augie@google.com> [Sat, 04 May 2019 23:31:42 -0400] rev 42296
sslutil: add support for SSLKEYLOGFILE to wrapsocket
I recently learned of a Firefox/Chrome feature that allows
wiresharking otherwise-TLS'd network connections. Gloriously, there's
a pypi module that enables this same feature on Python, so let's add
support for it to Mercurial in case we need to wireshark some HTTPs
connections.
Differential Revision: https://phab.mercurial-scm.org/D6343
Ian Moody <moz-ian@perix.co.uk> [Sun, 05 May 2019 17:04:48 +0100] rev 42295
phabricator: add custom vcr matcher to match request bodies
Currently when the phabricator extension's conduit output changes the tests
don't notice since the default vcr matcher only matches on 'method' and 'uri',
not the body.
Add a custom matcher that checks the same params are in the body (ignoring
ordering).
vcr's in-built body matcher can't be used since it fails under py3 with a
"UnicodeEncodeError" on the "€ in commit message" tests.
The DREV ids have decreased since the recordings were generated against a
different phabricator instance to avoid spamming mercurial-devel.
Differential Revision: https://phab.mercurial-scm.org/D6347
Augie Fackler <augie@google.com> [Thu, 09 May 2019 18:37:37 -0400] rev 42294
merge with stable
Martin von Zweigbergk <martinvonz@google.com> [Wed, 08 May 2019 21:25:23 -0700] rev 42293
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
Augie Fackler <augie@google.com> [Wed, 08 May 2019 18:11:33 -0400] rev 42292
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
Yuya Nishihara <yuya@tcha.org> [Tue, 30 Apr 2019 15:15:57 +0900] rev 42291
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.
Yuya Nishihara <yuya@tcha.org> [Tue, 30 Apr 2019 15:10:07 +0900] rev 42290
revset: extract private constant of {nullrev, wdirrev} set
I'll add a few more users of this constant to get around wdir identifiers.
Yuya Nishihara <yuya@tcha.org> [Tue, 30 Apr 2019 15:22:03 +0900] rev 42289
help: suggest merge() revset instead of -m/--only-merges
Suggested by Dr Rainer Woitok.
Martin von Zweigbergk <martinvonz@google.com> [Mon, 06 May 2019 22:06:23 -0700] rev 42288
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
Martin von Zweigbergk <martinvonz@google.com> [Tue, 07 May 2019 14:42:15 -0700] rev 42287
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
Ian Moody <moz-ian@perix.co.uk> [Mon, 22 Apr 2019 18:55:27 +0100] rev 42286
phabricator: include branch in the phabread output
Depends on D6301
Differential Revision: https://phab.mercurial-scm.org/D6302
Ian Moody <moz-ian@perix.co.uk> [Mon, 22 Apr 2019 18:55:26 +0100] rev 42285
phabricator: fallback to reading metadata from diff for phabread
Differential Revision: https://phab.mercurial-scm.org/D6301
Ian Moody <moz-ian@perix.co.uk> [Sat, 20 Apr 2019 16:11:23 +0100] rev 42284
phabricator: include commit (node) and parent in the local:commits metadata
Differential Revision: https://phab.mercurial-scm.org/D6298
Martin von Zweigbergk <martinvonz@google.com> [Thu, 18 Apr 2019 00:34:45 -0700] rev 42283
copies: remove redundant filtering of ping-pong renames in _chain()
We already handle the ping-pong rename case in the filtering step, so
there's very little point in doing it in the chaining loop (ping-pong
renames are very rare, so I'm not worried about the cost of adding it
and then removing it again).
Differential Revision: https://phab.mercurial-scm.org/D6344
Augie Fackler <augie@google.com> [Fri, 03 May 2019 15:43:44 -0400] rev 42282
repair: reword comments that I noticed while working on source formatting
I think this is clearer, and one will also keep us from upsetting
check-code when other formatting cleanups happen.
Differential Revision: https://phab.mercurial-scm.org/D6339
Sietse Brouwer <sbbrouwer@gmail.com> [Fri, 26 Apr 2019 12:41:48 +0200] rev 42281
gendoc: nest command headers under category headers
Differential Revision: https://phab.mercurial-scm.org/D6329
Sietse Brouwer <sbbrouwer@gmail.com> [Fri, 26 Apr 2019 12:40:26 +0200] rev 42280
minirst: support subsubsubsubsections (header level 5) with marker ''''
Differential Revision: https://phab.mercurial-scm.org/D6328
Sietse Brouwer <sbbrouwer@gmail.com> [Fri, 03 May 2019 15:37:08 +0200] rev 42279
gendoc: guarantee that all commands were processed
The new logic renders the commands belonging to each category in turn.
Commands with an unregistered category are at risk of getting skipped
because their category is not in the list. By comparing the list of all
commands to a log of processed commands, we can detect commands with
unregistered categories and fail with an error message.
Differential Revision: https://phab.mercurial-scm.org/D6327
Sietse Brouwer <sbbrouwer@gmail.com> [Fri, 26 Apr 2019 17:53:01 +0200] rev 42278
gendoc: group commands by category in man page and HTML help
Make Mercurial's man page and HTML help group commands by category, and
present the categories in a helpful order. `hg help` already does this;
this patch uses the same metadata.
This patch uses the same header level for command categories and for
commands. A subsequent patch will push the command headers down one
level.
Differential Revision: https://phab.mercurial-scm.org/D6326
Sietse Brouwer <sbbrouwer@gmail.com> [Thu, 25 Apr 2019 19:15:17 +0200] rev 42277
gendoc: indent loop to make next patch more legible
Differential Revision: https://phab.mercurial-scm.org/D6325
Augie Fackler <augie@google.com> [Fri, 03 May 2019 15:53:56 -0400] rev 42276
contrib: have byteify-strings explode if run in Python 2
Differential Revision: https://phab.mercurial-scm.org/D6341
Augie Fackler <augie@google.com> [Fri, 03 May 2019 15:46:09 -0400] rev 42275
repair: reword comment about bookmarks logic
Again, this will help auto-formatting shortly.
Differential Revision: https://phab.mercurial-scm.org/D6340