<!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>

MRe                  @   s   d  d l  Z  d  d l Z d  d l Z d  d l m 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 Z d
 d d  Z Gd d   d e  Z d
 d d  Z e d e j d e j   e j g Z Gd d   d e  Z d S)    N)glob)sdist)convert_path)log)	svn_utilsREADME
README.rst
README.txt c             c   s@   x9 t  j d  D]( } x | j   |   D] } | Vq) Wq Wd S)z%Find all files under revision controlzsetuptools.file_findersN)pkg_resourcesiter_entry_pointsload)dirnameepitem r   3/tmp/pip-l4uy7dan-build/setuptools/command/sdist.pywalk_revctrl   s    r   c               @   s:   e  Z d  Z d d d  Z d d   Z d d d  Z d S)		re_finderNc             C   s%   | |  _  | |  _ t |  |  _ d  S)N)patternpostprocr   path)selfr   r   r   r   r   r   __init__   s    		zre_finder.__init__c             c   s   t  | d  } z | j   } Wd  | j   XxU |  j j |  D]A } | j d  } |  j rp |  j |  } n  t j | |  Vq@ Wd  S)NrU   )	openreadcloser   finditergroupr   r   joinpath)r   r   filenamefdatamatchr   r   r   r   _finder   s    	zre_finder._finderr
   c             c   s   t  j | |  j  } t j j |  r xh |  j | |  D]Q } t j j |  rZ | Vq: t j j |  r: x |  |  D] } | Vqy Wq: q: Wn  d  S)N)r   r!   r   osisfiler&   isdir)r   r   r   r   r   r   r   __call__+   s    zre_finder.__call__)__name__
__module____qualname__r   r&   r*   r   r   r   r   r      s   r   c             c   s1   x* t  D]" } x | |   D] } | Vq Wq Wd S)zPrimary svn_cvs entry pointN)finders)r   finderr   r   r   r   _default_revctrl7   s    r0   zCVS/Entriesz^\w?/([^/]+)/c               @   s   e  Z d  Z d Z d  d d d d f d! g Z i  Z d d   Z d d   Z e j	 d" k  p d# e j	 k ou d$ k  n p d% e j	 k o d& k  n Z
 e
 r e Z n  d d   Z d d   Z d d   Z d d   Z d d   Z d S)'r   z=Smart sdist that finds anything supported by revision controlformats=N6formats for source distribution (comma-separated list)z	keep-tempkz1keep the distribution tree around after creating zarchive file(s)	dist-dir=dFdirectory to put the source distribution archive(s) in [default: dist]c             C   s  |  j  d  |  j d  } | j |  _ |  j j t j j | j d   |  j   x! |  j	   D] } |  j  |  qa Wd d  l
 } d | j j k r |  j   n  |  j   t |  j d g   } x< |  j D]1 } d d | f } | | k r | j |  q q Wd  S)Negg_infozSOURCES.txtr   check
dist_filesr   r
   )run_commandget_finalized_commandfilelistappendr'   r   joinr7   check_readmeget_sub_commandsdistutils.commandcommand__all__Zcheck_metadataZmake_distributiongetattrdistributionZarchive_files)r   Zei_cmdcmd_name	distutilsr9   filer$   r   r   r   runU   s     "

z	sdist.runc          	   C   sD   y t  j |   Wn, t j   d j j j d j     Yn Xd  S)N   template)_sdistread_templatesysexc_infotb_nexttb_framef_localsr   )r   r   r   r   Z__read_template_hackn   s
    !zsdist.__read_template_hackrJ         r   r      c                s`  t  |  j j g } x | D] } t | t  r | } d } x: | D]2 } t j j |  rA d } |  j j	 |  PqA qA W| s |  j
 d d j |   q q t j j |  r |  j j	 |  q |  j
 d |  q Wd d g } xH | D]@ } t t t j j t |    } | r |  j j |  q q W|  j j   r|  j d  } |  j j | j    |  j j sxC | j D]5 \ }	   }	 }
 |  j j   f d	 d
   |
 D  qxWqn  |  j j   r|  j d  } |  j j | j    n  |  j j   r%|  j d  } |  j j | j    n  |  j j   r\|  j d  } |  j j | j    n  d  S)Nr   r   z,standard file not found: should have one of z, zstandard file '%s' not foundztest/test*.pyz	setup.cfgbuild_pyc                s%   g  |  ] } t  j j   |   q Sr   )r'   r   r>   ).0r"   )src_dirr   r   
<listcomp>   s   	z&sdist.add_defaults.<locals>.<listcomp>	build_ext
build_clibbuild_scripts)READMESrE   script_name
isinstancetupler'   r   existsr<   r=   warnr>   listfilterr(   r   extendhas_pure_modulesr;   Zget_source_filesZinclude_package_data
data_fileshas_ext_moduleshas_c_librarieshas_scripts)r   Z	standardsfnZaltsZgot_itoptionalr   filesrV   _	filenamesrZ   r[   r\   r   )rX   r   add_defaults   sL    	!zsdist.add_defaultsc             C   sE   x> t  D] } t j j |  r d  Sq W|  j d d j t    d  S)Nz,standard file not found: should have one of z, )r]   r'   r   ra   rb   r>   )r   r#   r   r   r   r?      s
    zsdist.check_readmec             C   s   t  j |  | |  t j j | d  } t t d  ri t j j |  ri t j |  |  j d |  n  |  j	 d  j
 |  d  S)Nz	setup.cfglinkr7   )rL   make_release_treer'   r   r>   hasattrra   unlink	copy_filer;   Zsave_version_info)r   base_dirrm   destr   r   r   rr      s    !zsdist.make_release_treec          
   C   sY   t  j j |  j  s d St |  j d  } z | j   } Wd  | j   X| d j   k S)NFrbUz+# file GENERATED by distutils, do NOT edit
)r'   r   r(   manifestr   readliner   encode)r   fp
first_liner   r   r   _manifest_is_not_generated   s    z sdist._manifest_is_not_generatedc             C   s   t  j d |  j  t |  j d  } x | D] } t j d k r y | j d  } Wq t k
 r| t  j d |  w, Yq Xn  | j	   } | j
 d  s, | r q, n  |  j j |  q, W| j   d S)	zRead the manifest file (named by 'self.manifest') and use it to
        fill in 'self.filelist', the list of files to include in the source
        distribution.
        zreading manifest file '%s'rx   rT   zUTF-8z"%r not UTF-8 decodable -- skipping#N)rT   )r   infory   r   rN   version_infodecodeUnicodeDecodeErrorrb   strip
startswithr<   r=   r   )r   ry   liner   r   r   read_manifest   s    zsdist.read_manifest)r1   Nr2   )r4   r5   r6   )rJ   rS   rJ   )rT   r   )rT   r   rU   )rT   rJ   )rT   rJ   r   )r+   r,   r-   __doc__user_optionsnegative_optrI   Z_sdist__read_template_hackrN   r   Zhas_leaky_handlerM   rp   r?   rr   r~   r   r   r   r   r   r   E   s*     		5	r   )r   r   r	   )r'   rerN   r   r   Zdistutils.command.sdistr   rL   distutils.utilr   rG   r   
setuptoolsr   r]   r   objectr   r0   compileMZ
svn_finderr.   r   r   r   r   <module>   s    