D3290: logexchange: use command executor for wire protocol commands
indygreg (Gregory Szorc)
phabricator at mercurial-scm.org
Thu Apr 12 19:59:42 UTC 2018
indygreg created this revision.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.
REPOSITORY
rHG Mercurial
REVISION DETAIL
https://phab.mercurial-scm.org/D3290
AFFECTED FILES
mercurial/logexchange.py
CHANGE DETAILS
diff --git a/mercurial/logexchange.py b/mercurial/logexchange.py
--- a/mercurial/logexchange.py
+++ b/mercurial/logexchange.py
@@ -127,14 +127,25 @@
remoterepo is the peer instance
"""
remotepath = activepath(localrepo, remoterepo)
- bookmarks = remoterepo.listkeys('bookmarks')
+
+ with remoterepo.commandexecutor() as e:
+ fbookmarks = e.callcommand('listkeys', {
+ 'namespace': 'bookmarks',
+ })
+
+ bookmarks = fbookmarks.result()
+
# on a push, we don't want to keep obsolete heads since
# they won't show up as heads on the next pull, so we
# remove them here otherwise we would require the user
# to issue a pull to refresh the storage
bmap = {}
repo = localrepo.unfiltered()
- for branch, nodes in remoterepo.branchmap().iteritems():
+
+ with remoterepo.commandexecutor() as e:
+ fbranchmap = e.callcommand('branchmap', {})
+
+ for branch, nodes in fbranchmap.result().iteritems():
bmap[branch] = []
for node in nodes:
if node in repo and not repo[node].obsolete():
To: indygreg, #hg-reviewers
Cc: mercurial-devel
More information about the Mercurial-devel
mailing list