bundle2: lazily generate the changegroup part in exchange.getbundle
Now that we have lazy generation of parts, let's use it.
--- a/mercurial/exchange.py Fri Apr 11 08:04:16 2014 -0700
+++ b/mercurial/exchange.py Sat Apr 12 14:56:55 2014 -0400
@@ -601,9 +601,11 @@
# very crude first implementation,
# the bundle API will change and the generation will be done lazily.
bundler = bundle2.bundle20(repo.ui)
- tempname = changegroup.writebundle(cg, None, 'HG10UN')
- data = open(tempname).read()
- part = bundle2.part('changegroup', data=data)
+ def cgchunks(cg=cg):
+ 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():