Gregory Szorc <gregory.szorc@gmail.com> [Mon, 15 Jan 2018 15:20:02 -0800] rev 35705
wireproto: drop support for reader interface from streamres (API)
2add671bf55b and later commits overhauled support for compression
and output handling in the wire protocol.
Fast forward 14 months and all wire protocol commands except
the legacy "changegroup" and "changegroupsubset" commands feed
a generator to streamres.
I no longer think it is worth maintaining support for the old
"reader" API (which allows you to specify an object having a
read() method to obtain data).
This commit refactors the legacy wire protocol commands to feed
a generator to the streamres. We also drop support for the "reader"
argument and the code that was using it.
As part of the change, chunks over the SSH protocol have increased
in size for these commands. But these commands are really ancient,
so I doubt anyone will notice.
.. api::
wireproto.streamres.__init__ no longer accepts a "reader" argument.
Use the "gen" argument instead.
Differential Revision: https://phab.mercurial-scm.org/D1861
Pulkit Goyal <7895pulkit@gmail.com> [Mon, 08 Jan 2018 19:41:47 +0530] rev 35704
merge: add `--abort` flag which can abort the merge
Currently we don't have a good functionality to abort the merge and tell user to
do `hg update -C .` which can leads to different results if user missed the '.'
and moreover does not align with other abort functionalities like rebase, shelve
etc.
This patch adds `hg merge --abort` which will abort the ongoing merge and take
us back to the chagneset where we started from. Works in both cases when merge
resulted in conflicts and when there were no conflicts.
.. feature::
A `--abort` flag to merge command to abort the ongoing merge.
Differential Revision: https://phab.mercurial-scm.org/D1829
Phil Cohen <phillco@fb.com> [Thu, 04 Jan 2018 21:37:03 -0800] rev 35703
filemerge: only write in-memory backup during premerge
This wasn't broken, but should mirror the non-in memory case to save an extra
write.
Differential Revision: https://phab.mercurial-scm.org/D1807
Phil Cohen <phillco@fb.com> [Thu, 04 Jan 2018 21:36:58 -0800] rev 35702
filemerge: fix backing up an in-memory file to a custom location
If the user specifies a ui.origbackuppath, we used to always copy the file
there, but if the source file is in memory we must write it instead of copying.
Differential Revision: https://phab.mercurial-scm.org/D1806
Phil Cohen <phillco@fb.com> [Wed, 27 Dec 2017 17:38:28 -0600] rev 35701
rebase: don't run IMM if running rebase in a transaction
Some callers to rebase.rebase(), like `_moverelative` in `fbamend/movement.py`,
wrap the entire rebase call in a transaction. This raises havoc when IMM tries
to retry the rebase when it hits merge conflicts, because the abort will fail
the whole transaction, not the subset. It also fails at the end, losing any
conflict resolution, as @sid0 noticed.
The right long-term fix that @quark and I have discussed is to change the
restarting logic such that it doesn't abort at all, but simply switches between
IMM and non-IMM fluidly for each commit, which has other nice properties. In
the meantime this will do for now.
Differential Revision: https://phab.mercurial-scm.org/D1782
Augie Fackler <augie@google.com> [Wed, 17 Jan 2018 17:59:12 -0500] rev 35700
python3: whitelist two more passing tests
Differential Revision: https://phab.mercurial-scm.org/D1879
Boris Feld <boris.feld@octobus.net> [Fri, 12 Jan 2018 11:52:57 +0000] rev 35699
sshpeer: add support for request tracing
The new 'devel.debug.peer-request' option now also display some information
about request going through ssh peer.