diff mercurial/exchange.py @ 22034:5f57bc77657c

push: move the list of obsmarker to push into the push operation The list is now carried in the push operation, this will let extensions override it.
author Pierre-Yves David <pierre-yves.david@fb.com>
date Sat, 05 Jul 2014 19:17:09 +0200
parents 342e7c428e47
children 24bb01f42e82
line wrap: on
line diff
--- a/mercurial/exchange.py	Fri Jul 04 19:31:49 2014 +0200
+++ b/mercurial/exchange.py	Sat Jul 05 19:17:09 2014 +0200
@@ -81,6 +81,8 @@
         self.outdatedphases = None
         # phases changes that must be pushed if changeset push fails
         self.fallbackoutdatedphases = None
+        # outgoing obsmarkers
+        self.outobsmarkers = repo.obsstore
 
     @util.propertycache
     def futureheads(self):
@@ -590,7 +592,7 @@
     if (obsolete._enabled and repo.obsstore and
         'obsolete' in remote.listkeys('namespaces')):
         rslts = []
-        remotedata = obsolete._pushkeyescape(repo.obsstore)
+        remotedata = obsolete._pushkeyescape(pushop.outobsmarkers)
         for key in sorted(remotedata, reverse=True):
             # reverse sort to ensure we end with dump0
             data = remotedata[key]