125 pull or clone operation. |
125 pull or clone operation. |
126 localrepo is our local repository |
126 localrepo is our local repository |
127 remoterepo is the peer instance |
127 remoterepo is the peer instance |
128 """ |
128 """ |
129 remotepath = activepath(localrepo, remoterepo) |
129 remotepath = activepath(localrepo, remoterepo) |
130 bookmarks = remoterepo.listkeys('bookmarks') |
130 |
|
131 with remoterepo.commandexecutor() as e: |
|
132 bookmarks = e.callcommand('listkeys', { |
|
133 'namespace': 'bookmarks', |
|
134 }).result() |
|
135 |
131 # on a push, we don't want to keep obsolete heads since |
136 # on a push, we don't want to keep obsolete heads since |
132 # they won't show up as heads on the next pull, so we |
137 # they won't show up as heads on the next pull, so we |
133 # remove them here otherwise we would require the user |
138 # remove them here otherwise we would require the user |
134 # to issue a pull to refresh the storage |
139 # to issue a pull to refresh the storage |
135 bmap = {} |
140 bmap = {} |
136 repo = localrepo.unfiltered() |
141 repo = localrepo.unfiltered() |
137 for branch, nodes in remoterepo.branchmap().iteritems(): |
142 |
|
143 with remoterepo.commandexecutor() as e: |
|
144 branchmap = e.callcommand('branchmap', {}).result() |
|
145 |
|
146 for branch, nodes in branchmap.iteritems(): |
138 bmap[branch] = [] |
147 bmap[branch] = [] |
139 for node in nodes: |
148 for node in nodes: |
140 if node in repo and not repo[node].obsolete(): |
149 if node in repo and not repo[node].obsolete(): |
141 bmap[branch].append(hex(node)) |
150 bmap[branch].append(hex(node)) |
142 |
151 |