Tue, 31 Oct 2017 22:37:30 +0900 configitems: relax warning about unwanted default value stable
Yuya Nishihara <yuya@tcha.org> [Tue, 31 Oct 2017 22:37:30 +0900] rev 34947
configitems: relax warning about unwanted default value The original condition was a bit harsh for extension authors since third-party extensions need to preserve compatibility with older Mercurial versions, where no defaults would be loaded from the configtable. So let's silence the warning if the given default value matches, which should be harmless.
Thu, 26 Oct 2017 11:07:06 -0700 filemerge: pass a default value to _toolstr (issue5718) stable
Kostia Balytskyi <ikostia@fb.com> [Thu, 26 Oct 2017 11:07:06 -0700] rev 34946
filemerge: pass a default value to _toolstr (issue5718) After a refactoring, _toolstr stopped having default="" as one of it's args, therefore when called without a default it returns None and not "". This causes concatenation to fail.
Tue, 31 Oct 2017 06:39:38 +0530 children: fix the log expansion of `hg children` in doc stable
Pulkit Goyal <7895pulkit@gmail.com> [Tue, 31 Oct 2017 06:39:38 +0530] rev 34945
children: fix the log expansion of `hg children` in doc `hg log -r children()` returns `hg: parse error: missing argument`. Differential Revision: https://phab.mercurial-scm.org/D1269
Sun, 29 Oct 2017 17:53:52 +0900 test-static-http: flush access log per request stable
Yuya Nishihara <yuya@tcha.org> [Sun, 29 Oct 2017 17:53:52 +0900] rev 34944
test-static-http: flush access log per request It appears that stderr is fully buffered on Windows. # no-check-commit because of log_message() function
Sat, 28 Oct 2017 17:23:52 +0900 statichttprepo: do not use platform path separator to build a URL stable
Yuya Nishihara <yuya@tcha.org> [Sat, 28 Oct 2017 17:23:52 +0900] rev 34943
statichttprepo: do not use platform path separator to build a URL It wouldn't work between Windows client and Unix server.
Tue, 24 Oct 2017 11:15:30 -0700 merge: disable path conflict checking by default (issue5716) stable
Siddharth Agarwal <sid0@fb.com> [Tue, 24 Oct 2017 11:15:30 -0700] rev 34942
merge: disable path conflict checking by default (issue5716) We shouldn't ship a severe perf regression in hg update for 4.4. Differential Revision: https://phab.mercurial-scm.org/D1223
Tue, 24 Oct 2017 11:14:38 -0700 merge: add a config option to disable path conflict checking stable
Siddharth Agarwal <sid0@fb.com> [Tue, 24 Oct 2017 11:14:38 -0700] rev 34941
merge: add a config option to disable path conflict checking We've found a severe perf regression in `hg update` caused by the path conflict checking code. The next patch will disable this by default. Differential Revision: https://phab.mercurial-scm.org/D1222
Fri, 20 Oct 2017 05:53:35 -0700 dirstate: clean up when restoring identical backups stable
Mark Thomas <mbthomas@fb.com> [Fri, 20 Oct 2017 05:53:35 -0700] rev 34940
dirstate: clean up when restoring identical backups When a dirstate backup is restored, it is possible that no actual changes to the dirstate have been made. In this case, the backup is still a hardlink to the original dirstate. Unfortunately, `os.rename` silently fails (nothing happens, and no error occurs) when `src` and `dst` are hardlinks to the same file. As a result, the backup is left lying around. Over time, these files accumulate. When restoring dirstate backups, check if the backup and the dirstate are the same file, and if so, just delete the backup. Differential Revision: https://phab.mercurial-scm.org/D1201
Fri, 20 Oct 2017 05:53:33 -0700 tests: add a test demonstrating failure to clean up dirstate backups stable
Mark Thomas <mbthomas@fb.com> [Fri, 20 Oct 2017 05:53:33 -0700] rev 34939
tests: add a test demonstrating failure to clean up dirstate backups Differential Revision: https://phab.mercurial-scm.org/D1200
Fri, 20 Oct 2017 23:01:56 -0400 tests: adjust hooks for Windows stable
Matt Harbison <matt_harbison@yahoo.com> [Fri, 20 Oct 2017 23:01:56 -0400] rev 34938
tests: adjust hooks for Windows I'm not sure why these weren't working on Windows. The failures were generally in the style of: - remote: phase-move: cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b: 1 -> 0 + remote: "phase-move: $HG_NODE: $HG_OLDPHASE -> $HG_PHASE" and - abort: pretxnclose-bookmark.force-forward hook exited with status 1 - [255] + abort: pretxnclose-bookmark.force-public hook exited with status 255 + [255] These failures originated in ee5f0d047b41::f6d17075608f.
Fri, 20 Oct 2017 21:29:15 -0400 test-log-linerange: open binary file in binary mode stable
Matt Harbison <matt_harbison@yahoo.com> [Fri, 20 Oct 2017 21:29:15 -0400] rev 34937
test-log-linerange: open binary file in binary mode The '\n' characters were being translated on Windows, throwing off hg and git hashes, as well as the file content in the diff.
Thu, 19 Oct 2017 23:16:48 -0400 test-arbitraryfilectx: stabilize for Windows stable
Matt Harbison <matt_harbison@yahoo.com> [Thu, 19 Oct 2017 23:16:48 -0400] rev 34936
test-arbitraryfilectx: stabilize for Windows Previously, the second last test (context.arbitraryfilectx(..)) returned True on Windows. I changed the repo setup sequence to import a patch, so that way the repo would have a proper symlink. That made the last test fail, since it is comparing files in wdir(), one of which is not the expected symlink. Apparently the (feature !) line matching doesn't work well with (no-eol), so I had to conditionalize the test instead of the output.
Sat, 28 Oct 2017 12:35:54 -0700 dirstate: remove excess attribute lookups for dirstate.status (issue5714) stable
Durham Goode <durham@fb.com> [Sat, 28 Oct 2017 12:35:54 -0700] rev 34935
dirstate: remove excess attribute lookups for dirstate.status (issue5714) A recent refactor added a layer of abstraction to the dirstate which makes doing things like 'foo in dirstate' now require some extra Python attribute lookups. This is causing a 100ms slow down in hg status for mozilla-central. The fix is to hoist the inner dict's functions onto the main class once the lazy loading it complete, as well as store the actual functions before doing the status loop (as is done for other such functions). In my testing, it seems to address the performance regression, but we'll need to see the perf run results to know for sure. Differential Revision: https://phab.mercurial-scm.org/D1257
Thu, 26 Oct 2017 16:15:36 -0700 dirstate: avoid reading the map when possible (issue5713) (issue5717) stable
Durham Goode <durham@fb.com> [Thu, 26 Oct 2017 16:15:36 -0700] rev 34934
dirstate: avoid reading the map when possible (issue5713) (issue5717) Before the recent refactor, we would not load the entire map until it was accessed. As part of the refactor, that got lost and even just trying to load the dirstate parents would load the whole map. This caused a perf regression (issue5713) and a regression with static http serving (issue5717). Making it lazy loaded again fixes both. Differential Revision: https://phab.mercurial-scm.org/D1253
Thu, 26 Oct 2017 16:15:31 -0700 dirstate: move clear onto dirstatemap class stable
Durham Goode <durham@fb.com> [Thu, 26 Oct 2017 16:15:31 -0700] rev 34933
dirstate: move clear onto dirstatemap class A future diff will move the lazy loading aspect of dirstate to the dirstatemap class. This means it requires a slightly different strategy of clearing than just reinstantiating the object (since just reinstantiating the object will lazily load the on disk data again later instead of remaining permanently empty). So let's give it it's own clear function. Differential Revision: https://phab.mercurial-scm.org/D1252
Fri, 27 Oct 2017 18:19:07 +0200 internal-doc: document the config register mechanism stable
Boris Feld <boris.feld@octobus.net> [Fri, 27 Oct 2017 18:19:07 +0200] rev 34932
internal-doc: document the config register mechanism This explains the various usage and feature of the config register introduced in Mercurial 4.3 and 4.4.
Fri, 27 Oct 2017 21:43:22 +0200 help: clarify the pre-txnclose-phase documentation stable
Boris Feld <boris.feld@octobus.net> [Fri, 27 Oct 2017 21:43:22 +0200] rev 34931
help: clarify the pre-txnclose-phase documentation Gregory Szorc requested some clarification.
Fri, 27 Oct 2017 21:35:34 +0200 internal-doc: document the 'phases' parameters to 'getbundle' stable
Boris Feld <boris.feld@octobus.net> [Fri, 27 Oct 2017 21:35:34 +0200] rev 34930
internal-doc: document the 'phases' parameters to 'getbundle' The getbundle wireprotocol method has some extended documentation. We update it with the next parameters introduced for binary phases.
Sat, 28 Oct 2017 00:00:05 -0400 status: update the help to indicate that clean files are not normally tersed stable
Matt Harbison <matt_harbison@yahoo.com> [Sat, 28 Oct 2017 00:00:05 -0400] rev 34929
status: update the help to indicate that clean files are not normally tersed The same applies to '?' if --quiet is used (or any of the other states if some of -marduic is specified), but I couldn't figure out how to express that clearly.
Fri, 27 Oct 2017 23:48:38 -0400 terse: split on repo separator instead of os.sep (issue5715) stable
Matt Harbison <matt_harbison@yahoo.com> [Fri, 27 Oct 2017 23:48:38 -0400] rev 34928
terse: split on repo separator instead of os.sep (issue5715) The paths being processed are from scmutil.status, and therefore normalized to '/' separators.
Thu, 26 Oct 2017 11:58:55 +0800 makefile: put format-c into .PHONY targets stable
Anton Shestakov <av6@dwimlabs.net> [Thu, 26 Oct 2017 11:58:55 +0800] rev 34927
makefile: put format-c into .PHONY targets
Wed, 25 Oct 2017 21:58:03 +0900 statichttprepo: prevent loading dirstate over HTTP on node lookup (issue5717) stable
Yuya Nishihara <yuya@tcha.org> [Wed, 25 Oct 2017 21:58:03 +0900] rev 34926
statichttprepo: prevent loading dirstate over HTTP on node lookup (issue5717) This seems a bit hacky, but works well. There should be no reason that static-http repo had to load dirstate. Initially I tried to proxy os.stat() call through vfs so that statichttpvfs could hook it, but there wasn't a good error value which the statichttpvfs could return to get around the util.filestat issue.
Wed, 25 Oct 2017 21:21:42 +0900 test-static-http: show all files accessed over HTTP stable
Yuya Nishihara <yuya@tcha.org> [Wed, 25 Oct 2017 21:21:42 +0900] rev 34925
test-static-http: show all files accessed over HTTP This provides some confidence on files that should be loadable over HTTP. Hopefully it will prevent future bugs.
Wed, 25 Oct 2017 21:20:01 +0900 server: drop executable bit from daemon log file stable
Yuya Nishihara <yuya@tcha.org> [Wed, 25 Oct 2017 21:20:01 +0900] rev 34924
server: drop executable bit from daemon log file The logfile option was unused, so it was okay until now.
Mon, 23 Oct 2017 22:13:59 -0500 setup: filter out devel-warn messages from system hg stable
Kevin Bullock <kbullock+mercurial@ringworld.org> [Mon, 23 Oct 2017 22:13:59 -0500] rev 34923
setup: filter out devel-warn messages from system hg If we're going to use the user's installed and configured hg command (which we do since 8b20338b989e), we should prevent devel-warn messages from interfering with locating it.
Mon, 23 Oct 2017 21:30:59 -0500 setup: remove duplicate assignment of HGRCPATH stable
Kevin Bullock <kbullock+mercurial@ringworld.org> [Mon, 23 Oct 2017 21:30:59 -0500] rev 34922
setup: remove duplicate assignment of HGRCPATH HGRCPATH is already set in localhgenv().
Fri, 20 Oct 2017 13:54:51 -0500 packaging: update book URL in Mac and Windows READMEs stable
Kevin Bullock <kbullock+mercurial@ringworld.org> [Fri, 20 Oct 2017 13:54:51 -0500] rev 34921
packaging: update book URL in Mac and Windows READMEs
Mon, 23 Oct 2017 22:45:24 +0200 commands: be more uniform in an "hg update" error message stable
muxator <a.mux@inwind.it> [Mon, 23 Oct 2017 22:45:24 +0200] rev 34920
commands: be more uniform in an "hg update" error message "can only specify one of -C/--clean, -c/--check, or -m/merge" becomes "can only specify one of -C/--clean, -c/--check, or -m/--merge"
Wed, 04 Oct 2017 23:22:34 +0200 update: mention long options explicitly in description of merge.update() stable
muxator <a.mux@inwind.it> [Wed, 04 Oct 2017 23:22:34 +0200] rev 34919
update: mention long options explicitly in description of merge.update() The short options "-c" and "-C" may be confusing for a novice reading the documentation. Let's try to be more explicit, also mentioning the equivalent long options ("--check" and "--clean") in the comments.
Sat, 21 Oct 2017 13:42:43 +0900 mq: copy pager attributes back to qrepo.ui stable
Yuya Nishihara <yuya@tcha.org> [Sat, 21 Oct 2017 13:42:43 +0900] rev 34918
mq: copy pager attributes back to qrepo.ui If the legacy pager extension is enabled, a pager is started through repo.ui at dispatch._runcommand(). After that, mqcommand() creates a qrepo with a fresh repo.baseui, at which point pager information was lost and another pager would be spawned by the modern pager interface. This is a minimal workaround for the problem.
Sat, 21 Oct 2017 13:13:20 +0900 registrar: host "dynamicdefault" constant by configitem object stable
Yuya Nishihara <yuya@tcha.org> [Sat, 21 Oct 2017 13:13:20 +0900] rev 34917
registrar: host "dynamicdefault" constant by configitem object This is the common pattern seen in the other registrar classes.
Sat, 21 Oct 2017 13:04:58 +0900 configitems: register 'ui.editor' stable
Yuya Nishihara <yuya@tcha.org> [Sat, 21 Oct 2017 13:04:58 +0900] rev 34916
configitems: register 'ui.editor'
(0) -30000 -10000 -3000 -1000 -300 -100 -50 -32 +32 +50 +100 +300 +1000 +3000 +10000 tip