# HG changeset patch # User Gregory Szorc # Date 2018-10-02 19:43:54 # Node ID 51f10e6d66c726267b27100bb27022d4aaeadfe9 # Parent 83146d176c0346d88ed80cb66294e2029351a1a7 streamclone: don't support stream clone unless repo feature present This change means custom repository types must opt in to enabling stream clone. This seems reasonable, as stream clones are a very low-level feature that has historically assumed the use of revlogs and the layout of .hg/ that they entail. Differential Revision: https://phab.mercurial-scm.org/D4853 diff --git a/mercurial/streamclone.py b/mercurial/streamclone.py --- a/mercurial/streamclone.py +++ b/mercurial/streamclone.py @@ -18,6 +18,7 @@ from . import ( error, phases, pycompat, + repository, store, util, ) @@ -178,6 +179,9 @@ def maybeperformlegacystreamclone(pullop def allowservergeneration(repo): """Whether streaming clones are allowed from the server.""" + if repository.REPO_FEATURE_STREAM_CLONE not in repo.features: + return False + if not repo.ui.configbool('server', 'uncompressed', untrusted=True): return False