Comments
Patch
@@ -44,6 +44,8 @@
urlerr = util.urlerr
urlreq = util.urlreq
+_NARROWACL_SECTION = 'narrowhgacl'
+
# Maps bundle version human names to changegroup versions.
_bundlespeccgversions = {'v1': '01',
'v2': '02',
@@ -2069,8 +2071,13 @@
# Don't send unless:
# - changeset are being exchanged,
# - the client supports it.
- if not (kwargs.get(r'cg', True)) or 'rev-branch-cache' not in b2caps:
+ # - narrow bundle isn't in play (not currently compatible).
+ if (not kwargs.get(r'cg', True)
+ or 'rev-branch-cache' not in b2caps
+ or kwargs.get(r'narrow', False)
+ or repo.ui.has_section(_NARROWACL_SECTION)):
return
+
outgoing = _computeoutgoing(repo, heads, common)
bundle2.addpartrevbranchcache(repo, bundler, outgoing)
@@ -487,19 +487,6 @@
origcgfn(*args, **kwargs)
exchange.getbundle2partsmapping['changegroup'] = wrappedcgfn
- # disable rev branch cache exchange when serving a narrow bundle
- # (currently incompatible with that part)
- origrbcfn = exchange.getbundle2partsmapping['cache:rev-branch-cache']
- def wrappedcgfn(*args, **kwargs):
- repo = args[1]
- if repo.ui.has_section(_NARROWACL_SECTION):
- return
- elif kwargs.get(r'narrow', False):
- return
- else:
- origrbcfn(*args, **kwargs)
- exchange.getbundle2partsmapping['cache:rev-branch-cache'] = wrappedcgfn
-
# Extend changegroup receiver so client can fixup after widen requests.
origcghandler = bundle2.parthandlermapping['changegroup']
def wrappedcghandler(op, inpart):