[PATCH 2 of 4 reviewed by Augie] bundle2: use chunkbuffer for exchange.getbundle
pierre-yves.david at ens-lyon.org
pierre-yves.david at ens-lyon.org
Sat Apr 12 16:27:20 CDT 2014
# HG changeset patch
# User Pierre-Yves David <pierre-yves.david at fb.com>
# Date 1397278395 14400
# Sat Apr 12 00:53:15 2014 -0400
# Node ID 0f7e01e0c06f19b9b26c1b571a4b6de6b15d7cbd
# Parent dda41da069a49b7dc68b7fe8d01c3b58ba315ff6
bundle2: use chunkbuffer for exchange.getbundle
We can use `util.chunkbuffer` instead.
diff --git a/mercurial/exchange.py b/mercurial/exchange.py
--- a/mercurial/exchange.py
+++ b/mercurial/exchange.py
@@ -5,11 +5,10 @@
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2 or any later version.
from i18n import _
from node import hex, nullid
-import cStringIO
import errno
import util, scmutil, changegroup, base85
import discovery, phases, obsolete, bookmarks, bundle2
@@ -605,15 +604,11 @@ def getbundle(repo, source, heads=None,
yield 'HG10UN'
for c in cg.getchunks():
yield c
part = bundle2.part('changegroup', data=cgchunks())
bundler.addpart(part)
- temp = cStringIO.StringIO()
- for c in bundler.getchunks():
- temp.write(c)
- temp.seek(0)
- return bundle2.unbundle20(repo.ui, temp)
+ return bundle2.unbundle20(repo.ui, util.chunkbuffer(bundler.getchunks()))
class PushRaced(RuntimeError):
"""An exception raised during unbunding that indicate a push race"""
def check_heads(repo, their_heads, context):
More information about the Mercurial-devel
mailing list