§
    !@Äj]  ã                  óÄ   — d dl m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c mZ d dlmZ eZddd„Z G d„ dej        ¦  «        ZdS )é    )ÚannotationsN)ÚIterator)Úchain)ÚClassVaré   )Úmetadata)ÚDistributioné   )Ú_ORIGINAL_SUBCOMMANDS)ÚlogÚ Úreturnr   c              #  ó€   K  — t          j        d¬¦  «        D ]%} |                     ¦   «         | ¦  «        E d{V —† Œ&dS )z%Find all files under revision controlzsetuptools.file_finders)ÚgroupN)r   Úentry_pointsÚload)ÚdirnameÚeps     úIC:\Projects\Historical\venv\Lib\site-packages\setuptools/command/sdist.pyÚwalk_revctrlr      s[   è è € åÔ#Ð*CÐDÑDÔDð &ð &ˆØ�2—7’7‘9”9˜WÑ%Ô%Ð%Ð%Ð%Ð%Ð%Ð%Ð%Ð%ð&ð &ó    c                  ó*  ‡ — e Zd ZU dZg d¢Zded<   ded<   i Zded<   g d	¢Zd
ed<    ed„ eD ¦   «         ¦  «        Z	dd„Z
dd„Zdd„Zeej        d„ ¦   «         ¦   «         Zdˆ fd„Zˆ fd„Zd„ Zd„ Zd„ Zd„ Zˆ fd„Zdˆ fd„Zdd„Zdd„Zd„ Zdd„Zˆ xZS ) Úsdistz=Smart sdist that finds anything supported by revision control))zformats=Nz6formats for source distribution (comma-separated list))z	keep-tempÚkz@keep the distribution tree around after creating archive file(s))z	dist-dir=ÚdzFdirectory to put the source distribution archive(s) in [default: dist])zowner=Úuz@Owner name used when creating a tar file [default: current user])zgroup=ÚgzAGroup name used when creating a tar file [default: current group]z+ClassVar[list[tuple[str, str | None, str]]]Úuser_optionsr	   ÚdistributionzClassVar[dict[str, str]]Únegative_opt)r   z.rstz.txtz.mdzClassVar[list[str]]ÚREADME_EXTENSIONSc              #  ó    K  — | ]	}d |› �V — Œ
dS )ÚREADMEN© )Ú.0Úexts     r   ú	<genexpr>zsdist.<genexpr><   s(   è è € Ð@Ð@ s�N˜S�N�NÐ@Ð@Ð@Ð@Ð@Ð@r   r   ÚNonec                ó  — |                       d¦  «         |                      d¦  «        }|j        | _        | j                             t          j                             |j        d¦  «        ¦  «         |                      ¦   «          |  	                    ¦   «         D ]}|                       |¦  «         Œ|  
                    ¦   «          t          | j        dg ¦  «        }| j        D ] }dd|f}||vr|                     |¦  «         Œ!d S )NÚegg_infozSOURCES.txtÚ
dist_filesr   r   )Úrun_commandÚget_finalized_commandÚfilelistÚappendÚosÚpathÚjoinr*   Úcheck_readmeÚget_sub_commandsÚmake_distributionÚgetattrr   Úarchive_files)ÚselfÚei_cmdÚcmd_namer+   ÚfileÚdatas         r   Úrunz	sdist.run>   s  € Ø×Ò˜Ñ$Ô$Ð$Ø×+Ò+¨JÑ7Ô7ˆØœˆŒØŒ×Ò�RœWŸ\š\¨&¬/¸=ÑIÔIÑJÔJÐJØ×ÒÑÔÐð ×-Ò-Ñ/Ô/ð 	'ð 	'ˆHØ×Ò˜XÑ&Ô&Ð&Ð&à×ÒÑ Ô Ð å˜TÔ.°¸bÑAÔAˆ
ØÔ&ð 	(ð 	(ˆDØ˜R Ð&ˆDØ˜:Ð%Ð%Ø×!Ò! $Ñ'Ô'Ð'øð	(ð 	(r   c                óD   — t           j                             | ¦  «         d S ©N)Úorigr   Úinitialize_options©r8   s    r   rA   zsdist.initialize_optionsQ   s   € ÝŒ
×%Ò% dÑ+Ô+Ð+Ð+Ð+r   c                óž   — |                       ¦   «         5  t          j                             | ¦  «         ddd¦  «         dS # 1 swxY w Y   dS )z%
        Workaround for #516
        N)Ú_remove_os_linkr@   r   r5   rB   s    r   r5   zsdist.make_distributionT   s�   € ð ×!Ò!Ñ#Ô#ð 	/ð 	/ÝŒJ×(Ò(¨Ñ.Ô.Ð.ð	/ð 	/ð 	/ñ 	/ô 	/ð 	/ð 	/ð 	/ð 	/ð 	/ð 	/ð 	/øøøð 	/ð 	/ð 	/ð 	/ð 	/ð 	/s   • AÁAÁ	Ac               #  óÚ   K  —  G d„ d¦  «        } t          t          d| ¦  «        }	 t          `n# t          $ r Y nw xY w	 dV — || ur|t          _        dS dS # || ur|t          _        w xY w)zG
        In a context, remove and restore os.link if it exists
        c                  ó   — e Zd ZdS )ú&sdist._remove_os_link.<locals>.NoValueN)Ú__name__Ú
