Gregory Szorc <gregory.szorc@gmail.com> [Sat, 24 Oct 2015 00:39:22 +0100] rev 26829
bundle2: attribute remote failures to remote (issue4788)
Before bundle2, hook output from hook failures was prefixed with
"remote: ". Up to this point with bundle2, the output was converted to
the message to print in an Abort exception. This had 2 implications:
1) It was unclear whether an error message came from the local repo
or the remote
2) The exit code changed from 1 to 255
This patch changes the handling of error:abort bundle2 parts during push
to prefix the error message with "remote: ". This restores the old
behavior.
We still preserve the behavior of raising an Abort during bundle2
application failure. This is a regression from pre-bundle2 because the
exit code changed.
Because we no longer raise an Abort with the remote's message, we needed
to insert a message for the new Abort. So, I invented a new error
message for that. This is another change from pre-bundle2. However, I
like the new error message because it states unambiguously who aborted
the push failed, which I think is important for users so they can decide
what's next.
Gregory Szorc <gregory.szorc@gmail.com> [Sat, 24 Oct 2015 00:39:26 +0100] rev 26828
tests: add tests for remote hook output (issue4788)
The added tests don't agree in their output. This demonstrates a
difference in `hg push` behavior between pre-bundle2 and bundle2.
A subsequent patch will attempt to restore some of the pre-bundle2
behavior to bundle2.
Yuya Nishihara <yuya@tcha.org> [Sat, 24 Oct 2015 06:59:26 +0100] rev 26827
help: mention alias and revsetalias in description of HGPLAINEXCEPT
Augie Fackler <augie@google.com> [Fri, 23 Oct 2015 11:04:53 -0400] rev 26826
debugrevlog: cope with empty revlog files
I have no idea where it came from, but my clone of Mercurial has an
empty filelog for `contrib/hgfixes/__init__.py` - it's *valid*, just
contains no nodes. Without this change, debugrevlog crashes with a
zero division error.
Mads Kiilerich <madski@unity3d.com> [Fri, 23 Oct 2015 21:27:29 +0200] rev 26825
largefiles: don't mute and obfuscate http errors when putlfile fails
'unexpected putlfile response: None' when an http error occurs is not very
helpful.
Instead, leave the handling of urllib2.HTTPError exceptions to other layers.
Mads Kiilerich <madski@unity3d.com> [Fri, 23 Oct 2015 21:27:29 +0200] rev 26824
largefiles: test coverage of error handling from putlfile
This reveals a wrong and unhelpful 'unexpected putlfile response'.
Mads Kiilerich <madski@unity3d.com> [Fri, 23 Oct 2015 21:27:29 +0200] rev 26823
largefiles: check hash of files in the store before copying to working dir
If the store somehow got corrupted, users could end up in weird situations that
were very hard to recover from or lead to propagation of the corruption.
Instead, spend the extra time checking the hash when copying to the working
directory. If it doesn't match, emit a warning, and don't put wrong content in
the working directory.
Mads Kiilerich <madski@unity3d.com> [Fri, 23 Oct 2015 21:27:29 +0200] rev 26822
largefiles: test coverage of handling of store corruption
This reveals that update might put a corrupted largefile in the working
directory where it will show up as modified and ready for commit.
Augie Fackler <augie@google.com> [Fri, 23 Oct 2015 06:06:22 -0400] rev 26821
merge: improve clarity of table in update docstring
Gregory Szorc <gregory.szorc@gmail.com> [Thu, 22 Oct 2015 18:59:03 +0000] rev 26820
ui: support paths.default-push without paths.default set (issue4914)
This behavior regressed as part of the paths API refactoring. Previous
behavior was to accept "default-push" without "default" defined. Current
behavior aborts with "default repository not configured!." This patch
restores the old behavior and adds test coverage for the scenario, which
was absent before.