<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>
ž
7’ReÚ  c               @   s¿   d  d l  Z  d  d l Z d  d l Z d  d l m Z d  d l m Z m Z d  d l m	 Z	 m
 Z
 d  d l m Z d  d l m Z m Z e j Z e j Z Gd d „  d e
 ƒ Z e	 j e ƒ d S(	   i    N(   u   call_subprocess(   u   display_pathu   rmtree(   u   vcsu   VersionControl(   u   logger(   u   url2pathnameu   urlparsec                sã   |  Ee  Z d  Z d Z d Z d Z d% Z d	 Z d
 Z d& ‡  f d d † Z
 d d „  Z d d „  Z d d „  Z d d „  Z d d „  Z d d „  Z d d „  Z d d „  Z d d „  Z d d  „  Z ‡  f d! d" †  Z d# d$ „  Z ‡  S('   u   Gitu   gitu   .gitu   cloneu   git+httpu	   git+httpsu   git+sshu   git+gitu   git+fileu   git-clone.txtus   # This was a Git repo; to make it a repo again run:
git init
git remote add origin %(url)s -f
git checkout %(rev)s
c                sü   | rÜ t  | ƒ \ } } } } } | j d ƒ rÜ | d  t | j d ƒ ƒ … }	 |	 t | ƒ j d d ƒ j d ƒ }
 t | | |
 | | f ƒ } | j d ƒ d } | d  | … t | | d  … | |
 | | f ƒ } qÜ n  t t	 |  ƒ j
 | | | Ž d  S(   Nu   fileu   /u   \u   +i   (   u   urlsplitu   endswithu   lenu   lstripu   url2pathnameu   replaceu
   urlunsplitu   findu   superu   Gitu   __init__(   u   selfu   urlu   argsu   kwargsu   schemeu   netlocu   pathu   queryu   fragmentu   initial_slashesu   newpathu
   after_plus(   u	   __class__(    u$   /tmp/pip-zej_zi-build/pip/vcs/git.pyu   __init__   s     %9u   Git.__init__c             C   sÃ   d  } } x² | j ƒ  D]¤ } | j ƒ  s | j ƒ  j d ƒ rE q n  t j d | ƒ } | ru | j d ƒ j ƒ  } n  t j d | ƒ } | r¥ | j d ƒ j ƒ  } n  | r | r | | f Sq Wd S(   Nu   #u$   git\s*remote\s*add\s*origin(.*)\s*-fi   u   ^git\s*checkout\s*-q\s*(.*)\s*(   NN(   u   Noneu
   splitlinesu   stripu
   startswithu   reu   searchu   group(   u   selfu   contentu   urlu   revu   lineu	   url_matchu	   rev_match(    (    u$   /tmp/pip-zej_zi-build/pip/vcs/git.pyu   parse_vcs_bundle_file%   s    
"u   Git.parse_vcs_bundle_filec             C   s…   t  j d d ƒ } |  j | ƒ zT | j d ƒ s> | d } n  t |  j d d d d | g d |  j d	 d d
 | ƒWd t | ƒ Xd S(   u@   Export the Git repository at the url to the destination locationu   -exportu   pip-u   /u   checkout-indexu   -au   -fu   --prefixu   filter_stdoutu   show_stdoutu   cwdNF(	   u   tempfileu   mkdtempu   unpacku   endswithu   call_subprocessu   cmdu   _filteru   Falseu   rmtree(   u   selfu   locationu   temp_dir(    (    u$   /tmp/pip-zej_zi-build/pip/vcs/git.pyu   export4   s    u
   Git.exportc             C   s`   |  j  | ƒ } d | } | | k r0 | | g S| | k rG | | g St j d | ƒ | Sd S(   u¶   Check the revision options before checkout to compensate that tags
        and branches may need origin/ as a prefix.
        Returns the SHA1 of the branch or tag if found.
        u	   origin/%su5   Could not find a tag or branch '%s', assuming commit.N(   u   get_refsu   loggeru   warn(   u   selfu   revu   destu   rev_optionsu	   revisionsu
   origin_rev(    (    u$   /tmp/pip-zej_zi-build/pip/vcs/git.pyu   check_rev_optionsA   s    
u   Git.check_rev_optionsc             C   sP   t  |  j d d | g d | ƒt  |  j d d g | d | ƒ|  j | ƒ d  S(   Nu   configu   remote.origin.urlu   cwdu   checkoutu   -q(   u   call_subprocessu   cmdu   update_submodules(   u   selfu   destu   urlu   rev_options(    (    u$   /tmp/pip-zej_zi-build/pip/vcs/git.pyu   switchS   s
    u
   Git.switchc             C   sr   t  |  j d d g d | ƒ| r> |  j | d | | ƒ } n  t  |  j d d d g | d | ƒ|  j | ƒ d  S(   Nu   fetchu   -qu   cwdi    u   resetu   --hard(   u   call_subprocessu   cmdu   check_rev_optionsu   update_submodules(   u   selfu   destu   rev_options(    (    u$   /tmp/pip-zej_zi-build/pip/vcs/git.pyu   update[   s
    #u
   Git.updatec             C   s  |  j  ƒ  \ } } | r. | g } d | } n d g } d } |  j | | | | ƒ rþ t j d | | t | ƒ f ƒ t |  j d d | | g ƒ |  j | ƒ | rþ |  j | | | ƒ } |  j	 | ƒ j
 | d ƒ sû t |  j d d g | d	 | ƒqû qþ n  d  S(
   Nu    (to %s)u   origin/masteru    u   Cloning %s%s to %su   cloneu   -qi    u   checkoutu   cwd(   u   get_url_revu   check_destinationu   loggeru   notifyu   display_pathu   call_subprocessu   cmdu   update_submodulesu   check_rev_optionsu   get_revisionu
   startswith(   u   selfu   destu   urlu   revu   rev_optionsu   rev_display(    (    u$   /tmp/pip-zej_zi-build/pip/vcs/git.pyu   obtaine   s    		 u
   Git.obtainc             C   s.   t  |  j d d g d d d | ƒ} | j ƒ  S(   Nu   configu   remote.origin.urlu   show_stdoutu   cwdF(   u   call_subprocessu   cmdu   Falseu   strip(   u   selfu   locationu   url(    (    u$   /tmp/pip-zej_zi-build/pip/vcs/git.pyu   get_urlx   s    u   Git.get_urlc             C   s.   t  |  j d d g d d d | ƒ} | j ƒ  S(   Nu	   rev-parseu   HEADu   show_stdoutu   cwdF(   u   call_subprocessu   cmdu   Falseu   strip(   u   selfu   locationu   current_rev(    (    u$   /tmp/pip-zej_zi-build/pip/vcs/git.pyu   get_revision~   s    !u   Git.get_revisionc             C   s	  t  |  j d g d d
 d | ƒ} i  } xÛ | j ƒ  j ƒ  D]Ç } | j d d ƒ \ } } | j ƒ  } d } | j d ƒ r’ | t d ƒ d … } nP | j d ƒ rº | t d ƒ d … } n( | j d	 ƒ râ | t d	 ƒ d … } n  | d k	 r: | j ƒ  | | <q: q: W| S(   u=   Return map of named refs (branches or tags) to commit hashes.u   show-refu   show_stdoutu   cwdu    i   u   refs/remotes/Nu   refs/heads/u
   refs/tags/F(	   u   call_subprocessu   cmdu   Falseu   stripu
   splitlinesu   splitu   Noneu
   startswithu   len(   u   selfu   locationu   outputu   rvu   lineu   commitu   refu   ref_name(    (    u$   /tmp/pip-zej_zi-build/pip/vcs/git.pyu   get_refsƒ   s     u   Git.get_refsc       
      C   sÒ   |  j  | ƒ } | j ƒ  j d ƒ s1 d | } n  | j ƒ  j d d ƒ d } | sW d  S|  j | ƒ } |  j | ƒ } t d d „  | j	 ƒ  Dƒ ƒ } | | k r· d | | | f }	 n
 d	 | }	 d
 | | |	 f S(   Nu   git:u   git+u   -i   i    c             s   s!   |  ] \ } } | | f Vq d  S(   N(    (   u   .0u   refu   commit(    (    u$   /tmp/pip-zej_zi-build/pip/vcs/git.pyu	   <genexpr>¡   s    u*   Git.get_src_requirement.<locals>.<genexpr>u   %s-%su   %s-devu   %s@%s#egg=%s(
   u   get_urlu   loweru
   startswithu   egg_nameu   splitu   Noneu   get_revisionu   get_refsu   dictu   items(
   u   selfu   distu   locationu	   find_tagsu   repou   egg_project_nameu   current_revu   refsu   names_by_commitu   full_egg_name(    (    u$   /tmp/pip-zej_zi-build/pip/vcs/git.pyu   get_src_requirement–   s    
u   Git.get_src_requirementc                s‘   d |  j  k rl d |  j  k s$ t ‚ |  j  j d d ƒ |  _  t t |  ƒ j ƒ  \ } } | j d d ƒ } n t t |  ƒ j ƒ  \ } } | | f S(   u;  
        Prefixes stub URLs like 'user@hostname:user/repo.git' with 'ssh://'.
        That's required because although they use SSH they sometimes doesn't
        work with a ssh:// scheme (e.g. Github). But we need a scheme for
        parsing. Hence we remove it again afterwards and return it as a stub.
        u   ://u   file:u   git+u
   git+ssh://u   ssh://u    (   u   urlu   AssertionErroru   replaceu   superu   Gitu   get_url_rev(   u   selfu   urlu   rev(   u	   __class__(    u$   /tmp/pip-zej_zi-build/pip/vcs/git.pyu   get_url_rev«   s    u   Git.get_url_revc             C   sN   t  j j t  j j | d ƒ ƒ s% d  St |  j d d d d d g d | ƒd  S(   Nu   .gitmodulesu	   submoduleu   updateu   --initu   --recursiveu   -qu   cwd(   u   osu   pathu   existsu   joinu   call_subprocessu   cmd(   u   selfu   location(    (    u$   /tmp/pip-zej_zi-build/pip/vcs/git.pyu   update_submodules¼   s    !u   Git.update_submodules(   u   gitu   git+httpu	   git+httpsu   git+sshu   git+gitu   git+fileN(   u   __name__u
   __module__u   __qualname__u   nameu   dirnameu	   repo_nameu   schemesu   bundle_fileu   guideu   Noneu   __init__u   parse_vcs_bundle_fileu   exportu   check_rev_optionsu   switchu   updateu   obtainu   get_urlu   get_revisionu   get_refsu   get_src_requirementu   get_url_revu   update_submodules(   u
   __locals__(    (   u	   __class__u$   /tmp/pip-zej_zi-build/pip/vcs/git.pyu   Git   s&   
u   Git(   u   tempfileu   reu   os.pathu   osu   pip.utilu   call_subprocessu   display_pathu   rmtreeu   pip.vcsu   vcsu   VersionControlu   pip.logu   loggeru   pip.backwardcompatu   url2pathnameu   urlparseu   urlsplitu
   urlunsplitu   Gitu   register(    (    (    u$   /tmp/pip-zej_zi-build/pip/vcs/git.pyu   <module>   s   		µ