<!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>

]-G                 @   s   d  d l  Z  d  d l Z d  d l Z d  d l Td  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 d  d l m Z d  d l Td  d l m Z d  d	 l	 m Z d  d
 l m Z d d   Z Gd d   d e  Z d S)    N)*)glob)warn)Command)dir_utildep_util	file_utilarchive_util)TextFile)FileList)log)convert_pathc              C   s   d d l  m }  d d l m } g  } x6 | j   D]( } | j d | d  | | d f  q3 W| j   |  |  j d  d  S)Nr   )FancyGetopt)ARCHIVE_FORMATSzformats=   z.List of available source distribution formats:)Zdistutils.fancy_getoptr   Zdistutils.archive_utilr   keysappendsort
print_help)r   r   formatsformat r   */opt/alt/python35/lib64/python3.5/sdist.pyshow_formats   s    
r   c               @   sg  e  Z d  Z d Z d d   Z dM dN dO dP dQ dR dS dT dU d d d d f dV dW dX dY g Z d
 d d d d d" g Z d* d d+ e f g Z d d
 d d i Z	 d, d- d. d/ i Z
 d0 e f g Z d1 d2   Z d3 d4   Z d5 d6   Z d7 d8   Z d9 d:   Z d; d<   Z d= d>   Z d? d@   Z dA dB   Z dC dD   Z dE dF   Z dG dH   Z dI dJ   Z dK dL   Z d S)Zsdistz6create a source distribution (tarball, zip file, etc.)c             C   s   |  j  S)N)metadata_check)selfr   r   r   checking_metadata&   s    zsdist.checking_metadata	template=t5name of manifest template file [default: MANIFEST.in]	manifest=m)name of manifest file [default: MANIFEST]use-defaultsNRinclude the default file set in the manifest [default; disable with --no-defaults]no-defaults"don't include the default file setprunespecifically exclude files/directories that should not be distributed (build tree, RCS/CVS dirs, etc.) [default; disable with --no-prune]no-prune$don't automatically exclude anythingmanifest-onlyoEjust regenerate the manifest and then stop (implies --force-manifest)force-manifestfkforcibly regenerate the manifest and carry on as usual. Deprecated: now the manifest is always regenerated.formats=6formats 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]metadata-check[Ensure that all required elements of meta-data are supplied. Warn if any missing. [default]owner=u@Owner name used when creating a tar file [default: current user]group=gAGroup name used when creating a tar file [default: current group]zhelp-formatsz#list available distribution formatsposixgztarntzipcheckc             C   sy   d  |  _  d  |  _ d |  _ d |  _ d |  _ d |  _ d  |  _ d |  _ d  |  _ d  |  _	 d |  _
 d  |  _ d  |  _ d  S)N   r   )templatemanifestuse_defaultsr(   manifest_onlyZforce_manifestr   	keep_tempdist_dirarchive_filesr   ownergroup)r   r   r   r   initialize_optionsd   s    												zsdist.initialize_optionsc             C   s   |  j  d  k r d |  _  |  j d  k r0 d |  _ |  j d  |  j d  k r y |  j t j g |  _ Wn% t k
 r t d t j   Yn Xt	 j
 |  j  } | r t d |   |  j d  k r d |  _ d  S)NZMANIFESTzMANIFEST.inr   z<don't know how to create source distributions on platform %szunknown archive format '%s'Zdist)rG   rF   Zensure_string_listr   default_formatosnameKeyErrorZDistutilsPlatformErrorr	   Zcheck_archive_formatsZDistutilsOptionErrorrK   )r   Z
bad_formatr   r   r   finalize_options{   s$    		zsdist.finalize_optionsc             C   sU   t    |  _ x! |  j   D] } |  j |  q W|  j   |  j rG d  S|  j   d  S)N)r   filelistZget_sub_commandsZrun_commandget_file_listrI   make_distribution)r   Zcmd_namer   r   r   run   s    
	z	sdist.runc             C   s7   t  d t  |  j j d  } | j   | j   d  S)Nzadistutils.command.sdist.check_metadata is deprecated,               use the check command insteadrD   )r   PendingDeprecationWarningdistributionZget_command_objZensure_finalizedrX   )r   rD   r   r   r   check_metadata   s
    

zsdist.check_metadatac             C   s   t  j j |  j  } | rP |  j   rP |  j   |  j j   |  j j   d  S| sn |  j	 d d |  j  |  j j
   |  j r |  j   | r |  j   |  j r |  j   |  j j   |  j j   |  j   d  S)Nz&manifest template '%s' does not exist z(using default file list))rQ   pathisfilerF   _manifest_is_not_generatedread_manifestrU   r   Zremove_duplicatesr   findallrH   add_defaultsread_templater(   prune_file_listwrite_manifest)r   Ztemplate_existsr   r   r   rV      s(    
		

	
zsdist.get_file_listc             C   s  d |  j  j g } x | D] } t | t  r | } d } x7 | D]/ } t j j |  rA d } |  j j |  PqA W| s |  j	 d d j
 |   q t j j |  r |  j j |  q |  j	 d |  q Wd d	 g } x9 | D]1 } t t j j t |   } |  j j |  q W|  j d
  } |  j  j   rM|  j j | j    xM | j D]B \ }	 }
 } } x- | D]% } |  j j t j j
 |
 |   qpWqWW|  j  j   rNx |  j  j D] } t | t  rt |  } t j j |  rJ|  j j |  q| \ } } x< | D]4 } t |  } t j j |  r|  j j |  qWqW|  j  j   r|  j d  } |  j j | j    |  j  j   r|  j d  } |  j j | j    |  j  j   r|  j d  } |  j j | j    d  S)NREADME
