Wed, 23 Mar 2016 13:34:47 -0700 graphmod: set default edge styles for ascii graphs (BC)
Martijn Pieters <mjpieters@fb.com> [Wed, 23 Mar 2016 13:34:47 -0700] rev 28627
graphmod: set default edge styles for ascii graphs (BC) Leaving regular parent edges set to |, grandparent edges set to : and missing parent edges set to end early. A sample graph: o changeset: 32:d06dffa21a31 |\ parent: 27:886ed638191b | : parent: 31:621d83e11f67 | : o : changeset: 31:621d83e11f67 |\: parent: 21:d42a756af44d | : parent: 30:6e11cd4b648f | : o : changeset: 30:6e11cd4b648f |\ \ parent: 28:44ecd0b9ae99 | ~ : parent: 29:cd9bb2be7593 | / o : changeset: 28:44ecd0b9ae99 |\ \ parent: 1:6db2ef61d156 | ~ : parent: 26:7f25b6c2f0b9 | / o : changeset: 26:7f25b6c2f0b9 |\ \ parent: 18:1aa84d96232a | | : parent: 25:91da8ed57247 | | : | o : changeset: 25:91da8ed57247 | |\: parent: 21:d42a756af44d | | : parent: 24:a9c19a3d96b7 | | : | o : changeset: 24:a9c19a3d96b7 | |\ \ parent: 0:e6eb3150255d | | ~ : parent: 23:a01cddf0766d | | / | o : changeset: 23:a01cddf0766d | |\ \ parent: 1:6db2ef61d156 | | ~ : parent: 22:e0d9cccacb5d | | / | o : changeset: 22:e0d9cccacb5d |/:/ parent: 18:1aa84d96232a | : parent: 21:d42a756af44d | : | o changeset: 21:d42a756af44d | |\ parent: 19:31ddc2c1573b | | | parent: 20:d30ed6450e32 | | | +---o changeset: 20:d30ed6450e32 | | | parent: 0:e6eb3150255d | | ~ parent: 18:1aa84d96232a | | | o changeset: 19:31ddc2c1573b | |\ parent: 15:1dda3f72782d | ~ ~ parent: 17:44765d7c06e0 | o changeset: 18:1aa84d96232a parent: 1:6db2ef61d156 parent: 15:1dda3f72782d
Thu, 24 Mar 2016 16:35:24 -0700 tests: python executable should always be globbed
Sean Farley <sean@farley.io> [Thu, 24 Mar 2016 16:35:24 -0700] rev 28626
tests: python executable should always be globbed Similar to 4d93d73b8aec, the python executable could be python2.X, Python, pypy, or maybe something futuristic like pyston or nuitka.
Tue, 22 Mar 2016 16:08:02 -0700 setup: add missing hgext.fsmonitor
Sean Farley <sean@farley.io> [Tue, 22 Mar 2016 16:08:02 -0700] rev 28625
setup: add missing hgext.fsmonitor Before this patch, fsmonitor was not installed along with other extensions. It did correctly build the C files needed but forgot to copy over the python files. This patch fixes it by adding fsmonitor and fsmonitor.pywatchman to the correct install variable.
Fri, 25 Mar 2016 16:23:23 -0500 merge with stable
Matt Mackall <mpm@selenic.com> [Fri, 25 Mar 2016 16:23:23 -0500] rev 28624
merge with stable
Sat, 09 Jan 2016 22:46:26 +0900 dispatch: show deprecation warning if command has no attributes (issue5137)
Yuya Nishihara <yuya@tcha.org> [Sat, 09 Jan 2016 22:46:26 +0900] rev 28623
dispatch: show deprecation warning if command has no attributes (issue5137) norepo/optionalrepo/inferrepo were removed by aa73d6a5d9ea, which would be significant API change. This patch tries to avoid crash even if ancient third-party extensions are enabled.
Mon, 14 Mar 2016 00:14:43 +0900 dispatch: extract function that tests command attributes
Yuya Nishihara <yuya@tcha.org> [Mon, 14 Mar 2016 00:14:43 +0900] rev 28622
dispatch: extract function that tests command attributes This function will host the compatibility layer for old third-party commands. See the next patch for details.
Mon, 14 Mar 2016 00:06:52 +0900 dispatch: make cmdalias forward command attributes to function
Yuya Nishihara <yuya@tcha.org> [Mon, 14 Mar 2016 00:06:52 +0900] rev 28621
dispatch: make cmdalias forward command attributes to function This delays resolution of command attributes so that missing attributes can be warned only when necessary.
Sun, 20 Mar 2016 17:18:06 -0700 run-tests: use different chg socket directories for different tests
Jun Wu <quark@fb.com> [Sun, 20 Mar 2016 17:18:06 -0700] rev 28620
run-tests: use different chg socket directories for different tests Before this patch, if --chg or --with-chg is specified, all tests are using the same chgserver socket. Since the chg client holds a lock when it starts a new server, and every test needs at least a new chg server due to different HGRCPATH affecting the confighash, the result is a lot of tests will be timed out if -j is large (for example, 50 or 100). This patch solves the issue by using different chg socket directories for different tests.
Mon, 21 Mar 2016 20:56:46 +0000 tests: ensure run-tests handles multiple lines of churn
timeless <timeless@mozdev.org> [Mon, 21 Mar 2016 20:56:46 +0000] rev 28619
tests: ensure run-tests handles multiple lines of churn 1ad0ddf8cccc added the ability to remember lines (including their flags, like glob) and tolerate them even if the output order varies. This test ensures that the code will continue to work in the future.
Thu, 24 Mar 2016 09:38:11 -0700 subrepo: adapt to git's recent renames-by-default stable
Martin von Zweigbergk <martinvonz@google.com> [Thu, 24 Mar 2016 09:38:11 -0700] rev 28618
subrepo: adapt to git's recent renames-by-default Git turned on renames by default in commit 5404c11 (diff: activate diff.renames by default, 2016-02-25). The change is destined for release in git 2.8.0. The change breaks test-subrepo-git, which test specifically that a moved file is reported as a removal and an addition. Fix by passing --no-renames (available in git since mid 2006) to the diff commands that don't use --quiet (should make no difference for those).
Thu, 24 Mar 2016 00:09:58 -0700 graphmod: move the graphstyle options to experimental
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 24 Mar 2016 00:09:58 -0700] rev 28617
graphmod: move the graphstyle options to experimental I let this slip in the [ui] section during the review, as far as I understand we don't plan to actually support customisation of the output on we are happy with our choice. The option are just here to help people tests various options so we can decide which one we'll actually use. I'm moving the config option in the experimental section to make this clearer and avoid making them part of the public API by mistake.
Mon, 21 Mar 2016 21:06:49 +0000 tests: remove obsolete uses of HGTEST_RUN_TESTS_PURE
timeless <timeless@mozdev.org> [Mon, 21 Mar 2016 21:06:49 +0000] rev 28616
tests: remove obsolete uses of HGTEST_RUN_TESTS_PURE 342ab95a1f4b added arguments to run-tests.py calls to propagate --pure when --with-hg is not used. 0622d6e134fb unified places to use --with-hg via rt(), which obviated the need for passing HGTEST_RUN_TESTS_PURE.
Sun, 20 Mar 2016 17:30:56 -0700 test-debugextensions: passes with byte-compilation disabled (issue5147)
Kevin Bullock <kbullock@ringworld.org> [Sun, 20 Mar 2016 17:30:56 -0700] rev 28615
test-debugextensions: passes with byte-compilation disabled (issue5147)
Wed, 23 Mar 2016 11:53:11 +0800 rpms: add hgext3rd to mercurial.spec
Anton Shestakov <av6@dwimlabs.net> [Wed, 23 Mar 2016 11:53:11 +0800] rev 28614
rpms: add hgext3rd to mercurial.spec Otherwise build process fails with somethings like this: RPM build errors: Installed (but unpackaged) file(s) found: /usr/lib64/python2.7/site-packages/hgext3rd/__init__.py /usr/lib64/python2.7/site-packages/hgext3rd/__init__.pyc /usr/lib64/python2.7/site-packages/hgext3rd/__init__.pyo make: *** [docker-fedora20] Error 1
Wed, 23 Mar 2016 10:50:24 -0700 debugobsolete: add an option to show marker index
Kostia Balytskyi <ikostia@fb.com> [Wed, 23 Mar 2016 10:50:24 -0700] rev 28613
debugobsolete: add an option to show marker index A bigger picture is the ability to be delete an arbitrary marker form the repo's obsstore. This is a useful debug ability and it needs a way to indentify the marker one wants to delete. Having a marker's index provides such an ability.
Tue, 15 Mar 2016 09:51:42 +0000 tests: explicitly flush output streams
Jun Wu <quark@fb.com> [Tue, 15 Mar 2016 09:51:42 +0000] rev 28612
tests: explicitly flush output streams Some tests fail while running with chg because they do not flush their output streams. chgserver will make sure ui.flush is called after dispatch, but not after {ui,repo}setup. For other non-ui streams, it should be explicitly flushed since the request handler will use os._exit. This patch adds explicit flushes in test-bundle2-format.t, test-extension.t and test-obsolete.t. It will fix most test cases of them when running with chg.
Sun, 20 Mar 2016 15:09:29 -0700 test-hgrc: do not print ui.plain() flag at uisetup()
Yuya Nishihara <yuya@tcha.org> [Sun, 20 Mar 2016 15:09:29 -0700] rev 28611
test-hgrc: do not print ui.plain() flag at uisetup() This makes the test pass with chg. Since uisetup() is run per process, "hg showconfig" does not always call uisetup().
Sun, 20 Mar 2016 12:25:46 -0700 tests: make config/help tests pass even if chgserver extension is loaded
Yuya Nishihara <yuya@tcha.org> [Sun, 20 Mar 2016 12:25:46 -0700] rev 28610
tests: make config/help tests pass even if chgserver extension is loaded It isn't important for these tests if "extensions.chgserver=" is set or not. So let's make them ignore such lines.
Tue, 22 Mar 2016 16:05:22 -0700 setup: alphabetize hgext packages
Sean Farley <sean@farley.io> [Tue, 22 Mar 2016 16:05:22 -0700] rev 28609
setup: alphabetize hgext packages
Thu, 17 Mar 2016 21:03:22 +0000 remove: add progress support
timeless <timeless@mozdev.org> [Thu, 17 Mar 2016 21:03:22 +0000] rev 28608
remove: add progress support
Thu, 17 Mar 2016 18:19:36 +0000 remove: queue warnings until after status messages (issue5140) (API)
timeless <timeless@mozdev.org> [Thu, 17 Mar 2016 18:19:36 +0000] rev 28607
remove: queue warnings until after status messages (issue5140) (API) Before this change, warnings were interspersed with (and easily drowned out by) status messages. API: abstractsubrepo.removefiles has an extra argument warnings, into which callees should append their warnings. Note: Callees should not assume that there will be items in the list, today, I'm lazily including any other subrepos warnings, but that may change. cmdutil.remove has an extra optional argument warnings, into which it will place warnings. If warnings is omitted, warnings will be reported via ui.warn() as before this change (albeit, after any status messages).
Mon, 21 Mar 2016 04:01:29 +0000 tests: include progress for test-remove
timeless <timeless@mozdev.org> [Mon, 21 Mar 2016 04:01:29 +0000] rev 28606
tests: include progress for test-remove
Sun, 20 Mar 2016 15:43:20 -0700 chg: allows default hg path to be overridden
Jun Wu <quark@fb.com> [Sun, 20 Mar 2016 15:43:20 -0700] rev 28605
chg: allows default hg path to be overridden Before this patch, chg will fall back to "hg" if neither CHGHG nor HG are set. This may have trouble if the "hg" in PATH is not compatible with chg, which can happen, for example, an old hg is installed in a virtualenv. Since it's very hard to do a quick hg version check from chg, after discussion in IRC with smf and marmoute, the quickest solution is to build a package with a hardcoded absolute hg path in chg. This patch makes it possible by adding a C macro HGPATH.
Sun, 20 Mar 2016 15:25:25 -0700 chg: define PRINTF_FORMAT_ for non gnu C compiler
Jun Wu <quark@fb.com> [Sun, 20 Mar 2016 15:25:25 -0700] rev 28604
chg: define PRINTF_FORMAT_ for non gnu C compiler Before this patch, if __GNUC__ is not defined, PRINTF_FORMAT_ will not be defined and will cause compilation error. This patch solves the issue by making sure PRINTF_FORMAT_ is defined. It allows chg to be compiled with tcc (http://bellard.org/tcc/) by: tcc -o chg *.c
Sun, 20 Mar 2016 15:11:34 -0700 chgserver: drop bundle.mainreporoot config
Jun Wu <quark@fb.com> [Sun, 20 Mar 2016 15:11:34 -0700] rev 28603
chgserver: drop bundle.mainreporoot config Before this patch, although chgserver drops repo object by setting it to None, there is another side effect loading a repo: setting bundle.mainreporoot. This patch explicitly sets it to empty to undo the side effect. It will make chg pass test-strip.t.
Sun, 20 Mar 2016 10:44:15 -0700 chgserver: drop old hack to recreate ui on HGPLAIN change
Yuya Nishihara <yuya@tcha.org> [Sun, 20 Mar 2016 10:44:15 -0700] rev 28602
chgserver: drop old hack to recreate ui on HGPLAIN change It's been superseded by config/env hash. A log message is simplified as we no longer need a diff of environment variables. Also, _loadnewui() is changed to require args since it can't copy old --config values without args.
Sat, 19 Mar 2016 16:37:47 -0700 graphmod: allow edges to end early
Martijn Pieters <mjpieters@fb.com> [Sat, 19 Mar 2016 16:37:47 -0700] rev 28601
graphmod: allow edges to end early Rather than draw an edge all the way to the bottom of the graph, make it possible to end an edge to parents that are not part of the graph early on. This results in a far cleaner graph. Any edge type can be set to end early; set the ui.graphstyle.<edgetype> parameter to the empty string to enable this. For example, setting the following configuration: [ui] graphstyle.grandparent = : graphstyle.missing = would result in a graph like this: o changeset: 32:d06dffa21a31 |\ parent: 27:886ed638191b | : parent: 31:621d83e11f67 | : o : changeset: 31:621d83e11f67 |\: parent: 21:d42a756af44d | : parent: 30:6e11cd4b648f | : o : changeset: 30:6e11cd4b648f |\ \ parent: 28:44ecd0b9ae99 | ~ : parent: 29:cd9bb2be7593 | / o : changeset: 28:44ecd0b9ae99 |\ \ parent: 1:6db2ef61d156 | ~ : parent: 26:7f25b6c2f0b9 | / o : changeset: 26:7f25b6c2f0b9 |\ \ parent: 18:1aa84d96232a | | : parent: 25:91da8ed57247 | | : | o : changeset: 25:91da8ed57247 | |\: parent: 21:d42a756af44d | | : parent: 24:a9c19a3d96b7 | | : | o : changeset: 24:a9c19a3d96b7 | |\ \ parent: 0:e6eb3150255d | | ~ : parent: 23:a01cddf0766d | | / | o : changeset: 23:a01cddf0766d | |\ \ parent: 1:6db2ef61d156 | | ~ : parent: 22:e0d9cccacb5d | | / | o : changeset: 22:e0d9cccacb5d |/:/ parent: 18:1aa84d96232a | : parent: 21:d42a756af44d | : | o changeset: 21:d42a756af44d | |\ parent: 19:31ddc2c1573b | | | parent: 20:d30ed6450e32 | | | +---o changeset: 20:d30ed6450e32 | | | parent: 0:e6eb3150255d | | ~ parent: 18:1aa84d96232a | | | o changeset: 19:31ddc2c1573b | |\ parent: 15:1dda3f72782d | ~ ~ parent: 17:44765d7c06e0 | o changeset: 18:1aa84d96232a parent: 1:6db2ef61d156 parent: 15:1dda3f72782d The default configuration leaves all 3 types set to |. This is part of the work towards moving smartlog upstream; currently smartlog injects extra nodes into the graph to indicate grandparent relationships (nodes elided).
Sat, 19 Mar 2016 16:46:15 -0700 graphmod: allow for different styles for different edge types
Martijn Pieters <mjpieters@fb.com> [Sat, 19 Mar 2016 16:46:15 -0700] rev 28600
graphmod: allow for different styles for different edge types Rather than draw all edges as solid lines, allow for using different styles for different edge types. For example you could use dotted lines for edges that do not connect to a parent, and dashed lines when connecting to a grandparent (implying missing nodes in between). For example, setting the following configuration: [ui] graphstyle.grandparent = : graphstyle.missing = . would result in a graph like this: o changeset: 32:d06dffa21a31 |\ parent: 27:886ed638191b | : parent: 31:621d83e11f67 | : o : changeset: 31:621d83e11f67 |\: parent: 21:d42a756af44d | : parent: 30:6e11cd4b648f | : o : changeset: 30:6e11cd4b648f |\ \ parent: 28:44ecd0b9ae99 | . : parent: 29:cd9bb2be7593 | . : o . : changeset: 28:44ecd0b9ae99 |\ \ \ parent: 1:6db2ef61d156 | . . : parent: 26:7f25b6c2f0b9 | . . : o . . : changeset: 26:7f25b6c2f0b9 |\ \ \ \ parent: 18:1aa84d96232a | | . . : parent: 25:91da8ed57247 | | . . : | o-----+ changeset: 25:91da8ed57247 | | . . : parent: 21:d42a756af44d | | . . : parent: 24:a9c19a3d96b7 | | . . : | o . . : changeset: 24:a9c19a3d96b7 | |\ \ \ \ parent: 0:e6eb3150255d | | . . . : parent: 23:a01cddf0766d | | . . . : | o---+ . : changeset: 23:a01cddf0766d | | . . . : parent: 1:6db2ef61d156 | | . . . : parent: 22:e0d9cccacb5d | | . . . : | o-------+ changeset: 22:e0d9cccacb5d | . . . . : parent: 18:1aa84d96232a |/ / / / / parent: 21:d42a756af44d | . . . : | . . . o changeset: 21:d42a756af44d | . . . |\ parent: 19:31ddc2c1573b | . . . | | parent: 20:d30ed6450e32 | . . . | | +-+-------o changeset: 20:d30ed6450e32 | . . . | parent: 0:e6eb3150255d | . . . | parent: 18:1aa84d96232a | . . . | | . . . o changeset: 19:31ddc2c1573b | . . . .\ parent: 15:1dda3f72782d | . . . . | parent: 17:44765d7c06e0 | . . . . | o---+---+ | changeset: 18:1aa84d96232a . . . . | parent: 1:6db2ef61d156 / / / / / parent: 15:1dda3f72782d . . . . . Edge styles can be altered by setting the following one-character config options:: [ui] graphstyle.parent = | graphstyle.grandparent = : graphstyle.missing = . The default configuration leaves all 3 types set to |, leaving graph styles unaffected. This is part of the work towards moving smartlog upstream; currently smartlog injects extra nodes into the graph to indicate grandparent relationships (nodes elided).
Thu, 17 Mar 2016 18:32:10 +0000 chgserver: use global ui instead of repo ui for dispatch.request.ui
Jun Wu <quark@fb.com> [Thu, 17 Mar 2016 18:32:10 +0000] rev 28599
chgserver: use global ui instead of repo ui for dispatch.request.ui Before this patch, chgserver will use repo ui as dispatch.request.ui, while req.ui is designed to be global ui without repo config. Passing repo ui as dispatch.request.ui leads to repo.ui being incorrect, which can lead to unwanted results. For example, if the repo config has [extensions], it could affect which localrepository.featuresetupfuncs get executed and the repo may have an incorrect list of supported requirements. This patch changes _renewui to return both global ui and repo ui. The global ui is passed to req.ui, and the repo ui is used to calculate confighash. It will make chg pass test-largefiles-misc.t and test-requires.t, which are both related to repo requirements.
Thu, 17 Mar 2016 18:34:32 +0000 progress: update comment to reflect implementation
timeless <timeless@mozdev.org> [Thu, 17 Mar 2016 18:34:32 +0000] rev 28598
progress: update comment to reflect implementation Progress has been on by default in core for a while, the comment was written before this happened.
Sun, 20 Mar 2016 04:54:35 +0000 tests: remove lines that enable progress extension
timeless <timeless@mozdev.org> [Sun, 20 Mar 2016 04:54:35 +0000] rev 28597
tests: remove lines that enable progress extension progress has not been an extension for a long time, it has been integrated into core, thus these lines have not done anything for a while.
Sat, 19 Mar 2016 14:26:10 -0400 run-tests: add support for automatically bisecting test failures
Augie Fackler <augie@google.com> [Sat, 19 Mar 2016 14:26:10 -0400] rev 28596
run-tests: add support for automatically bisecting test failures
(0) -10000 -3000 -1000 -300 -100 -50 -32 +32 +50 +100 +300 +1000 +3000 +10000 tip