__module__Ú__qualname__r$   r   r   ÚNoValuerG   b   s   € € € € € ØˆDr   rK   ÚlinkN)r6   r0   rL   Ú	Exception)rK   Úorig_vals     r   rD   zsdist._remove_os_link[   s·   è è € ð	ð 	ð 	ð 	ð 	ñ 	ô 	ð 	õ �2˜v wÑ/Ô/ˆð	Ý��øÝð 	ð 	ð 	ØˆDð	øøøð	#ØˆEˆEˆEà˜wÐ&Ð&Ø"•”��ð 'Ð&øˆx˜wÐ&Ð&Ø"•”Ð"Ð"Ð"Ð"s   §/ ¯
<»<Á A ÁA*c                óp   •— t          ¦   «                              ¦   «          |                      ¦   «          d S r?   )ÚsuperÚadd_defaultsÚ _add_defaults_build_sub_commands©r8   Ú	__class__s    €r   rQ   zsdist.add_defaultsp   s1   ø€ Ý‰Œ×ÒÑÔÐØ×-Ò-Ñ/Ô/Ð/Ð/Ð/r   c                ó¾   •— t          ¦   «                              ¦   «          t          j                             d¦  «        r| j                             d¦  «         d S d S )Nzpyproject.toml)rP   Ú_add_defaults_optionalr0   r1   Úisfiler.   r/   rS   s    €r   rV   zsdist._add_defaults_optionalt   sW   ø€ Ý‰Œ×&Ò&Ñ(Ô(Ð(ÝŒ7�>Š>Ð*Ñ+Ô+ð 	3ØŒM× Ò Ð!1Ñ2Ô2Ð2Ð2Ð2ð	3ð 	3r   c                ó  — | j                              ¦   «         rk|                      d¦  «        }| j                             |                     ¦   «         ¦  «         |                      |                      |¦  «        ¦  «         dS dS )zgetting python filesÚbuild_pyN)r   Úhas_pure_modulesr-   r.   ÚextendÚget_source_filesÚ_add_data_filesÚ_safe_data_files©r8   rY   s     r   Ú_add_defaults_pythonzsdist._add_defaults_pythony   sƒ   € àÔ×-Ò-Ñ/Ô/ð 	BØ×1Ò1°*Ñ=Ô=ˆHØŒM× Ò  ×!:Ò!:Ñ!<Ô!<Ñ=Ô=Ð=Ø× Ò  ×!6Ò!6°xÑ!@Ô!@ÑAÔAÐAÐAÐAð	Bð 	Br   c                ó  ‡ — ‰                       d¦  «        }t          |                     ¦   «         ¦  «        t          z
  }ˆ fd„|D ¦   «         }d„ |D ¦   «         }‰ j                             t          j        |¦  «        ¦  «         d S )NÚbuildc              3  óB   •K  — | ]}‰                      |¦  «        V — Œd S r?   )r-   )r%   Úcr8   s     €r   r'   z9sdist._add_defaults_build_sub_commands.<locals>.<genexpr>„   s1   øè è € ÐDÐD°!�×*Ò*¨1Ñ-Ô-ÐDÐDÐDÐDÐDÐDr   c              3  ó^   K  — | ](}t          |d ¦  «        ¯|                     ¦   «         V — Œ)dS )r\   N)Úhasattrr\   )r%   rd   s     r   r'   z9sdist._add_defaults_build_sub_commands.<locals>.<genexpr>…   s>   è è € ÐVÐV¨!µw¸qÐBTÑ7UÔ7UÐV�×#Ò#Ñ%Ô%ÐVÐVÐVÐVÐVÐVr   )r-   Úsetr4   r   r.   r[   r   Úfrom_iterable)r8   rb   Úmissing_cmdsÚcmdsÚfiless   `    r   rR   z&sdist._add_defaults_build_sub_commands€   sˆ   ø€ Ø×*Ò*¨7Ñ3Ô3ˆÝ˜5×1Ò1Ñ3Ô3Ñ4Ô4Õ7LÑLˆàDÐDÐDÐD°|ÐDÑDÔDˆØVÐV¨tÐVÑVÔVˆØŒ×Ò�UÔ0°Ñ7Ô7Ñ8Ô8Ð8Ð8Ð8r   c                ó   — |j         S )að  
        Since the ``sdist`` class is also used to compute the MANIFEST
        (via :obj:`setuptools.command.egg_info.manifest_maker`),
        there might be recursion problems when trying to obtain the list of
        data_files and ``include_package_data=True`` (which in turn depends on
        the files included in the MANIFEST).

        To avoid that, ``manifest_maker`` should be able to overwrite this
        method and avoid recursive attempts to build/analyze the MANIFEST.
        )Ú
