Comments
Patch
@@ -187,30 +187,35 @@ class pushoperation(object):
str(phases.draft),
str(phases.public))
if not r:
repo.ui.warn(_('updating %s to public failed!\n')
% newremotehead)
- repo.ui.debug('try to push obsolete markers to remote\n')
- if (obsolete._enabled and repo.obsstore and
- 'obsolete' in remote.listkeys('namespaces')):
- rslts = []
- remotedata = repo.listkeys('obsolete')
- for key in sorted(remotedata, reverse=True):
- # reverse sort to ensure we end with dump0
- data = remotedata[key]
- rslts.append(remote.pushkey('obsolete', key, '', data))
- if [r for r in rslts if not r]:
- msg = _('failed to push some obsolete markers!\n')
- repo.ui.warn(msg)
+ self._pushobsolescence()
finally:
if lock is not None:
lock.release()
finally:
locallock.release()
self._pushbookmarks()
return ret
+ def _pushobsolescence(self):
+ """Send local obsolescence marker to remote"""
+ self.repo.ui.debug('try to push obsolete markers to remote\n')
+ if (obsolete._enabled and self.repo.obsstore and
+ 'obsolete' in self.remote.listkeys('namespaces')):
+ rslts = []
+ remotedata = self.repo.listkeys('obsolete')
+ for key in sorted(remotedata, reverse=True):
+ # reverse sort to ensure we end with dump0
+ data = remotedata[key]
+ rslts.append(self.remote.pushkey('obsolete', key, '', data))
+ if [r for r in rslts if not r]:
+ msg = _('failed to push some obsolete markers!\n')
+ self.repo.ui.warn(msg)
+
+
def _pushbookmarks(self):
"""synchronise local bookmark position to remote"""
repo = self.repo
remote = self.remote
unfi = repo.unfiltered()