bundle2: generate check:heads in a independent function
authorRyan McElroy <rmcelroy@fb.com>
Thu, 01 Oct 2015 10:48:14 -0700
changeset 26428 b75c4651b186
parent 26427 97dc6ab42aad
child 26429 703d331c44ac
bundle2: generate check:heads in a independent function
mercurial/exchange.py
--- a/mercurial/exchange.py	Thu Oct 01 12:17:46 2015 -0500
+++ b/mercurial/exchange.py	Thu Oct 01 10:48:14 2015 -0700
@@ -475,6 +475,14 @@
         return func
     return dec
 
+def _pushb2ctxcheckheads(pushop, bundler):
+    """Generate race condition checking parts
+
+    Exists as an indepedent function to aid extensions
+    """
+    if not pushop.force:
+        bundler.newpart('check:heads', data=iter(pushop.remoteheads))
+
 @b2partsgenerator('changeset')
 def _pushb2ctx(pushop, bundler):
     """handle changegroup push through bundle2
@@ -490,8 +498,9 @@
     pushop.repo.prepushoutgoinghooks(pushop.repo,
                                      pushop.remote,
                                      pushop.outgoing)
-    if not pushop.force:
-        bundler.newpart('check:heads', data=iter(pushop.remoteheads))
+
+    _pushb2ctxcheckheads(pushop, bundler)
+
     b2caps = bundle2.bundle2caps(pushop.remote)
     version = None
     cgversions = b2caps.get('changegroup')