data_filesr_   s     r   r^   zsdist._safe_data_filesˆ   s   € ð Ô"Ð"r   c                óN   — | j                              d„ |D ¦   «         ¦  «         dS )zA
        Add data files as found in build_py.data_files.
        c              3  ój   K  — | ].\  }}}}|D ]$}t           j                             ||¦  «        V — Œ%Œ/d S r?   )r0   r1   r2   )r%   Ú_Úsrc_dirÚ	filenamesÚnames        r   r'   z(sdist._add_data_files.<locals>.<genexpr>™   se   è è € ð 
ð 
á(��7˜A˜yØ!ð
ð 
ð õ ŒG�LŠL˜ $Ñ'Ô'ð
ð 
ð 
ð 
ð 
ð 
ð 
r   N)r.   r[   )r8   rm   s     r   r]   zsdist._add_data_files•   sD   € ð 	Œ×Òð 
ð 
à,6ð
ñ 
ô 
ñ 	
ô 	
ð 	
ð 	
ð 	
r   c                ó”   •— 	 t          ¦   «                              ¦   «          d S # t          $ r t          j        d¦  «         Y d S w xY w)Nz&data_files contains unexpected objects)rP   Ú_add_defaults_data_filesÚ	TypeErrorr   ÚwarnrS   s    €r   ru   zsdist._add_defaults_data_filesŸ   sY   ø€ ð	?Ý‰GŒG×,Ò,Ñ.Ô.Ð.Ð.Ð.øÝð 	?ð 	?ð 	?ÝŒHÐ=Ñ>Ô>Ð>Ð>Ð>Ð>ð	?øøøs   ƒ % ¥AÁAc                óÂ   •— t          ¦   «                              ¦   «          t          j        t          j        ¦  «        }| j                             d|z   d¬¦  «         d S )Nz^(\.tox|\.nox|\.venv)T)Úis_regex)rP   Úprune_file_listÚreÚescaper0   Úsepr.   Úexclude_pattern)r8   r}   rT   s     €r   rz   zsdist.prune_file_list¥   sQ   ø€ Ý‰Œ×ÒÑ!Ô!Ð!åŒi�œÑÔˆØŒ×%Ò%Ð&>ÀÑ&DÈtÐ%ÑTÔTÐTÐTÐTr   c                ó¾   — | j         D ]$}t          j                             |¦  «        r d S Œ%|                      dd                     | j         ¦  «        z   ¦  «         d S )Nz,standard file not found: should have one of z, )ÚREADMESr0   r1   Úexistsrw   r2   )r8   Úfs     r   r3   zsdist.check_readme«   sk   € Ø”ð 	ð 	ˆAÝŒw�~Š~˜aÑ Ô ð Ø��ðà�	Š	Ø:¸T¿YºYÀtÄ|Ñ=TÔ=TÑTñ	
ô 	
ð 	
ð 	
ð 	
r   c                ó”  — t           j                             | ||¦  «         t          j                             |d¦  «        }t          t          d¦  «        rIt          j                             |¦  «        r*t          j        |¦  «         |  	                    d|¦  «         |  
                    d¦  «                             |¦  «         d S )Nz	setup.cfgrL   r*   )r@   r   Úmake_release_treer0   r1   r2   rf   r�   ÚunlinkÚ	copy_filer-   Úsave_version_info)r8   Úbase_dirrk   Údests       r   r„   zsdist.make_release_tree³   s¥   € ÝŒ
