hgext/schemes.py
changeset 49850 bcc45b33efb2
parent 49757 5f71fff8dc74
child 50791 d51a76b5262b
equal deleted inserted replaced
49849:de9ffb82ef4d 49850:bcc45b33efb2
   133     b'gcode': b'https://{1}.googlecode.com/hg/',
   133     b'gcode': b'https://{1}.googlecode.com/hg/',
   134     b'kiln': b'https://{1}.kilnhg.com/Repo/',
   134     b'kiln': b'https://{1}.kilnhg.com/Repo/',
   135 }
   135 }
   136 
   136 
   137 
   137 
   138 def _check_drive_letter(scheme):
   138 def _check_drive_letter(scheme: bytes) -> None:
   139     """check if a scheme conflict with a Windows drive letter"""
   139     """check if a scheme conflict with a Windows drive letter"""
   140     if (
   140     if (
   141         pycompat.iswindows
   141         pycompat.iswindows
   142         and len(scheme) == 1
   142         and len(scheme) == 1
   143         and scheme.isalpha()
   143         and scheme.isalpha()
   150 
   150 
   151 def extsetup(ui):
   151 def extsetup(ui):
   152     schemes.update(dict(ui.configitems(b'schemes')))
   152     schemes.update(dict(ui.configitems(b'schemes')))
   153     t = templater.engine(templater.parse)
   153     t = templater.engine(templater.parse)
   154     for scheme, url in schemes.items():
   154     for scheme, url in schemes.items():
   155         _check_drive_letter(schemes)
   155         _check_drive_letter(scheme)
   156         url_scheme = urlutil.url(url).scheme
   156         url_scheme = urlutil.url(url).scheme
   157         if url_scheme in hg.peer_schemes:
   157         if url_scheme in hg.peer_schemes:
   158             hg.peer_schemes[scheme] = ShortRepository(url, scheme, t)
   158             hg.peer_schemes[scheme] = ShortRepository(url, scheme, t)
   159         else:
   159         else:
   160             hg.repo_schemes[scheme] = ShortRepository(url, scheme, t)
   160             hg.repo_schemes[scheme] = ShortRepository(url, scheme, t)