[obsolet] base64 encore obsolete rel for pushkey Yop this is ugly
diff --git a/hgext/obsolete.py b/hgext/obsolete.py --- a/hgext/obsolete.py +++ b/hgext/obsolete.py @@ -80,6 +80,8 @@ except ImportError: from mercurial.i18n import _ +import base64 + from mercurial import util from mercurial import context from mercurial import revset @@ -221,7 +223,7 @@ def listobsolete(repo): XXX this have be improved""" tmp = StringIO() _obsserialise(repo._obssubrels, tmp) - return {'relations': tmp.getvalue()} + return {'relations': base64.b64encode(tmp.getvalue())} pushkey.register('obsolete', pushobsolete, listobsolete) @@ -405,7 +407,8 @@ def reposetup(ui, repo): result = opull(remote, *args, **kwargs) if 'obsolete' in remote.listkeys('namespaces'): tmp = StringIO() - tmp.write(remote.listkeys('obsolete')['relations']) + rels = remote.listkeys('obsolete')['relations'] + tmp.write(base64.b64decode(rels)) tmp.seek(0) obsrels = _obsdeserialise(tmp) for sub, objs in obsrels.iteritems():