×$Ò$ T¨8°UÑ;Ô;Ð;õ Œw�|Š|˜H kÑ2Ô2ˆÝ•2�vÑÔð 	.¥2¤7§>¢>°$Ñ#7Ô#7ð 	.õ ŒI�d‰OŒOˆOØ�NŠN˜;¨Ñ-Ô-Ð-à×"Ò" :Ñ.Ô.×@Ò@ÀÑFÔFÐFÐFÐFr   c                óÜ   — t           j                             | j        ¦  «        sdS t	          | j        d¦  «        5 }|                     ¦   «         }d d d ¦  «         n# 1 swxY w Y   |dk    S )NFÚrbs+   # file GENERATED by distutils, do NOT edit
)r0   r1   rW   ÚmanifestÚopenÚreadline)r8   ÚfpÚ
first_lines      r   Ú_manifest_is_not_generatedz sdist._manifest_is_not_generatedÀ   sœ   € åŒw�~Š~˜dœmÑ,Ô,ð 	Ø�5å�$”- Ñ&Ô&ð 	'¨"ØŸš™œˆJð	'ð 	'ð 	'ñ 	'ô 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'øøøð 	'ð 	'ð 	'ð 	'àÐLÒLÐLs   ¼AÁA!Á$A!c                óž  — t          j        d| j        ¦  «         t          | j        d¦  «        }|D ]†}	 |                     d¦  «        }n'# t
          $ r t          j        |›d�¦  «         Y Œ<w xY w|                     ¦   «         }|                     d¦  «        s|sŒl| j	         
                    |¦  «         Œ‡|                     ¦   «          dS )zªRead 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'r‹   zUTF-8z  not UTF-8 decodable -- skippingú#N)r   ÚinforŒ   r�   ÚdecodeÚUnicodeDecodeErrorrw   ÚstripÚ
startswithr.   r/   Úclose)r8   rŒ   Ú
bytes_lineÚlines       r   Úread_manifestzsdist.read_manifestÉ   sè   € õ
 	ŒÐ-¨t¬}Ñ=Ô=Ð=Ý˜œ tÑ,Ô,ˆØ"ð 	'ð 	'ˆJðØ!×(Ò(¨Ñ1Ô1��øÝ%ð ð ð Ý”˜DÐDÐDÐDÑEÔEÐEØ�ðøøøð —:’:‘<”<ˆDØ�Š˜sÑ#Ô#ð ¨4ð ØØŒM× Ò  Ñ&Ô&Ð&Ð&Ø�ŠÑÔÐÐÐs   µAÁ!A/Á.A/)r   r(   )rH   rI   rJ   Ú__doc__r   Ú__annotations__r    r!   Útupler€   r=   rA   r5   ÚstaticmethodÚ
contextlibÚcontextmanagerrD   rQ   rV   r`   rR   r^   r]   ru   rz   r3   r„   r‘   rœ   Ú__classcell__)rT   s   @r   r   r      s  ø€ € € € € € ØGÐGð
Að Að A€Lð ð ð ñ ð0 ÐÐÑØ-/€LÐ/Ð/Ð/Ñ/à-HÐ-HÐ-HÐÐHÐHÐHÑHØˆeÐ@Ð@Ð.?Ð@Ñ@Ô@Ñ@Ô@€Gð(ð (ð (ð (ð&,ð ,ð ,ð ,ð/ð /ð /ð /ð ØÔð#ð #ñ Ôñ „\ð#ð&0ð 0ð 0ð 0ð 0ð 0ð3ð 3ð 3ð 3ð 3ð
Bð Bð Bð9ð 9ð 9ð#ð #ð #ð
ð 
ð 
ð?ð ?ð ?ð ?ð ?ðUð Uð Uð Uð Uð Uð
ð 
ð 
ð 
ðGð Gð Gð GðMð Mð Mðð ð ð ð ð ð ð r   r   )r   )r   r   )Ú
__future__r   r¡   r0   r{   Úcollections.abcr   Ú	itertoolsr   Útypingr   Ú
_importlibr   Údistr	   rb   r   Údistutils.command.sdistÚcommandr   r@   Ú	distutilsr   ÚlistÚ_default_revctrlr   r$   r   r   ú<module>r¯      s-  ðØ "Ð "Ð "Ð "Ð "Ð "à Ð Ð Ð Ø 	€	€	€	Ø 	€	€	€	Ø $Ð $Ð $Ð $Ð $Ð $Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð à !Ð !Ð !Ð !Ð !Ð !Ø Ð Ð Ð Ð Ð Ø (Ð (Ð (Ð (Ð (Ð (à &Ð &Ð &Ð &Ð &Ð &Ð &Ð &Ð &Ø Ð Ð Ð Ð Ð àÐ ð&ð &ð &ð &ð &ðBð Bð Bð Bð BˆDŒJñ Bô Bð Bð Bð Br   