diff --git a/mercurial/localrepo.py b/mercurial/localrepo.py --- a/mercurial/localrepo.py +++ b/mercurial/localrepo.py @@ -1322,7 +1322,11 @@ **pycompat.strkwargs(hookargs)) reporef()._afterlock(hookfunc) tr.addfinalize('txnclose-hook', txnclosehook) - tr.addpostclose('warms-cache', self._buildcacheupdater(tr)) + # Include a leading "-" to make it happen before the transaction summary + # reports registered via scmutil.registersummarycallback() whose names + # are 00-txnreport etc. That way, the caches will be warm when the + # callbacks run. + tr.addpostclose('-warm-cache', self._buildcacheupdater(tr)) def txnaborthook(tr2): """To be run if transaction is aborted """ diff --git a/tests/test-obsolete-changeset-exchange.t b/tests/test-obsolete-changeset-exchange.t --- a/tests/test-obsolete-changeset-exchange.t +++ b/tests/test-obsolete-changeset-exchange.t @@ -171,6 +171,6 @@ bundle2-input-part: total payload size 24 bundle2-input-bundle: 2 parts total checking for updated bookmarks + updating the branch cache new changesets bec0734cd68e - updating the branch cache (run 'hg heads' to see heads, 'hg merge' to merge)