Thu, 16 Jun 2016 15:15:33 -0700 changegroup: don't send empty subdirectory manifest groups
Martin von Zweigbergk <martinvonz@google.com> [Thu, 16 Jun 2016 15:15:33 -0700] rev 29371
changegroup: don't send empty subdirectory manifest groups When grafting/rebasing, it is common for multiple changesets to make the same change to a subdirectory. When writing the revlog for the directory, the revlog code already takes care of not writing the entry again. In 0c2a088ffcc5 (changegroup: prune subdirectory dirlogs too, 2016-02-12), I added the corresponding code in changegroup (not sending entries the client already has), but I forgot to avoid sending the entire changegroup if no nodes remained in the pruned set. Although that's harmless besides the wasted network traffic, the receiving side was checking for it (copied from the changegroup code for handling files). This resulted in the client crashing with: abort: received dir revlog group is empty Fix by simply not emitting a changegroup for the directory if there were no changes is it. This matches how files are handled.
Wed, 15 Jun 2016 23:49:56 +0900 chg: ignore SIGINT while waiting pager termination
Yuya Nishihara <yuya@tcha.org> [Wed, 15 Jun 2016 23:49:56 +0900] rev 29370
chg: ignore SIGINT while waiting pager termination Otherwise the terminal would be left with unclean state. This is what fcc4b55876c3 does.
Wed, 15 Jun 2016 23:32:00 +0900 chg: reset signal handlers to default before waiting pager
Yuya Nishihara <yuya@tcha.org> [Wed, 15 Jun 2016 23:32:00 +0900] rev 29369
chg: reset signal handlers to default before waiting pager Our signal handlers forward signals to the server process, but it will disappear soon after hgc_close(). So we should unregister handlers before hgc_close(). Otherwise chg would abort due to kill(perrpid, sig) failure. The problem is spotted by SIGWINCH while waiting pager termination.
Thu, 16 Jun 2016 09:15:12 -0700 help: document that [subpaths] may rewrite relative paths stable
Mike Miller <mike@mtmxr.com> [Thu, 16 Jun 2016 09:15:12 -0700] rev 29368
help: document that [subpaths] may rewrite relative paths The subpaths substitution logic first attempts to match the absolute repository path, then the relative subrepository path if that failed.
Mon, 13 Jun 2016 05:11:56 +0900 doc: describe detail about checkambig optional argument
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Mon, 13 Jun 2016 05:11:56 +0900] rev 29367
doc: describe detail about checkambig optional argument This is followup for patches below, which add checkambig argument to existing function. - 731ced087a4b - 76f1ea360c7e - ce2d81aafbae - a109bf7e0dc2
Sun, 12 Jun 2016 14:07:26 +0900 ui: provide official way to reset internal state per command
Yuya Nishihara <yuya@tcha.org> [Sun, 12 Jun 2016 14:07:26 +0900] rev 29366
ui: provide official way to reset internal state per command This will allow us to clear in-memory password storage per runcommand(). I've updated commandserver to call resetstate() of both ui and repo.ui because they may have different states in theory.
Sat, 11 Jun 2016 10:17:49 +0900 revset: extract function that validates sort() arguments
Yuya Nishihara <yuya@tcha.org> [Sat, 11 Jun 2016 10:17:49 +0900] rev 29365
revset: extract function that validates sort() arguments This function will be used in _optimize() to get rid of noop sort() call while validating its arguments.
Wed, 15 Jun 2016 21:26:45 +0900 revset: build dict of extra sort options before evaluating set
Yuya Nishihara <yuya@tcha.org> [Wed, 15 Jun 2016 21:26:45 +0900] rev 29364
revset: build dict of extra sort options before evaluating set Prepares for extracting a function that only validates sort options.
Sat, 11 Jun 2016 10:15:40 +0900 revset: build list of (key, reverse) pairs before sorting
Yuya Nishihara <yuya@tcha.org> [Sat, 11 Jun 2016 10:15:40 +0900] rev 29363
revset: build list of (key, reverse) pairs before sorting Prepares for extracting a function that only validates sort options.
Wed, 15 Jun 2016 20:37:24 +0900 revset: fix crash on empty sort key
Yuya Nishihara <yuya@tcha.org> [Wed, 15 Jun 2016 20:37:24 +0900] rev 29362
revset: fix crash on empty sort key Make it noop as before 2188f170f5b6. We could change it to an error, but allowing empty key makes some sense for scripting that builds a key string programmatically.
Mon, 13 Jun 2016 22:41:45 +0100 rebase: move local variable 'targetancestors' to the RR class
Kostia Balytskyi <ikostia@fb.com> [Mon, 13 Jun 2016 22:41:45 +0100] rev 29361
rebase: move local variable 'targetancestors' to the RR class
Mon, 13 Jun 2016 22:40:59 +0100 rebase: move local variable 'skipped' to the RR class
Kostia Balytskyi <ikostia@fb.com> [Mon, 13 Jun 2016 22:40:59 +0100] rev 29360
rebase: move local variable 'skipped' to the RR class
Mon, 13 Jun 2016 22:38:54 +0100 rebase: move local variable 'target' to the RR class
Kostia Balytskyi <ikostia@fb.com> [Mon, 13 Jun 2016 22:38:54 +0100] rev 29359
rebase: move local variable 'target' to the RR class
Mon, 13 Jun 2016 22:36:13 +0100 rebase: introduce a rebaseruntime (RR) class
Kostia Balytskyi <ikostia@fb.com> [Mon, 13 Jun 2016 22:36:13 +0100] rev 29358
rebase: introduce a rebaseruntime (RR) class rebaseruntime is a class that will in future contain all of the state necessary to perform rebase operation and have pieces of rebase logic as its methods. This commit introduces the class and moves the following local variables to be its fields: - originalwd - external - state - activebookmark
Wed, 15 Jun 2016 21:36:31 +0100 chg: change default connect timeout to 60 seconds
Jun Wu <quark@fb.com> [Wed, 15 Jun 2016 21:36:31 +0100] rev 29357
chg: change default connect timeout to 60 seconds As discussed at https://www.mercurial-scm.org/pipermail/mercurial-devel/2016-June/085290.html The default 10-second timeout is not enough if the machine is overloaded. Let's increase it to 60 seconds.
Tue, 14 Jun 2016 18:14:42 -0700 tests: increase test-https malform error glob
Durham Goode <durham@fb.com> [Tue, 14 Jun 2016 18:14:42 -0700] rev 29356
tests: increase test-https malform error glob The recently introduced (ecc9b788fd690a0a) test around malformed pem files hard codes an error message which doesn't appear to be cross platform agnostic. On our machines (centos6 if it matters) the test output differs: - abort: error: unknown error* (glob) + abort: error: _ssl.c:330: error:00000000:lib(0):func(0):reason(0) This patch increases the glob to cover the entire error message.
(0) -10000 -3000 -1000 -300 -100 -16 +16 +100 +300 +1000 +3000 +10000 tip