
Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­
<!DOCTYPE html>
<html>
ó
Àfc           @   s@  d  Z  d d l m Z d d l m Z d d l m 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 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 d d l m Z d d l m Z d d l m Z d d l m Z m  Z  m! Z! m" Z" m# Z# m$ Z$ m% Z% m& Z& d d l' j( Z( d d l) m* Z* d d l m+ Z+ d „  Z, d e f d „  ƒ  YZ- d e f d „  ƒ  YZ d e f d „  ƒ  YZ. d „  Z/ d „  Z0 d „  Z1 d „  Z2 d „  Z3 d „  Z4 d „  Z5 d „  Z6 e7 d  „ Z8 d! „  Z9 d" „  Z: d S(#   sU   setuptools.command.egg_info

Create a distribution's .egg-info directory and contentsiÿÿÿÿ(   t   FileList(   t   DistutilsInternalError(   t   convert_path(   t   logN(   t   six(   t   map(   t   Command(   t   sdist(   t   walk_revctrl(   t   edit_config(   t	   bdist_egg(   t   parse_requirementst	   safe_namet   parse_versiont   safe_versiont   yield_linest
   EntryPointt   iter_entry_pointst   to_filename(   t   glob(   t	   packagingc         C   s€  d } |  j  t j j ƒ } t j t j ƒ } d | f } xt | ƒ D]\ } } | t | ƒ d k } | d k r¢ | rˆ | d 7} qG | d | | f 7} qG n  d } t | ƒ }	 x‹| |	 k  rA| | }
 |
 d k rê | | d 7} nJ|
 d	 k r| | 7} n1|
 d
 k r!| d } | |	 k  rB| | d k rB| d } n  | |	 k  rk| | d k rk| d } n  x* | |	 k  r—| | d k r—| d } qnW| |	 k rº| t j |
 ƒ 7} q4| | d | !} d } | d d k rôd } | d } n  | t j | ƒ 7} | d | f 7} | } n | t j |
 ƒ 7} | d 7} q· W| sG | | 7} qG qG W| d 7} t j | d t j	 t j
 BƒS(   sö   
    Translate a file path glob like '*.txt' in to a regular expression.
    This differs from fnmatch.translate which allows wildcards to match
    directory separators. It also knows about '**/' which matches any number of
    directories.
    t    s   [^%s]i   s   **s   .*s
   (?:%s+%s)*i    t   *t   ?t   [t   !t   ]t   ^s   [%s]s   \Zt   flags(   t   splitt   ost   patht   sept   ret   escapet	   enumeratet   lent   compilet	   MULTILINEt   DOTALL(   R   t   patt   chunksR    t
   valid_chart   ct   chunkt
   last_chunkt   it	   chunk_lent   chart   inner_it   innert
   char_class(    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyt   translate_pattern$   sV    

	
t   egg_infoc           B   s½   e  Z d  Z d d d d g Z d g Z i d d
 6Z d „  Z e d „  ƒ Z e j	 d „  ƒ Z d „  Z
 d „  Z e d „ Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z RS(   s+   create a distribution's .egg-info directorys	   egg-base=t   esL   directory containing .egg-info directories (default: top of the source tree)s   tag-datet   ds0   Add date stamp (e.g. 20050528) to version numbers
   tag-build=t   bs-   Specify explicit tag to add to version numbers   no-datet   Ds"   Don't include date stamp [default]c         C   sL   d  |  _ d  |  _ d  |  _ d  |  _ d  |  _ d |  _ t |  _ d  |  _	 d  S(   Ni    (
   t   Nonet   egg_namet   egg_versiont   egg_baseR5   t	   tag_buildt   tag_datet   Falset   broken_egg_infot   vtags(   t   self(    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyt   initialize_options‡   s    							c         C   s   d  S(   N(    (   RC   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyt   tag_svn_revision”   s    c         C   s   d  S(   N(    (   RC   t   value(    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyRE   ˜   s    c         C   s@   t  j ƒ  } |  j ƒ  | d <d | d <t | t d | ƒ ƒ d S(   s³   
        Materialize the value of date into the
        build tag. Install build keys in a deterministic order
        to avoid arbitrary reordering on subsequent builds.
        R>   i    R?   R5   N(   t   collectionst   OrderedDictt   tagsR	   t   dict(   RC   t   filenameR5   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyt   save_version_info�   s    
c         C   sç  t  |  j j ƒ  ƒ |  _ |  j ƒ  |  _ |  j ƒ  |  _ t |  j ƒ } yK t	 | t
 j j ƒ } | ri d n d } t t | |  j |  j f ƒ ƒ Wn3 t k
 rÅ t j j d |  j |  j f ƒ ‚ n X|  j d  k r|  j j } | pê i  j d t j ƒ |  _ n  |  j d ƒ t |  j ƒ d |  _ |  j t j k rXt j j |  j |  j ƒ |  _ n  d |  j k rt|  j ƒ  n  |  j |  j j _ |  j j  } | d  k	 rã| j! |  j j" ƒ  k rã|  j | _# t |  j ƒ | _$ d  |  j _  n  d  S(   Ns   %s==%ss   %s===%ss2   Invalid distribution name or version syntax: %s-%sR   R=   s	   .egg-infot   -(%   R   t   distributiont   get_nameR;   RI   RB   t   tagged_versionR<   R   t
   isinstanceR   t   versiont   Versiont   listR   t
   ValueErrort	   distutilst   errorst   DistutilsOptionErrorR=   R:   t   package_dirt   getR   t   curdirt   ensure_dirnameR   R5   R   t   joint   check_broken_egg_infot   metadatat   _patched_distt   keyt   lowert   _versiont   _parsed_version(   RC   t   parsed_versiont
   is_versiont   spect   dirst   pd(    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyt   finalize_optionsª   s8    !	!!$c         C   sl   | r |  j  | | | ƒ nL t j j | ƒ rh | d k rX | rX t j d | | ƒ d S|  j | ƒ n  d S(   s¹  Write `data` to `filename` or delete if empty

        If `data` is non-empty, this routine is the same as ``write_file()``.
        If `data` is empty but not ``None``, this is the same as calling
        ``delete_file(filename)`.  If `data` is ``None``, then this is a no-op
        unless `filename` exists, in which case a warning is issued about the
        orphaned file (if `force` is false), or deleted (if `force` is true).
        s$   %s not set in setup(), but %s existsN(   t
   write_fileR   R   t   existsR:   R   t   warnt   delete_file(   RC   t   whatRK   t   datat   force(    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyt   write_or_delete_fileÙ   s    	c         C   sd   t  j d | | ƒ t j r. | j d ƒ } n  |  j s` t | d ƒ } | j | ƒ | j ƒ  n  d S(   sª   Write `data` to `filename` (if not a dry run) after announcing it

        `what` is used in a log message to identify what is being written
        to the file.
        s   writing %s to %ss   utf-8t   wbN(	   R   t   infoR   t   PY3t   encodet   dry_runt   opent   writet   close(   RC   Ro   RK   Rp   t   f(    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyRk   í   s    		c         C   s-   t  j d | ƒ |  j s) t j | ƒ n  d S(   s8   Delete `filename` (if not a dry run) after announcing its   deleting %sN(   R   Rt   Rw   R   t   unlink(   RC   RK   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyRn   û   s    	c         C   sE   |  j  j ƒ  } |  j r4 | j |  j ƒ r4 t | ƒ St | |  j ƒ S(   N(   RN   t   get_versionRB   t   endswithR   (   RC   RR   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyRP     s    
c         C   s¿   |  j  |  j ƒ |  j j } xX t d ƒ D]J } | j d | ƒ | j ƒ  } | |  | j t j	 j
 |  j | j ƒ ƒ q) Wt j	 j
 |  j d ƒ } t j	 j | ƒ r± |  j | ƒ n  |  j ƒ  d  S(   Ns   egg_info.writerst	   installers   native_libs.txt(   t   mkpathR5   RN   t   fetch_build_eggR   t   requiret   resolvet   nameR   R   R]   Rl   Rn   t   find_sources(   RC   R   t   ept   writert   nl(    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyt   run	  s    ,c         C   sB   d } |  j  r | |  j  7} n  |  j r> | t j d ƒ 7} n  | S(   NR   s   -%Y%m%d(   R>   R?   t   timet   strftime(   RC   RR   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyRI     s    		c         C   sJ   t  j j |  j d ƒ } t |  j ƒ } | | _ | j ƒ  | j |  _ d S(   s"   Generate SOURCES.txt manifest files   SOURCES.txtN(	   R   R   R]   R5   t   manifest_makerRN   t   manifestR‰   t   filelist(   RC   t   manifest_filenamet   mm(    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyR…      s
    	
c         C   sŽ   |  j  d } |  j t j k r: t j j |  j | ƒ } n  t j j | ƒ rŠ t j d d d d d | |  j	 ƒ |  j	 |  _
 | |  _	 n  d  S(   Ns	   .egg-infoRM   iN   s¦   
Note: Your current .egg-info directory has a '-' in its name;
this will not work correctly with "setup.py develop".

Please rename %s to %s to correct this problem.
(   R;   R=   R   R[   R   R]   Rl   R   Rm   R5   RA   (   RC   t   bei(    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyR^   (  s    (   s	   egg-base=R6   sL   directory containing .egg-info directories (default: top of the source tree)(   s   tag-dateR7   s0   Add date stamp (e.g. 20050528) to version number(   s
   tag-build=R8   s-   Specify explicit tag to add to version number(   s   no-dateR9   s"   Don't include date stamp [default](   t   __name__t
   __module__t   descriptiont   user_optionst   boolean_optionst   negative_optRD   t   propertyRE   t   setterRL   Rj   R@   Rr   Rk   Rn   RP   R‰   RI   R…   R^   (    (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyR5   w   s*   		
			/						R    c           B   s†   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d „  Z
 d	 „  Z d
 „  Z d „  Z d „  Z d „  Z RS(   c         C   só  |  j  | ƒ \ } } } } | d k rw |  j d d j | ƒ ƒ x«| D]( } |  j | ƒ sH t j d | ƒ qH qH Wnx| d k rÓ |  j d d j | ƒ ƒ xO| D]( } |  j | ƒ s¤ t j d | ƒ q¤ q¤ Wn| d k r/|  j d	 d j | ƒ ƒ xó| D]( } |  j | ƒ s t j d
 | ƒ q q WnÀ| d k r‹|  j d d j | ƒ ƒ x—| D]( } |  j | ƒ s\t j d | ƒ q\q\Wnd| d k ró|  j d | d j | ƒ f ƒ x5| D]. } |  j	 | | ƒ s¾t j d | | ƒ q¾q¾Wnü | d k r[|  j d | d j | ƒ f ƒ xÍ | D]. } |  j
 | | ƒ s&t j d | | ƒ q&q&Wn” | d k r�|  j d | ƒ |  j | ƒ sït j d | ƒ qïnR | d k rß|  j d | ƒ |  j | ƒ sït j d | ƒ qïn t d | ƒ ‚ d  S(   Nt   includes   include t    s%   warning: no files found matching '%s't   excludes   exclude s9   warning: no previously-included files found matching '%s's   global-includes   global-include s>   warning: no files found matching '%s' anywhere in distributions   global-excludes   global-exclude sR   warning: no previously-included files matching '%s' found anywhere in distributions   recursive-includes   recursive-include %s %ss:   warning: no files found matching '%s' under directory '%s's   recursive-excludes   recursive-exclude %s %ssN   warning: no previously-included files matching '%s' found under directory '%s't   grafts   graft s+   warning: no directories found matching '%s't   prunes   prune s6   no previously-included directories found matching '%s's'   this cannot happen: invalid action '%s'(   t   _parse_template_linet   debug_printR]   Rš   R   Rm   Rœ   t   global_includet   global_excludet   recursive_includet   recursive_excludeR�   Rž   R   (   RC   t   linet   actiont   patternst   dirt   dir_patternt   pattern(    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyt   process_template_line;  sd    									c         C   sr   t  } xe t t |  j ƒ d d d ƒ D]D } | |  j | ƒ r& |  j d |  j | ƒ |  j | =t } q& q& W| S(   s†   
        Remove all files from the file list that match the predicate.
        Return True if any matching files were removed
        i   iÿÿÿÿs
    removing (   R@   t   rangeR$   t   filesR    t   True(   RC   t	   predicatet   foundR.   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyt   _remove_files„  s    &
c         C   sH   g  t  | ƒ D] } t j j | ƒ s | ^ q } |  j | ƒ t | ƒ S(   s#   Include files that match 'pattern'.(   R   R   R   t   isdirt   extendt   bool(   RC   Rª   R{   R°   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyRš   ‘  s    1c         C   s   t  | ƒ } |  j | j ƒ S(   s#   Exclude files that match 'pattern'.(   R4   R±   t   match(   RC   Rª   Rµ   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyRœ   —  s    c         C   sf   t  j j | d | ƒ } g  t | d t ƒD] } t  j j | ƒ s+ | ^ q+ } |  j | ƒ t | ƒ S(   sN   
        Include all files anywhere in 'dir/' that match the pattern.
        s   **t	   recursive(   R   R   R]   R   R®   R²   R³   R´   (   RC   R¨   Rª   t   full_patternR{   R°   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyR£   œ  s
    c         C   s.   t  t j j | d | ƒ ƒ } |  j | j ƒ S(   sM   
        Exclude any file anywhere in 'dir/' that match the pattern.
        s   **(   R4   R   R   R]   R±   Rµ   (   RC   R¨   Rª   Rµ   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyR¤   ¦  s    c         C   sO   g  t  | ƒ D]% } t j j | ƒ D] } | ^ q# q } |  j | ƒ t | ƒ S(   s   Include all files from 'dir/'.(   R   RV   RŽ   t   findallR³   R´   (   RC   R¨   t	   match_dirt   itemR°   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyR�   ­  s
    %c         C   s+   t  t j j | d ƒ ƒ } |  j | j ƒ S(   s   Filter out files from 'dir/'.s   **(   R4   R   R   R]   R±   Rµ   (   RC   R¨   Rµ   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyRž   ·  s    c         C   sy   |  j  d k r |  j ƒ  n  t t j j d | ƒ ƒ } g  |  j  D] } | j | ƒ rA | ^ qA } |  j | ƒ t	 | ƒ S(   s“   
        Include all files anywhere in the current directory that match the
        pattern. This is very inefficient on large file trees.
        s   **N(
   t   allfilesR:   R¸   R4   R   R   R]   Rµ   R³   R´   (   RC   Rª   Rµ   R{   R°   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyR¡   ¼  s    +c         C   s+   t  t j j d | ƒ ƒ } |  j | j ƒ S(   sD   
        Exclude all files anywhere that match the pattern.
        s   **(   R4   R   R   R]   R±   Rµ   (   RC   Rª   Rµ   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyR¢   È  s    c         C   sN   | j  d ƒ r | d  } n  t | ƒ } |  j | ƒ rJ |  j j | ƒ n  d  S(   Ns   iÿÿÿÿ(   R~   R   t
   _safe_pathR­   t   append(   RC   Rº   R   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyR½   Ï  s
    c         C   s    |  j  j t |  j | ƒ ƒ d  S(   N(   R­   R³   t   filterR¼   (   RC   t   paths(    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyR³   ×  s    c         C   s"   t  t |  j |  j ƒ ƒ |  _ d S(   sÜ   
        Replace self.files with only safe paths

        Because some owners of FileList manipulate the underlying
        ``files`` attribute directly, this method must be called to
        repair those paths.
        N(   RT   R¾   R¼   R­   (   RC   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyt   _repairÚ  s    c         C   sÈ   d } t  j | ƒ } | d  k r6 t j d | ƒ t St  j | d ƒ } | d  k rk t j | | d ƒ t Sy, t j j	 | ƒ s’ t j j	 | ƒ r– t
 SWn* t k
 rÃ t j | | t j ƒ  ƒ n Xd  S(   Ns!   '%s' not %s encodable -- skippings'   '%s' in unexpected encoding -- skippings   utf-8(   t   unicode_utilst   filesys_decodeR:   R   Rm   R@   t
   try_encodeR   R   Rl   R®   t   UnicodeEncodeErrort   syst   getfilesystemencoding(   RC   R   t   enc_warnt   u_patht	   utf8_path(    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyR¼   ä  s    $(   R’   R“   R«   R±   Rš   Rœ   R£   R¤   R�   Rž   R¡   R¢   R½   R³   RÀ   R¼   (    (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyR    8  s   	I				
		
						
RŒ   c           B   se   e  Z d  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z e	 d „  ƒ Z
 d „  Z d	 „  Z RS(
   s   MANIFEST.inc         C   s(   d |  _  d |  _ d |  _ d |  _ d  S(   Ni   (   t   use_defaultsRž   t   manifest_onlyt   force_manifest(   RC   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyRD   ÿ  s    			c         C   s   d  S(   N(    (   RC   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyRj     s    c         C   sŒ   t  ƒ  |  _ t j j |  j ƒ s. |  j ƒ  n  |  j ƒ  t j j |  j ƒ rZ |  j	 ƒ  n  |  j
 ƒ  |  j j ƒ  |  j j ƒ  |  j ƒ  d  S(   N(   R    RŽ   R   R   Rl   R�   t   write_manifestt   add_defaultst   templatet   read_templatet   prune_file_listt   sortt   remove_duplicates(   RC   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyR‰     s    

c         C   s"   t  j | ƒ } | j t j d ƒ S(   Nt   /(   RÁ   RÂ   t   replaceR   R    (   RC   R   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyt   _manifest_normalize  s    c         C   sb   |  j  j ƒ  g  |  j  j D] } |  j | ƒ ^ q } d |  j } |  j t |  j | f | ƒ d S(   so   
        Write the file list in 'self.filelist' to the manifest file
        named by 'self.manifest'.
        s   writing manifest file '%s'N(   RŽ   RÀ   R­   RÖ   R�   t   executeRk   (   RC   R{   R­   t   msg(    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyRÍ     s    (c         C   s&   |  j  | ƒ s" t j |  | ƒ n  d  S(   N(   t   _should_suppress_warningR   Rm   (   RC   RØ   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyRm   $  s    c         C   s   t  j d |  ƒ S(   s;   
        suppress missing-file warnings from sdist
        s   standard file .*not found(   R!   Rµ   (   RØ   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyRÙ   (  s    c         C   s£   t  j |  ƒ |  j j |  j ƒ |  j j |  j ƒ t t ƒ  ƒ } | r[ |  j j | ƒ n" t	 j
 j |  j ƒ r} |  j ƒ  n  |  j d ƒ } |  j j | j ƒ d  S(   NR5   (   R   RÎ   RŽ   R½   RÏ   R�   RT   R   R³   R   R   Rl   t   read_manifestt   get_finalized_commandR�   R5   (   RC   t   rcfilest   ei_cmd(    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyRÎ   /  s    c         C   sy   |  j  d ƒ } |  j j ƒ  } |  j j | j ƒ |  j j | ƒ t j t j	 ƒ } |  j j
 d | d | d d ƒd  S(   Nt   builds   (^|s   )(RCS|CVS|\.svn)t   is_regexi   (   RÛ   RN   t   get_fullnameRŽ   Rž   t
   build_baseR!   R"   R   R    t   exclude_pattern(   RC   RÞ   t   base_dirR    (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyRÑ   ;  s    (   R’   R“   RÏ   RD   Rj   R‰   RÖ   RÍ   Rm   t   staticmethodRÙ   RÎ   RÑ   (    (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyRŒ   ü  s   							c         C   sG   d j  | ƒ } | j d ƒ } t |  d ƒ � } | j | ƒ Wd QXd S(   s{   Create a file with the specified name and write 'contents' (a
    sequence of strings without line terminators) to it.
    s   
s   utf-8Rs   N(   R]   Rv   Rx   Ry   (   RK   t   contentsR{   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyRk   E  s    c         C   s«   t  j d | ƒ |  j s§ |  j j } |  j | j | _ } |  j | j | _ } z | j	 |  j
 ƒ Wd  | | | _ | _ Xt |  j d d  ƒ } t j |  j
 | ƒ n  d  S(   Ns
   writing %st   zip_safe(   R   Rt   Rw   RN   R_   R<   RR   R;   R„   t   write_pkg_infoR5   t   getattrR:   R
   t   write_safety_flag(   t   cmdt   basenameRK   R_   t   oldvert   oldnamet   safe(    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyRç   R  s    	c         C   s&   t  j j | ƒ r" t j d ƒ n  d  S(   Nss   WARNING: 'depends.txt' is not used by setuptools 0.6!
Use the install_requires/extras_require setup() args instead.(   R   R   Rl   R   Rm   (   Rê   Rë   RK   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyt   warn_depends_obsoletee  s    c         C   s;   t  | p d ƒ } d „  } t | | ƒ } |  j | ƒ d  S(   Nc         S   s   |  d S(   Ns   
(    (   R¥   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyt   <lambda>o  R   (    (   R   R   t
   writelines(   t   streamt   reqst   linest	   append_cr(    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyt   _write_requirementsm  s    	c         C   s’   |  j  } t j ƒ  } t | | j ƒ | j p1 i  } x> t | ƒ D]0 } | j d j t	 ƒ  �  ƒ t | | | ƒ qA W|  j
 d | | j ƒ  ƒ d  S(   Ns   
[{extra}]
t   requirements(   RN   R   t   StringIORö   t   install_requirest   extras_requiret   sortedRy   t   formatt   varsRr   t   getvalue(   Rê   Rë   RK   t   distRp   Rú   t   extra(    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyt   write_requirementst  s    	c         C   s<   t  j ƒ  } t | |  j j ƒ |  j d | | j ƒ  ƒ d  S(   Ns   setup-requirements(   t   ioRø   Rö   RN   t   setup_requiresRr   Rþ   (   Rê   Rë   RK   Rp   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyt   write_setup_requirements  s    c         C   se   t  j g  |  j j ƒ  D] } | j d d ƒ d ^ q ƒ } |  j d | d j t | ƒ ƒ d ƒ d  S(   Nt   .i   i    s   top-level namess   
(   RJ   t   fromkeysRN   t   iter_distribution_namesR   Rk   R]   Rû   (   Rê   Rë   RK   t   kt   pkgs(    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyt   write_toplevel_names…  s    2c         C   s   t  |  | | t ƒ d  S(   N(   t	   write_argR®   (   Rê   Rë   RK   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyt   overwrite_arg�  s    c         C   sg   t  j j | ƒ d } t |  j | d  ƒ } | d  k	 rM d j | ƒ d } n  |  j | | | | ƒ d  S(   Ni    s   
(   R   R   t   splitextRè   RN   R:   R]   Rr   (   Rê   Rë   RK   Rq   t   argnameRF   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyR  “  s
    c         C   sö   |  j  j } t | t j ƒ s* | d  k r3 | } n© | d  k	 rÜ g  } x‚ t | j ƒ  ƒ D]n \ } } t | t j ƒ s¯ t j	 | | ƒ } d j
 t t t | j ƒ  ƒ ƒ ƒ } n  | j d | | f ƒ qX Wd j
 | ƒ } n  |  j d | | t ƒ d  S(   Ns   
s	   [%s]
%s

R   s   entry points(   RN   t   entry_pointsRQ   R   t   string_typesR:   Rû   t   itemsR   t   parse_groupR]   R   t   strt   valuesR½   Rr   R®   (   Rê   Rë   RK   R†   Rp   t   sectionRå   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyt   write_entries›  s    	'c          C   s}   t  j d t ƒ t j j d ƒ ry t j d ƒ �C }  x9 |  D]1 } t j	 d | ƒ } | r; t
 | j d ƒ ƒ Sq; WWd QXn  d S(   sd   
    Get a -r### off of PKG-INFO Version in case this is an sdist of
    a subversion revision.
    s$   get_pkg_info_revision is deprecated.s   PKG-INFOs   Version:.*-r(\d+)\s*$i   Ni    (   t   warningsRm   t   DeprecationWarningR   R   Rl   R  Rx   R!   Rµ   t   intt   group(   R{   R¥   Rµ   (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyt   get_pkg_info_revision¬  s     (;   t   __doc__t   distutils.filelistR    t	   _FileListt   distutils.errorsR   t   distutils.utilR   RV   R   R   R!   RÅ   R  R  RŠ   RG   t   setuptools.externR   t   setuptools.extern.six.movesR   t
   setuptoolsR   t   setuptools.command.sdistR   R   t   setuptools.command.setoptR	   t   setuptools.commandR
   t   pkg_resourcesR   R   R   R   R   R   R   R   t   setuptools.unicode_utilsRÁ   t   setuptools.globR   R   R4   R5   RŒ   Rk   Rç   Rï   Rö   R  R  R
  R  R@   R  R  R  (    (    (    s?   /usr/lib/python2.7/site-packages/setuptools/command/egg_info.pyt   <module>   sN   :	SÁÄI							
		