mercurial/httprepo.py
changeset 8053 976170068286
parent 7752 998fc8f62539
child 8054 b13cc762314a
equal deleted inserted replaced
8050:087cc65bebff 8053:976170068286
    97         try:
    97         try:
    98             proto = resp.getheader('content-type')
    98             proto = resp.getheader('content-type')
    99         except AttributeError:
    99         except AttributeError:
   100             proto = resp.headers['content-type']
   100             proto = resp.headers['content-type']
   101 
   101 
       
   102         safeurl = url.hidepassword(self._url)
   102         # accept old "text/plain" and "application/hg-changegroup" for now
   103         # accept old "text/plain" and "application/hg-changegroup" for now
   103         if not (proto.startswith('application/mercurial-') or
   104         if not (proto.startswith('application/mercurial-') or
   104                 proto.startswith('text/plain') or
   105                 proto.startswith('text/plain') or
   105                 proto.startswith('application/hg-changegroup')):
   106                 proto.startswith('application/hg-changegroup')):
   106             self.ui.debug(_("Requested URL: '%s'\n") % cu)
   107             self.ui.debug(_("Requested URL: '%s'\n") % cu)
   107             raise error.RepoError(_("'%s' does not appear to be an hg repository")
   108             raise error.RepoError(_("'%s' does not appear to be an hg repository")
   108                                   % self._url)
   109                                   % safeurl)
   109 
   110 
   110         if proto.startswith('application/mercurial-'):
   111         if proto.startswith('application/mercurial-'):
   111             try:
   112             try:
   112                 version = proto.split('-', 1)[1]
   113                 version = proto.split('-', 1)[1]
   113                 version_info = tuple([int(n) for n in version.split('.')])
   114                 version_info = tuple([int(n) for n in version.split('.')])
   114             except ValueError:
   115             except ValueError:
   115                 raise error.RepoError(_("'%s' sent a broken Content-Type "
   116                 raise error.RepoError(_("'%s' sent a broken Content-Type "
   116                                         "header (%s)") % (self._url, proto))
   117                                         "header (%s)") % (safeurl, proto))
   117             if version_info > (0, 1):
   118             if version_info > (0, 1):
   118                 raise error.RepoError(_("'%s' uses newer protocol %s") %
   119                 raise error.RepoError(_("'%s' uses newer protocol %s") %
   119                                       (self._url, version))
   120                                       (safeurl, version))
   120 
   121 
   121         return resp
   122         return resp
   122 
   123 
   123     def do_read(self, cmd, **args):
   124     def do_read(self, cmd, **args):
   124         fp = self.do_cmd(cmd, **args)
   125         fp = self.do_cmd(cmd, **args)