# HG changeset patch # User Pierre-Yves David # Date 1559867102 -7200 # Node ID daab6d66568717e184f121cab035a81eaefe46ef # Parent 194adaeb84e8a8d7d63625b6174931504dc209a4# Parent 344befcf63aaeae7f743575411192ee8f90a58e2 branching: merge with 9.0.0 diff -r 194adaeb84e8 -r daab6d665687 .hgtags --- a/.hgtags Fri Jun 07 02:24:08 2019 +0200 +++ b/.hgtags Fri Jun 07 02:25:02 2019 +0200 @@ -79,3 +79,4 @@ 8c4289d0e91e95b3281c378e1ac3f4ff4678b4d3 8.4.0 33c617626fd90a0a00e831b4762f64fecb609317 8.5.0 05c9dcf5512ed77490a35b4d6b1c3fe860259f48 8.5.1 +756db65030c64b22836fe236d1db3b95477e3ef7 9.0.0 diff -r 194adaeb84e8 -r daab6d665687 CHANGELOG --- a/CHANGELOG Fri Jun 07 02:24:08 2019 +0200 +++ b/CHANGELOG Fri Jun 07 02:25:02 2019 +0200 @@ -1,7 +1,7 @@ Changelog ========= -8.6.0 - in progress +9.0.0 -- 2019-06-06 ------------------- * evolve: preserve the working directory after resolving instability (BC) @@ -13,9 +13,20 @@ * evolve: use "unstable" instead of "troubled" * evolve: run multiple stabilisation in the same transaction * evolve: improve users merging during content-divergence + * evolve: reduce the verbosity of `content-divergence` resolution + * documentation: various improvement and vocabulary update + * packaging: fix documentation build step on debian + * progress: improved support in various command + * help: avoid duplicated entry for some templates * obsdiscovery: drop support for deprecated discovery protocol `obshash` (Make sure your servers are configured to use the obshashrange one. It is available in evolve 7.2 and above.) + +(topic 0.15.0) + + * stack: handle hash sizes when --debug flag is provided + * stack: remove 'topic.' prefix from colors/labels (BC) + * stack: always provide (full) node hash to non-default --template * topic: drop the b# alias. It conflicted with normal hashes. * topic: add a `experimental.topic.allow-publish` option (default: True) diff -r 194adaeb84e8 -r daab6d665687 debian/changelog --- a/debian/changelog Fri Jun 07 02:24:08 2019 +0200 +++ b/debian/changelog Fri Jun 07 02:25:02 2019 +0200 @@ -1,8 +1,8 @@ -mercurial-evolve (8.5.1-0) UNRELEASED; urgency=medium +mercurial-evolve (9.0.0-1) unstable; urgency=medium * new upstream release - -- Pierre-Yves David Tue, 23 Apr 2019 15:30:11 +0200 + -- Pierre-Yves David Thu, 06 Jun 2019 14:17:12 +0200 mercurial-evolve (8.5.0-1) unstable; urgency=medium diff -r 194adaeb84e8 -r daab6d665687 hgext3rd/evolve/__init__.py --- a/hgext3rd/evolve/__init__.py Fri Jun 07 02:24:08 2019 +0200 +++ b/hgext3rd/evolve/__init__.py Fri Jun 07 02:25:02 2019 +0200 @@ -51,39 +51,38 @@ # re-exchange all markers every time. evolution.obsdiscovery = yes -Obsolescence Markers Discovery Experiment -========================================= +Obsolescence Markers Discovery +============================== -We are experimenting with a new protocol to discover common markers between -local and remote repositories. This experiment is still at an early stage but -is already raising better results than the previous version (when usable). +The evolve extension containts an experimental new protocol to discover common +markers between local and remote repositories. -"Large" repositories (hundreds of thousand) are currently unsupported. Some key -algorithm has a naive implementation with too aggressive caching, creating -memory consumption issue (this will get fixed). +"Large" repositories (hundreds of thousands) will take some time to warm the +necessary cache. Some key algorithm has a naive implementation that can result +in large memory or CPU Load. -Medium sized repositories works fine, but be prepared for a noticeable initial -cache filling. for the Mercurial repository, this is around 20 seconds - -The following config control the experiment:: +The following config controls the new protocol:: [experimental] # enable new discovery protocol - # (needed on both client and server) + # default to "yes" obshashrange = yes # control cache warming at the end of transaction - # yes: warm all caches at the end of each transaction, + # yes: warm all caches at the end of each transaction + # (recommended for server), # off: warm no caches at the end of transaction, - # auto: warm cache at the end of server side transaction (default). + # (no cache overhead during transaction, + # but cache will be warm from scratch on usage) + # auto: warm cache at the end of server side transaction(ie: push) + # (default). obshashrange.warm-cache = 'auto' - $ hg debugupdatecache +When you switch to using this protocol, we recommand that you explicitly warm +cache for your server side repositories.:: -It is recommended to enable the blackbox extension. It gathers useful data about -the experiment. It is shipped with Mercurial so no extra install is needed:: - $ hg debugupdatecache + $ hg debugupdatecache It is recommended to enable the blackbox extension. It gathers useful data about the experiment. It is shipped with Mercurial so no extra install is needed:: @@ -104,7 +103,7 @@ # ensuring no large repository will get affected. obshashrange.max-revs = 100000 # default is None -For very large repositories. it is currently recommended to disable obsmarkers +For very large repositories, it might be useful to disable obsmarkers discovery (Make sure you follow release announcement to know when you can turn it back on):: diff -r 194adaeb84e8 -r daab6d665687 hgext3rd/evolve/metadata.py --- a/hgext3rd/evolve/metadata.py Fri Jun 07 02:24:08 2019 +0200 +++ b/hgext3rd/evolve/metadata.py Fri Jun 07 02:25:02 2019 +0200 @@ -5,7 +5,7 @@ # This software may be used and distributed according to the terms of the # GNU General Public License version 2 or any later version. -__version__ = '8.6.0.dev' +__version__ = '9.1.0.dev' testedwith = '4.5.2 4.6.2 4.7 4.8 4.9 5.0' minimumhgversion = '4.5' buglink = 'https://bz.mercurial-scm.org/' diff -r 194adaeb84e8 -r daab6d665687 hgext3rd/evolve/templatekw.py --- a/hgext3rd/evolve/templatekw.py Fri Jun 07 02:24:08 2019 +0200 +++ b/hgext3rd/evolve/templatekw.py Fri Jun 07 02:25:02 2019 +0200 @@ -55,11 +55,15 @@ plural='troubles') _sp = templatekw.showpredecessors -def showprecursors(context, mapping): - return _sp(context, mapping) -showprecursors.__doc__ = _sp._origdoc -_tk = templatekw.templatekeyword("precursors", requires=_sp._requires) -_tk(showprecursors) +if util.safehasattr(_sp, '_requires'): + def showprecursors(context, mapping): + return _sp(context, mapping) + showprecursors.__doc__ = _sp._origdoc + _tk = templatekw.templatekeyword("precursors", requires=_sp._requires) + _tk(showprecursors) +else: + templatekw.keywords["precursors"] = _sp + def closestsuccessors(repo, nodeid): """ returns the closest visible successors sets instead. @@ -67,11 +71,14 @@ return directsuccessorssets(repo, nodeid) _ss = templatekw.showsuccessorssets -def showsuccessors(context, mapping): - return _ss(context, mapping) -showsuccessors.__doc__ = _ss._origdoc -_tk = templatekw.templatekeyword("successors", requires=_ss._requires) -_tk(showsuccessors) +if util.safehasattr(_ss, '_requires'): + def showsuccessors(context, mapping): + return _ss(context, mapping) + showsuccessors.__doc__ = _ss._origdoc + _tk = templatekw.templatekeyword("successors", requires=_ss._requires) + _tk(showsuccessors) +else: + templatekw.keywords["successors"] = _ss def _getusername(ui): """the default username in the config or None""" diff -r 194adaeb84e8 -r daab6d665687 hgext3rd/topic/__init__.py --- a/hgext3rd/topic/__init__.py Fri Jun 07 02:24:08 2019 +0200 +++ b/hgext3rd/topic/__init__.py Fri Jun 07 02:25:02 2019 +0200 @@ -186,7 +186,7 @@ 'topic.active': 'green', } -__version__ = '0.15.0.dev' +__version__ = '0.16.0.dev' testedwith = '4.5.2 4.6.2 4.7 4.8 4.9 5.0' minimumhgversion = '4.5'