ó
4vWc           @   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 d  d l	 m
 Z
 m Z d  d l m Z m Z d  d l m Z d e f d	     YZ e j e  d S(
   i˙˙˙˙N(   t   call_subprocess(   t   urlparse(   t   logger(   t   rmtreet   display_path(   t   vcst   VersionControl(   t   path_to_url2t   Bazaarc           B   s   e  Z d  Z d Z d Z d Z d Z d
 Z d d  Z	 d   Z
 d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z RS(   t   bzrs   .bzrt   branchs   bzr-branch.txts   bzr+https	   bzr+httpss   bzr+sshs   bzr+sftps   bzr+ftps   bzr+lps[   # This was a Bazaar branch; to make it a branch again run:
bzr branch -r %(rev)s %(url)s .
c         O   sF   t  t |   j | | |  t j j d g  t j j d g  d  S(   Nt   lp(   t   superR   t   __init__R   t   non_hierarchicalt   extendt   uses_fragment(   t   selft   urlt   argst   kwargs(    (    sY   /data/av2000/soap/soapenv/lib/python2.7/site-packages/pip-1.1-py2.7.egg/pip/vcs/bazaar.pyR      s    c         C   sı   d  } } x¨ | j   D] } | j   s | j   j d  rE q n  t j d |  } | ru | j d  j   } n  | | j   j   j d  d  d } | r | r | | f Sq Wd S(   Nt   #s   ^bzr\s*branch\s*-r\s*(\d*)i   i    (   NN(	   t   Nonet
   splitlinest   stript
   startswitht   ret   searcht   groupt   endt   split(   R   t   contentR   t   revt   linet   match(    (    sY   /data/av2000/soap/soapenv/lib/python2.7/site-packages/pip-1.1-py2.7.egg/pip/vcs/bazaar.pyt   parse_vcs_bundle_file   s    
"&c         C   s   t  j d d  } |  j |  t j j |  r> t |  n  z/ t |  j d | g d | d |  j	 d t
 Wd t |  Xd S(   sC   Export the Bazaar repository at the url to the destination locations   -exports   pip-t   exportt   cwdt   filter_stdoutt   show_stdoutN(   t   tempfilet   mkdtempt   unpackt   ost   patht   existsR   R    t   cmdt   _filtert   False(   R   t   locationt   temp_dir(    (    sY   /data/av2000/soap/soapenv/lib/python2.7/site-packages/pip-1.1-py2.7.egg/pip/vcs/bazaar.pyR$   '   s    c         C   s    t  |  j d | g d | d  S(   Nt   switchR%   (   R    R.   (   R   t   destR   t   rev_options(    (    sY   /data/av2000/soap/soapenv/lib/python2.7/site-packages/pip-1.1-py2.7.egg/pip/vcs/bazaar.pyR3   4   s    c         C   s$   t  |  j d d g | d | d  S(   Nt   pulls   -qR%   (   R    R.   (   R   R4   R5   (    (    sY   /data/av2000/soap/soapenv/lib/python2.7/site-packages/pip-1.1-py2.7.egg/pip/vcs/bazaar.pyt   update7   s    c         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(   Ns   -rs    (to revision %s)t    s   Checking out %s%s to %sR
   s   -q(   t   get_url_revt   check_destinationR   t   notifyR   R    R.   (   R   R4   R   R    R5   t   rev_display(    (    sY   /data/av2000/soap/soapenv/lib/python2.7/site-packages/pip-1.1-py2.7.egg/pip/vcs/bazaar.pyt   obtain;   s    	c         C   sA   t  t |   j   \ } } | j d  r7 d | } n  | | f S(   Ns   ssh://s   bzr+(   R   R   R9   R   (   R   R   R    (    (    sY   /data/av2000/soap/soapenv/lib/python2.7/site-packages/pip-1.1-py2.7.egg/pip/vcs/bazaar.pyR9   I   s    c         C   s   t  |  j d g d t d | } xp | j   D]b } | j   } xM d D]E } | j |  rG | j |  d } |  j |  r t |  S| SqG Wq. Wd  S(   Nt   infoR'   R%   s   checkout of branch: s   parent branch: i   (   s   checkout of branch: s   parent branch: (
   R    R.   R0   R   R   R   R   t   _is_local_repositoryR   R   (   R   R1   t   urlsR!   t   xt   repo(    (    sY   /data/av2000/soap/soapenv/lib/python2.7/site-packages/pip-1.1-py2.7.egg/pip/vcs/bazaar.pyt   get_urlP   s    

c         C   s/   t  |  j d g d t d | } | j   d S(   Nt   revnoR'   R%   i˙˙˙˙(   R    R.   R0   R   (   R   R1   t   revision(    (    sY   /data/av2000/soap/soapenv/lib/python2.7/site-packages/pip-1.1-py2.7.egg/pip/vcs/bazaar.pyt   get_revision^   s    c         C   s    t  |  j d g d t d | } g  } xl | j   D]^ } t j d |  } | r4 | j d  } | j d  } | j | j   | j   f  q4 q4 Wt	 |  S(   Nt   tagsR'   R%   s   ([.\w-]+)\s*(.*)$i   i   (
   R    R.   R0   R   R   R   R   t   appendR   t   dict(   R   R1   RG   t   tag_revsR!   t
   tags_matcht   tagR    (    (    sY   /data/av2000/soap/soapenv/lib/python2.7/site-packages/pip-1.1-py2.7.egg/pip/vcs/bazaar.pyt   get_tag_revsc   s    &c   	      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(	   Ns   bzr:s   bzr+t   -i   i    s   %s-%ss
   %s-dev_r%ss   %s@%s#egg=%s(   RC   t   lowerR   t   egg_nameR   R   RF   RM   (	   R   t   distR1   t	   find_tagsRB   t   egg_project_namet   current_revRJ   t   full_egg_name(    (    sY   /data/av2000/soap/soapenv/lib/python2.7/site-packages/pip-1.1-py2.7.egg/pip/vcs/bazaar.pyt   get_src_requiremento   s    (   R	   s   bzr+https	   bzr+httpss   bzr+sshs   bzr+sftps   bzr+ftps   bzr+lpN(   t   __name__t
   __module__t   namet   dirnamet	   repo_namet   bundle_filet   schemest   guideR   R   R#   R$   R3   R7   R=   R9   RC   RF   RM   RV   (    (    (    sY   /data/av2000/soap/soapenv/lib/python2.7/site-packages/pip-1.1-py2.7.egg/pip/vcs/bazaar.pyR      s"   									(   R+   R(   R   t   pipR    t   pip.backwardcompatR   t   pip.logR   t   pip.utilR   R   t   pip.vcsR   R   t   pip.downloadR   R   t   register(    (    (    sY   /data/av2000/soap/soapenv/lib/python2.7/site-packages/pip-1.1-py2.7.egg/pip/vcs/bazaar.pyt   <module>   s   u