README.txtFTz,standard file not found: should have one of z, zstandard file '%s' not foundztest/test*.pyz	setup.cfgbuild_py	build_ext
build_clibbuild_scripts)re   rf   )rZ   Zscript_name
isinstancetuplerQ   r\   existsrU   r   r   joinfilterr]   r   extendget_finalized_commandZhas_pure_modulesZget_source_filesZ
data_filesZhas_data_filesstrr   Zhas_ext_modulesZhas_c_librariesZhas_scripts)r   Z	standardsfnZaltsZgot_itZoptionalpatternfilesrg   ZpkgZsrc_dirZ	build_dir	filenamesfilenameitemdirnamer0   rh   ri   rj   r   r   r   ra      s\    	'zsdist.add_defaultsc             C   s   t  j d |  j  t |  j d d d d d d d d d d d d } z x | j   } | d  k re Py |  j j |  WqL t t f k
 r } z% |  j	 d	 | j
 | j | f  WYd  d  } ~ XqL XqL WWd  | j   Xd  S)
Nzreading manifest template '%s'Zstrip_commentsrE   Zskip_blanksZ
join_linesZ	lstrip_wsZ	rstrip_wsZcollapse_joinz%s, line %d: %s)r   inforF   r
   readlinerU   Zprocess_template_lineZDistutilsTemplateError
ValueErrorr   rw   Zcurrent_lineclose)r   rF   linemsgr   r   r   rb   (  s     	&zsdist.read_templatec             C   s   |  j  d  } |  j j   } |  j j d  d | j |  j j d  d | t j d k re d } n d } d d d d	 d
 d d g } d | d j |  | f } |  j j | d d d  S)Nbuildprefixwin32z/|\\/ZRCSZCVSz\.svnz\.hgz\.gitz\.bzrZ_darcsz(^|%s)(%s)(%s).*|Zis_regexrE   )	rq   rZ   get_fullnamerU   Zexclude_patternZ
build_basesysplatformrn   )r   r   base_dirsepsZvcs_dirsZvcs_ptrnr   r   r   rc   E  s    		zsdist.prune_file_listc             C   st   |  j    r$ t j d |  j  d  S|  j j d  d   } | j d d  |  j t j	 |  j | f d |  j  d  S)Nz5not writing to manually maintained manifest file '%s'r   z*# file GENERATED by distutils, do NOT editzwriting manifest file '%s')
r^   r   rz   rG   rU   ru   insertZexecuter   Z
write_file)r   Zcontentr   r   r   rd   ]  s    	zsdist.write_manifestc          
   C   sP   t  j j |  j  s d St |  j  } z | j   } Wd  | j   X| d k S)NFz+# file GENERATED by distutils, do NOT edit
)rQ   r\   r]   rG   openr{   r}   )r   fpZ
first_liner   r   r   r^   l  s    z sdist._manifest_is_not_generatedc             C   sv   t  j d |  j  t |  j  } xC | D]; } | j   } | j d  s) | rT q) |  j j |  q) W| j   d  S)Nzreading manifest file '%s'#)	r   rz   rG   r   strip
startswithrU   r   r}   )r   rG   r~   r   r   r   r_   x  s    zsdist.read_manifestc             C   s   |  j  |  t j | | d |  j t t d  rH d } d | } n d  } d | } | sn t j d  n t j |  x_ | D]W } t j	 j
 |  s t j d |  q t j	 j | |  } |  j | | d | q W|  j j j |  d  S)Ndry_runlinkZhardzmaking hard links in %s...zcopying files to %s...z)no files to distribute -- empty manifest?z#'%s' not a regular file -- skipping)Zmkpathr   Zcreate_treer   hasattrrQ   r   r   rz   r\   r]   rn   Z	copy_filerZ   ZmetadataZwrite_pkg_info)r   r   ru   r   r   filedestr   r   r   make_release_tree  s     	
zsdist.make_release_treec          
   C   s  |  j  j   } t j j |  j |  } |  j | |  j j  g  } d |  j	 k rz |  j	 j
 |  j	 j |  j	 j d    xd |  j	 D]Y } |  j | | d | d |  j d |  j } | j
 |  |  j  j j
 d d | f  q W| |  _ |  j s	t j | d |  j d  S)Ntarr   rM   rN   r    r   )rZ   r   rQ   r\   rn   rK   r   rU   ru   r   r   popindexmake_archiverM   rN   Z
dist_filesrL   rJ   r   Zremove_treer   )r   r   	base_namerL   fmtr   r   r   r   rW     s    
( 		zsdist.make_distributionc             C   s   |  j  S)N)rL   )r   r   r   r   get_archive_files  s    zsdist.get_archive_files)r   r   r    )r!   r"   r#   )r$   Nr%   )r&   Nr'   )r(   Nr)   )r*   Nr+   )r,   r-   r.   )r/   r0   r1   )r2   Nr3   )r5   r6   r7   )r8   Nr9   )r:   r;   r<   )r=   r>   r?   )__name__
__module____qualname__descriptionr   Zuser_optionsZboolean_optionsr   Zhelp_optionsZnegative_optrP   Zsub_commandsrO   rT   rX   r[   rV   ra   rb   rc   rd   r^   r_   r   rW   r   r   r   r   r   r   "   sn                	(P*r   )rQ   stringr   typesr   warningsr   Zdistutils.corer   Z	distutilsr   r   r   r	   Zdistutils.text_filer
   Zdistutils.errorsZdistutils.filelistr   r   Zdistutils.utilr   r   r   r   r   r   r   <module>   s   
"
