diff -r 9c60d93fd3ab -r 076f1ff43f0f mercurial/streamclone.py --- a/mercurial/streamclone.py Mon May 08 18:47:24 2017 -0700 +++ b/mercurial/streamclone.py Mon May 08 20:01:06 2017 -0700 @@ -80,11 +80,21 @@ streamreqs = remote.capable('streamreqs') # This is weird and shouldn't happen with modern servers. if not streamreqs: + pullop.repo.ui.warn(_( + 'warning: stream clone requested but server has them ' + 'disabled\n')) return False, None streamreqs = set(streamreqs.split(',')) # Server requires something we don't support. Bail. - if streamreqs - repo.supportedformats: + missingreqs = streamreqs - repo.supportedformats + if missingreqs: + pullop.repo.ui.warn(_( + 'warning: stream clone requested but client is missing ' + 'requirements: %s\n') % ', '.join(sorted(missingreqs))) + pullop.repo.ui.warn( + _('(see https://www.mercurial-scm.org/wiki/MissingRequirement ' + 'for more information)\n')) return False, None requirements = streamreqs