diff --git a/hgext/clonebundles.py b/hgext/clonebundles.py index 37f24b14fa..d6508c4be7 100644 --- a/hgext/clonebundles.py +++ b/hgext/clonebundles.py @@ -164,15 +164,6 @@ Mercurial server when the bundle hosting service fails. The following config options influence the behavior of the clone bundles feature: -ui.clonebundleadvertise - Whether the server advertises the existence of the clone bundles feature - to compatible clients that aren't using it. - - When this is enabled (the default), a server will send a message to - compatible clients performing a traditional clone informing them of the - available clone bundles feature. Compatible clients are those that support - bundle2 and are advertising support for the clone bundles feature. - ui.clonebundlefallback Whether to automatically fall back to a traditional clone in case of clone bundles failure. Defaults to false for reasons described above. @@ -190,10 +181,7 @@ experimental.clonebundleprefers available bundle will be downloaded. """ -from mercurial.i18n import _ -from mercurial.node import nullid from mercurial import ( - exchange, extensions, wireproto, ) @@ -211,44 +199,5 @@ def capabilities(orig, repo, proto): return caps -@exchange.getbundle2partsgenerator('clonebundlesadvertise', 0) -def advertiseclonebundlespart(bundler, repo, source, bundlecaps=None, - b2caps=None, heads=None, common=None, - cbattempted=None, **kwargs): - """Inserts an output part to advertise clone bundles availability.""" - # Allow server operators to disable this behavior. - # # experimental config: ui.clonebundleadvertise - if not repo.ui.configbool('ui', 'clonebundleadvertise', True): - return - - # Only advertise if a manifest is present. - if not repo.opener.exists('clonebundles.manifest'): - return - - # And when changegroup data is requested. - if not kwargs.get('cg', True): - return - - # And when the client supports clone bundles. - if cbattempted is None: - return - - # And when the client didn't attempt a clone bundle as part of this pull. - if cbattempted: - return - - # And when a full clone is requested. - # Note: client should not send "cbattempted" for regular pulls. This check - # is defense in depth. - if common and common != [nullid]: - return - - msg = _('this server supports the experimental "clone bundles" feature ' - 'that should enable faster and more reliable cloning\n' - 'help test it by setting the "experimental.clonebundles" config ' - 'flag to "true"') - - bundler.newpart('output', data=msg) - def extsetup(ui): extensions.wrapfunction(wireproto, '_capabilities', capabilities) diff --git a/tests/test-clonebundles.t b/tests/test-clonebundles.t index 73efae9a77..4578ee7b10 100644 --- a/tests/test-clonebundles.t +++ b/tests/test-clonebundles.t @@ -68,17 +68,6 @@ Empty manifest file results in retrieval adding file changes added 2 changesets with 2 changes to 2 files -Server advertises presence of feature to client requesting full clone - - $ hg --config experimental.clonebundles=false clone -U http://localhost:$HGPORT advertise-on-clone - requesting all changes - remote: this server supports the experimental "clone bundles" feature that should enable faster and more reliable cloning - remote: help test it by setting the "experimental.clonebundles" config flag to "true" - adding changesets - adding manifests - adding file changes - added 2 changesets with 2 changes to 2 files - Manifest file with invalid URL aborts $ echo 'http://does.not.exist/bundle.hg' > server/.hg/clonebundles.manifest