--- a/hgext/obsolete.py Fri Jul 27 15:04:55 2012 +0200
+++ b/hgext/obsolete.py Tue Jul 31 11:53:41 2012 +0200
@@ -436,7 +436,9 @@
if not repo.obsstore:
return {}
data = repo.obsstore._writemarkers()
- return {'dump': base85.b85encode(data)}
+ encdata = base85.b85encode(data)
+ return {'dump0': encdata,
+ 'dump': encdata} # legacy compat
def pushmarker(repo, key, old, new):
"""Push markers over pushkey"""
@@ -1189,8 +1191,12 @@
result = opull(remote, *args, **kwargs)
remoteobs = remote.listkeys('obsolete')
if 'dump' in remoteobs:
- data = base85.b85decode(remoteobs['dump'])
- self.obsstore.mergemarkers(data)
+ remoteobs['dump0'] = remoteobs.pop('dump')
+ if 'dump0' in remoteobs:
+ for key, values in remoteobs.iteritems():
+ if key.startswith('dump'):
+ data = base85.b85decode(remoteobs['dump0'])
+ self.obsstore.mergemarkers(data)
self._clearobsoletecache()
self._turn_extinct_secret()
return result
@@ -1211,7 +1217,7 @@
raise
if 'obsolete' in remote.listkeys('namespaces') and self.obsstore:
data = self.obsstore._writemarkers()
- r = remote.pushkey('obsolete', 'dump', '',
+ r = remote.pushkey('obsolete', 'dump0', '',
base85.b85encode(data))
if not r:
self.ui.warn(_('failed to push obsolete markers!\n'))