Mon, 18 Dec 2017 17:33:43 -0800 debug: add newlines at the end of three locations that appear to need it
Kyle Lippincott <spectral@google.com> [Mon, 18 Dec 2017 17:33:43 -0800] rev 35470
debug: add newlines at the end of three locations that appear to need it Differential Revision: https://phab.mercurial-scm.org/D1720
Mon, 18 Dec 2017 17:33:08 -0800 debug: remove an 'if ui.debug()' that is not doing anything
Kyle Lippincott <spectral@google.com> [Mon, 18 Dec 2017 17:33:08 -0800] rev 35469
debug: remove an 'if ui.debug()' that is not doing anything ui.debug() does not return a value. Differential Revision: https://phab.mercurial-scm.org/D1719
Thu, 21 Dec 2017 21:35:20 +0800 paper: minor adjustments to table styles
Anton Shestakov <av6@dwimlabs.net> [Thu, 21 Dec 2017 21:35:20 +0800] rev 35468
paper: minor adjustments to table styles Adding a bit of padding to table columns on e.g. /log means content and headers are better aligned: headers already have this padding. Right margin is removed from #changesetEntry th because elements with display: table-cell (such as <th>) ignore margins anyway.
Wed, 20 Dec 2017 17:22:16 -0600 filemerge: only raise InMemoryMergeConflictsError when running _xmerge
Phil Cohen <phillco@fb.com> [Wed, 20 Dec 2017 17:22:16 -0600] rev 35467
filemerge: only raise InMemoryMergeConflictsError when running _xmerge The old code here was overly broad and would raise in cases when we didn't end up calling `xmerge` and resolved using an internal tool (such as when `premerge=True`). Instead, let's swap out _xmerge if IMM is enabled and have the new tool raise when called, which is the behavior we want. Differential Revision: https://phab.mercurial-scm.org/D1739
Wed, 20 Dec 2017 16:44:35 -0800 journal: use pager
Jun Wu <quark@fb.com> [Wed, 20 Dec 2017 16:44:35 -0800] rev 35466
journal: use pager journal output is long and should use a pager. Differential Revision: https://phab.mercurial-scm.org/D1740
Wed, 20 Dec 2017 11:35:38 -0800 commandserver: unblock SIGCHLD
Jun Wu <quark@fb.com> [Wed, 20 Dec 2017 11:35:38 -0800] rev 35465
commandserver: unblock SIGCHLD This enables the SIGCHLD handler to work properly if some buggy program started chg server with SIGCHLD blocked. A test of this probably requires C code, but we don't have such kind of tests already. Since this is a simple and clear fix, I'm leaving it as "untested" but I did a manual test and there were no longer zombie workers. Differential Revision: https://phab.mercurial-scm.org/D1737
Wed, 20 Dec 2017 02:13:35 -0800 osutil: add a function to unblock signals
Jun Wu <quark@fb.com> [Wed, 20 Dec 2017 02:13:35 -0800] rev 35464
osutil: add a function to unblock signals Signals could be blocked by something like: #include <unistd.h> #include <signal.h> int main(int argc, char * const argv[]) { sigset_t set; sigfillset(&set); sigprocmask(SIG_BLOCK, &set, NULL); execv("/bin/hg", argv); return 0; } One of the problems is if SIGCHLD is blocked, chgserver would not reap zombie workers since it depends on SIGCHLD handler entirely. While it's the parent process to blame but it seems a good idea to just unblock the signal from hg. FWIW git does that for SIGPIPE already [1]. Unfortunately Python 2 does not reset or provide APIs to change signal masks. Therefore let's add one in osutil. Note: Python 3.3 introduced `signal.pthread_sigmask` which solves the problem. `sigprocmask` is part of POSIX [2] so there is no feature testing in `setup.py`. [1]: https://github.com/git/git/commit/7559a1be8a0afb10df41d25e4cf4c5285a5faef1 [2]: http://pubs.opengroup.org/onlinepubs/7908799/xsh/sigprocmask.html Differential Revision: https://phab.mercurial-scm.org/D1736
Mon, 18 Dec 2017 21:15:53 +0900 sshpeer: move docstring to top
Yuya Nishihara <yuya@tcha.org> [Mon, 18 Dec 2017 21:15:53 +0900] rev 35463
sshpeer: move docstring to top Also makes it use double quotes consistently.
Tue, 19 Dec 2017 21:41:39 +0900 log: make "slowpath" condition slightly more readable
Yuya Nishihara <yuya@tcha.org> [Tue, 19 Dec 2017 21:41:39 +0900] rev 35462
log: make "slowpath" condition slightly more readable Before 8e0e334bad42 and 6c76c42a5893, the condition was "anypats() or (files() and --removed)". This can be read as "<match is actually slow> or <walk files including removed revs>". So "not always()" (i.e. walk file revs) seems more appropriate here. The logic should be unchanged: not anypats() => always() or isexact() or prefix() isexact() => not always() prefix() => not always()
Mon, 18 Dec 2017 11:23:51 -0800 completion: add support for new "amend" command
Martin von Zweigbergk <martinvonz@google.com> [Mon, 18 Dec 2017 11:23:51 -0800] rev 35461
completion: add support for new "amend" command The command is now shipped with Mercurial, but completion should be helpful (and accurate) for users of the amend command shipped with the evolve extension too. Differential Revision: https://phab.mercurial-scm.org/D1716
(0) -30000 -10000 -3000 -1000 -300 -100 -10 +10 +100 +300 +1000 +3000 +10000 tip