£Á°èZ¨Ä…–K§‚«“ô4“ÒÙ´dîfUÙÃÅ WKbyÊ¦•êŽ…È®FÒ¿ÊÎóCozá¬S@6{Í:›œêZÌ:Š•_%:¢¾¾~;‘Ã~èŠ©ÊÇí`ÔÑ©úë™µ'5I¿fš×WO%ø9¾«¾DK|€ùÍD”Ýs]nHÕ¶ê×Ó¼ãžªéUWŸÈË%DÒÕ¬ï‘]/Åcx  ‰ï2ß]ä6G[]S£ÔÏ¯rs{úëóµmÒï#UQxo·õÞCe]"±/aÙ&Eã4ú9Jé_ÞåëdãöKë)AÞ                  ¯¹ægƒÛowÐø^d™ý½ßB7áyMä9ÜÖUã
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
<html>

ReO                 @   s   d  d l  Z  d  d l Z d  d l Z d  d l m Z d  d l m Z d  d l m Z m	 Z	 m
 Z
 d  d l m Z m Z d  d l m Z Gd d   d e  Z e j e  d S)	    N)urlparse)logger)rmtreedisplay_pathcall_subprocess)vcsVersionControl)path_to_urlc                   s   e  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   f d d   Z d d   Z d d   Z d d    Z d! d"   Z   S)$Bazaarbzrz.bzrbranchzbzr-branch.txtbzr+http	bzr+httpsbzr+sshbzr+sftpbzr+ftpbzr+lpz[# This was a Bazaar branch; to make it a branch again run:
bzr branch -r %(rev)s %(url)s .
Nc                s[   t  t |   j | | |  t t d d   rW t j j d g  t j j d g  n  d  S)Nuses_fragmentlp)superr
   __init__getattrr   r   extendnon_hierarchical)selfurlargskwargs)	__class__ )/tmp/pip-ztkk0jow-build/pip/vcs/bazaar.pyr      s    zBazaar.__init__c             C   s   d  } } x | j    D] } | j   s | j   j d  rE q n  t j d |  } | ru | j d  j   } n  | | j   d   j   j d  d  d } | r | r | | f Sq Wd S)N#z^bzr\s*branch\s*-r\s*(\d*)   r   )NN)
splitlinesstrip
startswithresearchgroupendsplit)r   contentr   revlinematchr   r   r    parse_vcs_bundle_file   s    
",zBazaar.parse_vcs_bundle_filec             C   s   t  j d d  } |  j |  t j j |  r> t |  n  z/ t |  j d | g d | d |  j	 d d Wd t |  Xd S)	zCExport the Bazaar repository at the url to the destination locationz-exportzpip-exportcwdfilter_stdoutshow_stdoutFN)
tempfilemkdtempunpackospathexistsr   r   cmd_filter)r   locationtemp_dirr   r   r    r0   )   s    zBazaar.exportc             C   s    t  |  j d | g d | d  S)Nswitchr1   )r   r:   )r   destr   rev_optionsr   r   r    r>   6   s    zBazaar.switchc             C   s$   t  |  j d d g | d | d  S)Npullz-qr1   )r   r:   )r   r?   r@   r   r   r    update9   s    zBazaar.updatec             C   s   |  j    \ } } | r1 d | g } d | } n g  } d } |  j | | | |  r t j d | | t |  f  t |  j d d g | | | g  n  d  S)Nz-rz (to revision %s) zChecking out %s%s to %sr   z-q)get_url_revcheck_destinationr   notifyr   r   r:   )r   r?   r   r,   r@   rev_displayr   r   r    obtain=   s    	zBazaar.obtainc                sA   t  t |   j   \ } } | j d  r7 d | } n  | | f S)Nzssh://zbzr+)r   r
   rD   r%   )r   r   r,   )r   r   r    rD   K   s    zBazaar.get_url_revc             C   s   t  |  j d g d d d | } xp | j   D]b } | j   } xM d D]E } | j |  rG | j |  d } |  j |  r t |  S| SqG Wq. Wd  S)	Ninfor3   Fr1   checkout of branch: parent branch: r"   )rJ   rK   )r   r:   r#   r$   r%   r*   _is_local_repositoryr	   )r   r<   urlsr-   xrepor   r   r    get_urlR   s    

zBazaar.get_urlc             C   s/   t  |  j d g d d d | } | j   d S)Nrevnor3   Fr1   r"   )r   r:   r#   )r   r<   revisionr   r   r    get_revision`   s    zBazaar.get_revisionc             C   s   t  |  j d g d d d | } g  } xl | j   D]^ } t j d |  } | r4 | j d  } | j d  } | j | j   | j   f  q4 q4 Wt |  S)Ntagsr3   Fr1   z([.\w-]+)\s*(.*)$r"      )	r   r:   r#   r&   r'   r(   appendr$   dict)r   r<   rU   tag_revsr-   
tags_matchtagr,   r   r   r    get_tag_revse   s    &zBazaar.get_tag_revsc       	      C   s   |  j  |  } | j   j d  s1 d | } n  | j   j d d  d } | sW d  S|  j |  } |  j |  } | | k r d | | | f } n d | j   | f } d | | | f S)	Nzbzr:zbzr+-r"   r   z%s-%sz
%s-dev_r%sz%s@%s#egg=%s)rP   lowerr%   egg_namer*   rT   r\   )	r   distr<   	find_tagsrO   egg_project_namecurrent_revrY   full_egg_namer   r   r    get_src_requirementq   s    zBazaar.get_src_requirement)zbzrr   r   r   r   r   r   )__name__
__module____qualname__namedirname	repo_namebundle_fileschemesguider   r/   r0   r>   rB   rH   rD   rP   rT   r\   re   r   r   )r   r    r
      s"   r
   )r7   r4   r&   Zpip.backwardcompatr   pip.logr   pip.utilr   r   r   pip.vcsr   r   pip.downloadr	   r
   registerr   r   r   r    <module>   s   x