<!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>
ž
à’Re¸E  c               @   si  d  d l  Z  d  d l Z d  d l Z d  d l m Z d  d l Z d  d l Z d  d l Z d  d l	 Z	 d  d l
 Z
 d  d l Z d  d l m Z d  d l m Z y d  d l Z Wn! e k
 rÏ d  d l j Z Yn Xd  d l m Z m Z e e d d  d d „ Z d d	 „  Z d
 d „  Z d d „  Z d d „  Z d d „  Z e ƒ  Z  d d d „ Z! d d „  Z" d d d „ Z# d d „  Z$ d d „  Z% Gd d „  d e& ƒ Z' Gd d  „  d  e' ƒ Z( Gd! d" „  d" e( ƒ Z) Gd# d$ „  d$ e' ƒ Z* d d% d& „ Z+ Gd' d( „  d( e& ƒ Z, Gd) d* „  d* e, ƒ Z- Gd+ d, „  d, e, ƒ Z. e/ d- k rex( e+ e j0 d. ƒ D] Z1 e2 e1 ƒ qNWn  d S(/   i    N(   u   log(   u   unicode(   u   unescape(   u   Popenu   PIPEc             C   sp   y; t  |  d | d | d t j d k ƒ} | j ƒ  | } Wn t k
 rS d SYn Xt | | ƒ } | j | f S(   Nu   stdoutu   stderru   shellu   win32i   u    (   i   u    (   u   _Popenu   sysu   platformu   communicateu   OSErroru   decode_as_stringu
   returncode(   u   argsu   stdoutu   stderru   encodingu   streamu   procu   data(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   _run_command   s    	u   _run_commandc             C   s0   |  j  d ƒ d } d j d d „  | j Dƒ ƒ S(   Nu   schedulei    u    c             S   s+   g  |  ]! } | j  | j k r | j ‘ q S(    (   u   nodeTypeu	   TEXT_NODEu	   nodeValue(   u   .0u   t(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu
   <listcomp>2   s   	u'   _get_entry_schedule.<locals>.<listcomp>(   u   getElementsByTagNameu   joinu
   childNodes(   u   entryu   schedule(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   _get_entry_schedule0   s    u   _get_entry_schedulec             C   s0   |  j  d ƒ d } d j d d „  | j Dƒ ƒ S(   Nu   propertyi    u    c             S   s+   g  |  ]! } | j  | j k r | j ‘ q S(    (   u   nodeTypeu	   TEXT_NODEu	   nodeValue(   u   .0u   t(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu
   <listcomp>9   s   	u(   _get_target_property.<locals>.<listcomp>(   u   getElementsByTagNameu   joinu
   childNodes(   u   targetu   property_text(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   _get_target_property7   s    u   _get_target_propertyc             C   s+   t  j d k  r! |  j d ƒ } n |  } | S(   Ni   i    u   utf-8(   i   i    (   u   sysu   version_infou   encode(   u   decoded_stru   data(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   _get_xml_data>   s    u   _get_xml_datac             G   s6   |  s |  d k r# t  j j | Œ  St  j j |  | Œ S(   Nu   .(   u   osu   pathu   join(   u   prefixu   suffix(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   joinpathG   s    u   joinpathc              C   s´   yL t  j ƒ  }  |  s" |  d k r5 t  j ƒ  d }  n  |  rK t j |  ƒ n  Wn! t  j t f k
 ro d  }  Yn Xt j	 d k } |  s“ d d g | S|  j
 d ƒ r¬ | r¬ d S|  Sd  S(   Nu   US-ASCIIi   u   darwinu   utf-8u   mac-(   u   localeu   getpreferredencodingu   getdefaultlocaleu   codecsu   lookupu   Erroru   LookupErroru   Noneu   sysu   platformu
   startswith(   u   encodingu   is_osx(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   determine_console_encodingL   s    u   determine_console_encodingc             C   sL   | d k r t } n  t |  t ƒ s6 |  j | ƒ }  n  t j d |  ƒ }  |  S(   uï  
    Decode the console or file output explicitly using getpreferredencoding.
    The text paraemeter should be a encoded string, if not no decode occurs
    If no encoding is given, getpreferredencoding is used.  If encoding is
    specified, that is used instead.  This would be needed for SVN --xml
    output.  Unicode is explicitly put in composed NFC form.

    --xml should be UTF-8 (SVN Issue 2938) the discussion on the Subversion
    DEV List from 2007 seems to indicate the same.
    u   NFCN(   u   Noneu   _console_encodingu
   isinstanceu   unicodeu   decodeu   unicodedatau	   normalize(   u   textu   encoding(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   decode_as_stringi   s    	u   decode_as_stringc             C   s±   t  j j j t |  ƒ ƒ } t ƒ  } x| | D]t \ } } | d k r+ | j d k r+ | j | ƒ t | ƒ j	 d ƒ sŸ | j
 | j d ƒ | j d ƒ f ƒ qŸ q+ q+ W| d d … S(   u+   Parse the entries from a recursive info xmlu   START_ELEMENTu   entryu   deleteu   pathu   kindi   N(   u   xmlu   domu   pulldomu   parseStringu   _get_xml_datau   listu   nodeNameu
   expandNodeu   _get_entry_scheduleu
   startswithu   appendu   getAttribute(   u   decoded_stru   docu   entriesu   eventu   node(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   parse_dir_entries   s    	u   parse_dir_entriesu    c       	      C   s  t  j j | ƒ } t  j j | ƒ } t j j j t |  ƒ ƒ } t	 ƒ  } xË | D]Ã \ } } | d k rO | j
 d k rO | j | ƒ t  j j | j d ƒ ƒ } t  j j | ƒ j | ƒ rÖ | t | ƒ d d … } n  t | ƒ } x- t | ƒ D] } | j t | | ƒ ƒ qï WqO qO W| S(   u!   Parse a propget svn:externals xmlu   START_ELEMENTu   targetu   pathi   N(   u   osu   pathu   normpathu   normcaseu   xmlu   domu   pulldomu   parseStringu   _get_xml_datau   listu   nodeNameu
   expandNodeu   getAttributeu
   startswithu   lenu   _get_target_propertyu   parse_external_propu   appendu   joinpath(	   u   decoded_stru   prefixu   docu	   externalsu   eventu   nodeu   pathu   datau   external(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   parse_externals_xml   s    	!u   parse_externals_xmlc             C   sç   g  } xÚ |  j  ƒ  D]Ì } | j ƒ  } | s1 q n  t j d k  rR | j d ƒ } n  t j | ƒ } t j d	 k  r† d d „  | Dƒ } n  t j | d
 ƒ d rª | d } n
 | d } t	 | d d ƒ} | j
 t j j | ƒ ƒ q W| S(   uê   
    Parse the value of a retrieved svn:externals entry.

    possible token setups (with quotng and backscaping in laters versions)
        URL[@#] EXT_FOLDERNAME
        [-r#] URL EXT_FOLDERNAME
        EXT_FOLDERNAME [-r#] URL
    i   i    u   utf-8c             S   s   g  |  ] } | j  d  ƒ ‘ q S(   u   utf-8(   u   decode(   u   .0u   x(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu
   <listcomp>½   s   	 u'   parse_external_prop.<locals>.<listcomp>i   u   encoding(   i   i    (   i   i    iÿÿÿÿiÿÿÿÿ(   u
   splitlinesu   lstripu   sysu   version_infou   encodeu   shlexu   splitu   urlparseu   urlsplitu   decode_as_stringu   appendu   osu   pathu   normpath(   u   linesu	   externalsu   lineu   external(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   parse_external_prop¨   s     	
u   parse_external_propc       	   
   C   sÇ   d } t |  d ƒ } d } zš x“ t | j d ƒ D] } | j ƒ  } t | ƒ d k r1 | \ } } | j t | ƒ ƒ } | d k r— | | k r— d } q° | d k r° | r° Pq° q1 q1 WWd  | j	 ƒ  X| S(   Nu   rtu    i   u   Ku   VFT(
   u   Falseu   openu   iteru   readlineu   splitu   lenu   readu   intu   Trueu   close(	   u   filenameu   keyu   foundu   fu   datau   lineu   partsu   kindu   length(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   parse_prop_fileÌ   s    	u   parse_prop_filec             B   sÔ   |  Ee  Z d  Z d Z e d d „  ƒ Z e j d e j ƒ Z	 e
 d d d „ ƒ Z d d d	 „ Z d
 d „  Z e d d „  ƒ Z e d d „  ƒ Z d d „  Z d d „  Z d d d „ Z d d „  Z d d „  Z d S(   u   SvnInfou¸   
    Generic svn_info object.  No has little knowledge of how to extract
    information.  Use cls.load to instatiate according svn version.

    Paths are not filesystem encoded.
    c              C   s?   t  d d d g ƒ \ }  } |  d k r7 | r7 | j ƒ  Sd Sd  S(   Nu   svnu	   --versionu   --quieti    u    (   u   _run_commandu   strip(   u   codeu   data(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   get_svn_versionè   s    
u   SvnInfo.get_svn_versionu!   (?:([\-0-9]+):)?(\d+)([a-z]*)\s*$u    c       	      C   sh  t  j j | ƒ } t d d | g ƒ \ } } t  j j | d ƒ } t  j j t  j j | d ƒ ƒ p¢ t  j j t  j j | d ƒ ƒ p¢ t  j j t  j j | d ƒ ƒ } t |  j ƒ  j d ƒ ƒ } y' t d d	 „  | d  d
 … Dƒ ƒ } Wn t	 k
 rt ƒ  } Yn X| st
 | ƒ S| s.| s.| d k  rHt j d t ƒ t | ƒ S| d k  r^t | ƒ St | ƒ S(   Nu   svnu   infou   .svnu   entriesu	   dir-propsu   dir-prop-baseu   .c             s   s   |  ] } t  | ƒ Vq d  S(   N(   u   int(   u   .0u   x(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu	   <genexpr>  s    u   SvnInfo.load.<locals>.<genexpr>i   i   i   u?   No SVN 1.3+ command found: falling back on pre 1.7 .svn parsingi   (   i   i   (   i   i   (   u   osu   pathu   normpathu   _run_commandu   joinu   isfileu   tupleu   get_svn_versionu   splitu
   ValueErroru   SvnInfou   warningsu   warnu   DeprecationWarningu   SvnFileInfou	   Svn13Infou	   Svn15Info(	   u   clsu   dirnameu   normdiru   codeu   datau   svn_diru   has_svnu   svn_versionu   base_svn_version(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   load÷   s(    !!!'
	

u   SvnInfo.loadc             C   s   | |  _  d  |  _ d  |  _ d  S(   N(   u   pathu   Noneu   _entriesu
   _externals(   u   selfu   path(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   __init__  s    		u   SvnInfo.__init__c             C   sh   t  d d |  j g ƒ \ } } | r5 t j d ƒ d S|  j j | ƒ } | r` t | j d ƒ ƒ Sd Sd S(   u<   Retrieve the directory revision informatino using svnversionu
   svnversionu   -cu   svnversion failedi    i   N(   u   _run_commandu   pathu   logu   warnu   revision_reu   matchu   intu   group(   u   selfu   codeu   datau   parsed(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   get_revision  s    u   SvnInfo.get_revisionc             C   s(   |  j  d  k r! |  j ƒ  |  _  n  |  j  S(   N(   u   _entriesu   Noneu   get_entries(   u   self(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   entries(  s    u   SvnInfo.entriesc             C   s(   |  j  d  k r! |  j ƒ  |  _  n  |  j  S(   N(   u
   _externalsu   Noneu   get_externals(   u   self(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu	   externals.  s    u   SvnInfo.externalsc             c   s   x |  j  D] } | Vq
 Wd S(   uR   
        Iterate over the svn:external references in the repository path.
        N(   u	   externals(   u   selfu   item(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   iter_externals4  s    u   SvnInfo.iter_externalsc             c   s8   x1 |  j  D]& \ } } | j ƒ  d k r
 | Vq
 q
 Wd S(   uR   
        Iterate over the non-deleted file entries in the repository path
        u   fileN(   u   entriesu   lower(   u   selfu   itemu   kind(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu
   iter_files;  s    u   SvnInfo.iter_filesc             c   sI   | r |  j  Vn  x1 |  j D]& \ } } | j ƒ  d k r | Vq q Wd S(   uR   
        Iterate over the non-deleted file entries in the repository path
        u   dirN(   u   pathu   entriesu   lower(   u   selfu   include_rootu   itemu   kind(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu	   iter_dirsC  s
    u   SvnInfo.iter_dirsc             C   s   g  S(   N(    (   u   self(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   get_entriesM  s    u   SvnInfo.get_entriesc             C   s   g  S(   N(    (   u   self(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   get_externalsP  s    u   SvnInfo.get_externalsNT(   u   __name__u
   __module__u   __qualname__u   __doc__u   staticmethodu   get_svn_versionu   reu   compileu   Iu   revision_reu   classmethodu   loadu   __init__u   get_revisionu   propertyu   entriesu	   externalsu   iter_externalsu
   iter_filesu   Trueu	   iter_dirsu   get_entriesu   get_externals(   u
   __locals__(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   SvnInfoà   s   
u   SvnInfoc             B   s,   |  Ee  Z d  Z d d „  Z d d „  Z d S(   u	   Svn13Infoc             C   sK   t  d d d d |  j g d d ƒ\ } } | rA t j d ƒ g  St | ƒ S(   Nu   svnu   infou   -Ru   --xmlu   encodingu   utf-8u   svn info failed(   u   _run_commandu   pathu   logu   debugu   parse_dir_entries(   u   selfu   codeu   data(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   get_entriesU  s    u   Svn13Info.get_entriesc             C   sº   d d d g } g  } xž |  j  ƒ  D] } t | | g d d ƒ\ } } | d k rd t j d ƒ g  SxK t | ƒ D]= } | r• t j j | | ƒ } n  | j t j j	 | ƒ ƒ qq Wq" W| S(   Nu   svnu   propgetu   svn:externalsu   encodingu   utf-8i    u   svn propget failed(
   u	   iter_dirsu   _run_commandu   logu   warnu   parse_external_propu   osu   pathu   joinu   appendu   normpath(   u   selfu   cmdu   resultu   folderu   codeu   linesu   external(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   get_externals_  s    !u   Svn13Info.get_externalsN(   u   __name__u
   __module__u   __qualname__u   get_entriesu   get_externals(   u
   __locals__(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu	   Svn13InfoT  s   
u	   Svn13Infoc             B   s    |  Ee  Z d  Z d d „  Z d S(   u	   Svn15Infoc             C   si   d d d |  j  d d g } t | d d ƒ\ } } | rJ t j d ƒ g  St | d	 t j  j |  j  ƒ ƒS(
   Nu   svnu   propgetu   svn:externalsu   -Ru   --xmlu   encodingu   utf-8u   svn propget failedu   prefix(   u   pathu   _run_commandu   logu   debugu   parse_externals_xmlu   osu   abspath(   u   selfu   cmdu   codeu   lines(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   get_externalss  s    u   Svn15Info.get_externalsN(   u   __name__u
   __module__u   __qualname__u   get_externals(   u
   __locals__(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu	   Svn15Infor  s   u	   Svn15Infoc                se   |  Ee  Z d  Z d ‡  f d d † Z d d „  Z d d „  Z d d	 „  Z d
 d „  Z d d „  Z ‡  S(   u   SvnFileInfou    c                s,   t  t |  ƒ j | ƒ d  |  _ d  |  _ d  S(   N(   u   superu   SvnFileInfou   __init__u   Noneu   _directoriesu	   _revision(   u   selfu   path(   u	   __class__(    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   __init__~  s    	u   SvnFileInfo.__init__c             c   s×   t  | d d ƒ } t j j | ƒ rÓ t j | ƒ } | d | j ƒ  f Vx‰ | j ƒ  D]x } t	 | ƒ } t  | | ƒ } t j j | ƒ r˜ | d d  f VqT t j j | ƒ rT x |  j | ƒ D] } | Vqº WqT qT Wn  d  S(   Nu   .svnu   entriesFT(   u   joinpathu   osu   pathu   isfileu   SVNEntriesFileu   loadu   Falseu   parse_revisionu   get_undeleted_recordsu   decode_as_stringu   Trueu   Noneu   isdiru	   _walk_svn(   u   selfu   baseu
   entry_fileu   entriesu   pathu   item(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu	   _walk_svnƒ  s    u   SvnFileInfo._walk_svnc             C   s‰   t  ƒ  } d } xa |  j |  j ƒ D]M \ } } } | rM | j | d f ƒ q" | j | d f ƒ t | | ƒ } q" W| |  _ | |  _ d  S(   Ni    u   fileu   dir(   u   listu	   _walk_svnu   pathu   appendu   maxu   _entriesu	   _revision(   u   selfu   entriesu   revu   pathu   isfileu   dir_rev(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   _build_entries‘  s    	"	u   SvnFileInfo._build_entriesc             C   s#   |  j  d  k r |  j ƒ  n  |  j  S(   N(   u   _entriesu   Noneu   _build_entries(   u   self(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   get_entriesŸ  s    u   SvnFileInfo.get_entriesc             C   s#   |  j  d  k r |  j ƒ  n  |  j  S(   N(   u	   _revisionu   Noneu   _build_entries(   u   self(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   get_revision¤  s    u   SvnFileInfo.get_revisionc             C   s½   d d g d d g g } g  } x˜ |  j  ƒ  D]Š } d  } x8 | D]0 } t | | Œ } t j j | ƒ r> | } q> q> W| d  k	 r+ t | d ƒ } t | d d ƒ} | j t	 | ƒ ƒ q+ q+ W| S(   Nu   .svnu   dir-prop-baseu	   dir-propsu   svn:externalsu   encodingu   utf-8(
   u	   iter_dirsu   Noneu   joinpathu   osu   pathu   isfileu   parse_prop_fileu   decode_as_stringu   extendu   parse_external_prop(   u   selfu
   prop_filesu	   externalsu   dirnameu	   prop_fileu	   rel_partsu   filenameu   ext_prop(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   get_externals©  s    	u   SvnFileInfo.get_externals(	   u   __name__u
   __module__u   __qualname__u   __init__u	   _walk_svnu   _build_entriesu   get_entriesu   get_revisionu   get_externals(   u
   __locals__(    (   u	   __class__u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   SvnFileInfo|  s   u   SvnFileInfoc             c   sq   t  j |  ƒ } x | j ƒ  D] } | Vq Wx? | j ƒ  D]1 } t  j | ƒ } x | j ƒ  D] } | VqZ Wq8 Wd  S(   N(   u   SvnInfou   loadu
   iter_filesu   iter_externals(   u   dirnameu   infou   pathu   sub_infou   sub_path(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu
   svn_finder¾  s    	u
   svn_finderc             B   sP   |  Ee  Z d  Z d d „  Z e d d „  ƒ Z e d d „  ƒ Z d d „  Z d	 S(
   u   SVNEntriesFilec             C   s   | |  _  d  S(   N(   u   data(   u   selfu   data(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   __init__Ì  s    u   SVNEntriesFile.__init__c          
   C   sI   t  j j | d d ƒ } t | ƒ } z t j | ƒ } Wd  | j ƒ  X| S(   Nu   .svnu   entries(   u   osu   pathu   joinu   openu   SVNEntriesFileu   readu   close(   u   class_u   baseu   filenameu   fu   result(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   loadÏ  s    u   SVNEntriesFile.loadc             C   s5   | j  ƒ  } | j d ƒ } t t g | }  |  | ƒ S(   Nu   <?xml(   u   readu
   startswithu   SVNEntriesFileTextu   SVNEntriesFileXML(   u   class_u   fileobju   datau   is_xml(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   readÙ  s    u   SVNEntriesFile.readc             C   s   |  j  ƒ  d g } t | ƒ S(   Ni    (   u   parse_revision_numbersu   max(   u   selfu   all_revs(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   parse_revisionà  s    u   SVNEntriesFile.parse_revisionN(   u   __name__u
   __module__u   __qualname__u   __init__u   classmethodu   loadu   readu   parse_revision(   u
   __locals__(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   SVNEntriesFileË  s   
u   SVNEntriesFilec             B   sw   |  Ee  Z d  Z i d d 6d d 6d d 6Z d d „  Z d	 d
 „  Z d d „  Z d d „  Z d d „  Z d d „  Z	 d S(   u   SVNEntriesFileTexti   u   1.4.xi	   u   1.5.xi
   u   1.6.xc             C   s   |  j  S(   N(   u   sections(   u   self(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   __get_cached_sectionsì  s    u(   SVNEntriesFileText.__get_cached_sectionsc             C   s±   d } |  j  j | ƒ } d d „  t t j | ƒ Dƒ } yE t | d j d ƒ ƒ } | |  j j ƒ  k r{ t	 j
 d | ƒ n  Wn t k
 r” d  SYn X| |  _ |  j |  _ |  j S(   Nu   
c             S   s   g  |  ] } | ‘ q S(    (    (   u   .0u   x(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu
   <listcomp>ò  s   	 u3   SVNEntriesFileText.get_sections.<locals>.<listcomp>i    u   Unknown subversion verson %d(   u   datau   splitu   mapu   stru
   splitlinesu   intu   popu   known_svn_versionsu   valuesu   logu   warnu
   ValueErroru   sectionsu(   _SVNEntriesFileText__get_cached_sectionsu   get_sections(   u   selfu   SECTION_DIVIDERu   sectionsu   svn_version(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   get_sectionsï  s    		u   SVNEntriesFileText.get_sectionsc             C   s   t  |  j ƒ  ƒ S(   N(   u   boolu   get_sections(   u   self(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   is_validþ  s    u   SVNEntriesFileText.is_validc             C   s   |  j  ƒ  d d S(   Ni    i   (   u   get_sections(   u   self(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   get_url  s    u   SVNEntriesFileText.get_urlc                s)   d ‰  ‡  f d d †  |  j  ƒ  Dƒ } | S(   Ni	   c                s<   g  |  ]2 } t  | ƒ ˆ  k r | ˆ  r t | ˆ  ƒ ‘ q S(    (   u   lenu   int(   u   .0u   section(   u   revision_line_number(    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu
   <listcomp>  s   	u=   SVNEntriesFileText.parse_revision_numbers.<locals>.<listcomp>(   u   get_sections(   u   selfu   rev_numbers(    (   u   revision_line_numberu-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   parse_revision_numbers  s    u)   SVNEntriesFileText.parse_revision_numbersc                s/   d d „  ‰  ‡  f d d †  |  j  ƒ  Dƒ } | S(   Nc             S   s0   |  o/ |  d o/ t  |  ƒ d k  p/ |  d d k S(   Ni    i   i   u   delete(   u   len(   u   s(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   <lambda>  s    u:   SVNEntriesFileText.get_undeleted_records.<locals>.<lambda>c                s&   g  |  ] } ˆ  | ƒ r | d  ‘ q S(   i    (    (   u   .0u   section(   u	   undeleted(    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu
   <listcomp>  s   	u<   SVNEntriesFileText.get_undeleted_records.<locals>.<listcomp>(   u   get_sections(   u   selfu   result(    (   u	   undeletedu-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   get_undeleted_records  s    u(   SVNEntriesFileText.get_undeleted_recordsN(
   u   __name__u
   __module__u   __qualname__u   known_svn_versionsu(   _SVNEntriesFileText__get_cached_sectionsu   get_sectionsu   is_validu   get_urlu   parse_revision_numbersu   get_undeleted_records(   u
   __locals__(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   SVNEntriesFileTextå  s   

u   SVNEntriesFileTextc             B   sD   |  Ee  Z d  Z d d „  Z d d „  Z d d „  Z d d „  Z d	 S(
   u   SVNEntriesFileXMLc             C   s   d S(   NT(   u   True(   u   self(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   is_valid  s    u   SVNEntriesFileXML.is_validc             C   s(   t  j d ƒ } | j |  j ƒ j d ƒ S(   u   Get repository URLu   url="([^"]+)"i   (   u   reu   compileu   searchu   datau   group(   u   selfu   urlre(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   get_url  s    u   SVNEntriesFileXML.get_urlc             C   s,   t  j d ƒ } d d „  | j |  j ƒ Dƒ S(   Nu   committed-rev="(\d+)"c             S   s%   g  |  ] } t  | j d  ƒ ƒ ‘ q S(   i   (   u   intu   group(   u   .0u   m(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu
   <listcomp>$  s   	u<   SVNEntriesFileXML.parse_revision_numbers.<locals>.<listcomp>(   u   reu   compileu   finditeru   data(   u   selfu   revre(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   parse_revision_numbers!  s    	u(   SVNEntriesFileXML.parse_revision_numbersc             C   s8   t  j d t  j ƒ } d d „  | j |  j ƒ Dƒ } | S(   Nu%   name="([^"]+)"(?![^>]+deleted="true")c             S   s%   g  |  ] } t  | j d  ƒ ƒ ‘ q S(   i   (   u   unescapeu   group(   u   .0u   match(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu
   <listcomp>,  s   	u;   SVNEntriesFileXML.get_undeleted_records.<locals>.<listcomp>(   u   reu   compileu   Iu   finditeru   data(   u   selfu   entries_patternu   results(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   get_undeleted_records(  s    	u'   SVNEntriesFileXML.get_undeleted_recordsN(   u   __name__u
   __module__u   __qualname__u   is_validu   get_urlu   parse_revision_numbersu   get_undeleted_records(   u
   __locals__(    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   SVNEntriesFileXML  s   u   SVNEntriesFileXMLu   __main__i   (3   u   osu   reu   sysu	   distutilsu   logu   xml.dom.pulldomu   xmlu   shlexu   localeu   codecsu   unicodedatau   warningsu   setuptools.compatu   unicodeu   xml.sax.saxutilsu   unescapeu   urlparseu   ImportErroru   urllib.parseu   parseu
   subprocessu   Popenu   _Popenu   PIPEu   _PIPEu   Noneu   _run_commandu   _get_entry_scheduleu   _get_target_propertyu   _get_xml_datau   joinpathu   determine_console_encodingu   _console_encodingu   decode_as_stringu   parse_dir_entriesu   parse_externals_xmlu   parse_external_propu   parse_prop_fileu   objectu   SvnInfou	   Svn13Infou	   Svn15Infou   SvnFileInfou
   svn_finderu   SVNEntriesFileu   SVNEntriesFileTextu   SVNEntriesFileXMLu   __name__u   argvu   nameu   print(    (    (    u-   /tmp/pip-k8wh6o-build/setuptools/svn_utils.pyu   <module>   sN   		$t
B3