D1951: bundle: condition the changegroup part when creating a new bundle
lothiraldan (Boris Feld)
phabricator at mercurial-scm.org
Fri Feb 2 09:31:08 UTC 2018
lothiraldan updated this revision to Diff 5150.
REPOSITORY
rHG Mercurial
CHANGES SINCE LAST UPDATE
https://phab.mercurial-scm.org/D1951?vs=5023&id=5150
REVISION DETAIL
https://phab.mercurial-scm.org/D1951
AFFECTED FILES
mercurial/bundle2.py
mercurial/commands.py
CHANGE DETAILS
diff --git a/mercurial/commands.py b/mercurial/commands.py
--- a/mercurial/commands.py
+++ b/mercurial/commands.py
@@ -1257,7 +1257,7 @@
compopts['level'] = complevel
- contentopts = {'cg.version': cgversion}
+ contentopts = {'cg.version': cgversion, 'changegroup': True}
if repo.ui.configbool('experimental', 'evolution.bundle-obsmarker'):
contentopts['obsolescence'] = True
if repo.ui.configbool('experimental', 'bundle-phases'):
diff --git a/mercurial/bundle2.py b/mercurial/bundle2.py
--- a/mercurial/bundle2.py
+++ b/mercurial/bundle2.py
@@ -1574,19 +1574,21 @@
# different right now. So we keep them separated for now for the sake of
# simplicity.
- # we always want a changegroup in such bundle
- cgversion = opts.get('cg.version')
- if cgversion is None:
- cgversion = changegroup.safeversion(repo)
- cg = changegroup.makechangegroup(repo, outgoing, cgversion, source)
- part = bundler.newpart('changegroup', data=cg.getchunks())
- part.addparam('version', cg.version)
- if 'clcount' in cg.extras:
- part.addparam('nbchanges', '%d' % cg.extras['clcount'],
- mandatory=False)
- if opts.get('phases') and repo.revs('%ln and secret()',
- outgoing.missingheads):
- part.addparam('targetphase', '%d' % phases.secret, mandatory=False)
+ # we might not always want a changegroup in such bundle, for example in
+ # stream bundles
+ if opts.get('changegroup', True):
+ cgversion = opts.get('cg.version')
+ if cgversion is None:
+ cgversion = changegroup.safeversion(repo)
+ cg = changegroup.makechangegroup(repo, outgoing, cgversion, source)
+ part = bundler.newpart('changegroup', data=cg.getchunks())
+ part.addparam('version', cg.version)
+ if 'clcount' in cg.extras:
+ part.addparam('nbchanges', '%d' % cg.extras['clcount'],
+ mandatory=False)
+ if opts.get('phases') and repo.revs('%ln and secret()',
+ outgoing.missingheads):
+ part.addparam('targetphase', '%d' % phases.secret, mandatory=False)
addparttagsfnodescache(repo, bundler, outgoing)
To: lothiraldan, #hg-reviewers
Cc: mercurial-devel
More information about the Mercurial-devel
mailing list