Ë
    óÇ: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y)é    )ÚannotationsN)ÚIterator)Úchain)ÚClassVaré   )Úmetadata)ÚDistributioné   )Ú_ORIGINAL_SUBCOMMANDS)Úlogc              #  ó‚   K  — t        j                  d¬«      D ]   } |j                  «       | «      E d{  –—†  Œ" y7 Œ­w)z%Find all files under revision controlzsetuptools.file_finders)ÚgroupN)r   Úentry_pointsÚload)ÚdirnameÚeps     úm/home/mcse/projects/srt_converter/srt-converter-venv/lib/python3.12/site-packages/setuptools/command/sdist.pyÚwalk_revctrlr      s:   è ø€ ä×#Ñ#Ð*CÔDò &ˆØ�2—7‘7“9˜WÓ%×%Ñ%ñ&Ø%ús   ‚3?µ=¶?c                  ó  ‡ — e Zd ZU dZg d¢Zded<   i Zded<   g d¢Z 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]r	   ÚdistributionzClassVar[dict[str, str]]Únegative_opt)Ú z.rstz.txtz.mdc              #  ó&   K  — | ]	  }d |› �–— Œ y­w)ÚREADMEN© )Ú.0Úexts     r   ú	<genexpr>zsdist.<genexpr>9   s   è ø€ Ò@ s�f˜S˜E”NÑ@ùs   ‚c                ó  — | j                  d«       | j                  d«      }|j                  | _        | j                  j                  t        j
                  j                  |j                  d«      «       | j                  «        | j                  «       D ]  }| j                  |«       Œ | j                  «        t        | j                  dg «      }| j                  D ]  }dd|f}||vsŒ|j                  |«       Œ y )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ˆØŸ™ˆŒØ�‰×ÑœRŸW™WŸ\™\¨&¯/©/¸=ÓIÔJØ×ÑÔð ×-Ñ-Ó/ò 	'ˆHØ×Ñ˜XÕ&ð	'ð 	×ÑÔ ä˜T×.Ñ.°¸bÓAˆ
Ø×&Ñ&ò 	(ˆDØ˜R Ð&ˆDØ˜:Ò%Ø×!Ñ! $Õ'ñ	(ó    c                óB   — t         j                  j                  | «       y ©N)Úorigr   Úinitialize_options©r3   s    r   r=   zsdist.initialize_optionsN   s   € Ü�
‰
×%Ñ% dÕ+r9   c                óŒ   — | j                  «       5  t        j                  j                  | «       ddd«       y# 1 sw Y   yxY w)z%
        Workaround for #516
        N)Ú_remove_os_linkr<   r   r0   r>   s    r   r0   zsdist.make_distributionQ   s7   € ð ×!Ñ!Ó#ñ 	/Ü�J‰J×(Ñ(¨Ô.÷	/÷ 	/ñ 	/ús	   ‘ :ºAc               #  óÂ   K  —  G d„ d«      } t        t        d| «      }	 t        `	 d–— || ur|t        _        yy# t        $ r Y Œ!w xY w# || ur|t        _        w w xY w­w)zG
        In a context, remove and restore os.link if it exists
        c                  ó   — e Zd Zy)ú&sdist._remove_os_link.<locals>.NoValueN)Ú__name__Ú
__module__Ú__qualname__r    r9   r   ÚNoValuerC   _   s   „ Ør9   rG   ÚlinkN)r1   r+   rH   Ú	Exception)rG   Úorig_vals     r   r@   zsdist._remove_os_linkX   sp   è ø€ ÷	ñ 	ô œ2˜v wÓ/ˆð	Ü�ð	#Ûà˜wÑ&Ø"”•ð 'øô ò 	Ùð	ûð
 ˜wÑ&Ø"”•ð 'üs6   ‚AŸ; ¦A
 ªA»	AÁAÁAÁAÁ
AÁAc                óB   •— t         ‰| �  «        | j                  «        y r;   )ÚsuperÚadd_defaultsÚ _add_defaults_build_sub_commands©r3   Ú	__class__s    €r   rM   zsdist.add_defaultsm   s   ø€ Ü‰ÑÔØ×-Ñ-Õ/r9   c                ó˜   •— t         ‰| �  «        t        j                  j	                  d«      r| j
                  j                  d«       y y )Nzpyproject.toml)rL   Ú_add_defaults_optionalr+   r,   Úisfiler)   r*   rO   s    €r   rR   zsdist._add_defaults_optionalq   s7   ø€ Ü‰Ñ&Ô(Ü�7‰7�>‰>Ð*Ô+Ø�M‰M× Ñ Ð!1Õ2ð ,r9   c                óî   — | j                   j                  «       r[| j                  d«      }| j                  j	                  |j                  «       «       | j                  | j                  |«      «       yy)zgetting python filesÚbuild_pyN)r   Úhas_pure_modulesr(   r)   ÚextendÚget_source_filesÚ_add_data_filesÚ_safe_data_files©r3   rU   s     r   Ú_add_defaults_pythonzsdist._add_defaults_pythonv   s]   € à×Ñ×-Ñ-Ô/Ø×1Ñ1°*Ó=ˆHØ�M‰M× Ñ  ×!:Ñ!:Ó!<Ô=Ø× Ñ  ×!6Ñ!6°xÓ!@ÕAð 0r9   c                óì   ‡ — ‰ j                  d«      }t        |j                  «       «      t        z
  }ˆ fd„|D «       }d„ |D «       }‰ j                  j                  t        j                  |«      «       y )NÚbuildc              3  ó@   •K  — | ]  }‰j                  |«      –— Œ y ­wr;   )r(   )r!   Úcr3   s     €r   r#   z9sdist._add_defaults_build_sub_commands.<locals>.<genexpr>�   s   øè ø€ ÒD°!�×*Ñ*¨1×-ÑDùs   ƒc              3  óV   K  — | ]!  }t        |d «      sŒ|j                  «       –— Œ# y­w)rX   N)ÚhasattrrX   )r!   r`   s     r   r#   z9sdist._add_defaults_build_sub_commands.<locals>.<genexpr>‚   s#   è ø€ ÒV¨!´w¸qÐBTÕ7U�×#Ñ#×%ÑVùs   ‚)”))r(   Úsetr/   r   r)   rW   r   Úfrom_iterable)r3   r^   Úmissing_cmdsÚcmdsÚfiless   `    r   rN   z&sdist._add_defaults_build_sub_commands}   s]   ø€ Ø×*Ñ*¨7Ó3ˆÜ˜5×1Ñ1Ó3Ó4Ô7LÑLˆãD°|ÔDˆÙV¨tÔVˆØ�‰×ÑœU×0Ñ0°Ó7Õ8r9   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   rZ   zsdist._safe_data_files…   s   € ð ×"Ñ"Ð"r9   c                óH   — | j                   j                  d„ |D «       «       y)zA
        Add data files as found in build_py.data_files.
        c              3  ót   K  — | ]0  \  }}}}|D ]$  }t         j                  j                  ||«      –— Œ& Œ2 y ­wr;   )r+   r,   r-   )r!   Ú_Úsrc_dirÚ	filenamesÚnames        r   r#   z(sdist._add_data_files.<locals>.<genexpr>–   sD   è ø€ ò 
á(��7˜A˜yØ!ò
ð ô �G‰G�L‰L˜ $×'ð
Ø'ñ
ùs   ‚68N)r)   rW   )r3   ri   s     r   rY   zsdist._add_data_files’   s#   € ð 	�‰×Ññ 
à,6ô
õ 	
r9   c                ól   •— 	 t         ‰| �  «        y # t        $ r t        j                  d«       Y y w xY w)Nz&data_files contains unexpected objects)rL   Ú_add_defaults_data_filesÚ	TypeErrorr   ÚwarnrO   s    €r   rq   zsdist._add_defaults_data_filesœ   s/   ø€ ð	?Ü‰GÑ,Õ.øÜò 	?Ü�H‰HÐ=Ö>ð	?ús   ƒ ’3²3c                ó¨   •— t         ‰| �  «        t        j                  t        j
                  «      }| j                  j                  d|z   d¬«       y )Nz^(\.tox|\.nox|\.venv)T)Úis_regex)rL   Úprune_file_listÚreÚescaper+   Úsepr)   Úexclude_pattern)r3   ry   rP   s     €r   rv   zsdist.prune_file_list¢   s=   ø€ Ü‰ÑÔ!ä�i‰iœŸ™ÓˆØ�‰×%Ñ%Ð&>ÀÑ&DÈtÐ%ÕTr9   c                óÂ   — | j                   D ]#  }t        j                  j                  |«      sŒ# y  | j	                  ddj                  | j                   «      z   «       y )Nz,standard file not found: should have one of z, )ÚREADMESr+   r,   Úexistsrs   r-   )r3   Úfs     r   r.   zsdist.check_readme¨   sK   € Ø—‘ò 	ˆAÜ�w‰w�~‰~˜aÕ Ùð	ð �I‰IØ>ÀÇÁÈ4Ï<É<ÓAXÑXõr9   c                ór  — t         j                  j                  | ||«       t        j                  j                  |d«      }t        t        d«      rFt        j                  j                  |«      r't        j                  |«       | j                  d|«       | j                  d«      j                  |«       y )Nz	setup.cfgrH   r%   )r<   r   Úmake_release_treer+   r,   r-   rb   r}   ÚunlinkÚ	copy_filer(   Úsave_version_info)r3   Úbase_dirrg   Údests       r   r€   zsdist.make_release_tree±   s{   € Ü�
‰
×$Ñ$ T¨8°UÔ;ô �w‰w�|‰|˜H kÓ2ˆÜ”2�vÔ¤2§7¡7§>¡>°$Ô#7ô �I‰I�dŒOØ�N‰N˜;¨Ô-à×"Ñ" :Ó.×@Ñ@ÀÕFr9   c                óÞ   — t         j                  j                  | j                  «      syt	        | j                  d«      5 }|j                  «       }d d d «       |dk7  S # 1 sw Y   dk7  S xY w)NFÚrbs+   # file GENERATED by distutils, do NOT edit
)r+   r,   rS   ÚmanifestÚopenÚreadline)r3   ÚfpÚ
first_lines      r   Ú_manifest_is_not_generatedz sdist._manifest_is_not_generated¾   s\   € ä�w‰w�~‰~˜dŸm™mÔ,Øä�$—-‘- Ó&ð 	'¨"ØŸ™›ˆJ÷	'àÐLÑLÐL÷	'àÐLÑLÐLús   ÁAÁA,c                óŽ  — t        j                  d| j                  «       t        | j                  d«      }|D ]S  }	 |j	                  d«      }|j                  «       }|j                  d«      s|sŒ9| j                  j                  |«       ŒU |j                  «        y# t
        $ r t        j                  ›d�«       Y ŒŠw xY w)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ÚUnicodeDecodeErrorrs   ÚstripÚ
startswithr)   r*   Úclose)r3   rˆ   Ú
bytes_lineÚlines       r   Úread_manifestzsdist.read_manifestÇ   s¯   € ô
 	�‰Ð-¨t¯}©}Ô=Ü˜Ÿ™ tÓ,ˆØ"ò 	'ˆJðØ!×(Ñ(¨Ó1�ð
 —:‘:“<ˆDØ�‰˜sÔ#©4ØØ�M‰M× Ñ  Õ&ð	'ð 	�‰Õøô &ò Ü—‘˜D˜8Ð#CÐDÔEÙðús   ½B Â !CÃC)ÚreturnÚNone)rD   rE   rF   Ú__doc__Úuser_optionsÚ__annotations__r   ÚREADME_EXTENSIONSÚtupler|   r8   r=   r0   ÚstaticmethodÚ
contextlibÚcontextmanagerr@   rM   rR   r\   rN   rZ   rY   rq   rv   r.   r€   r�   r˜   Ú__classcell__)rP   s   @r   r   r      s¨   ø… ÙGò€Lð0 ÓØ-/€LÐ*Ó/â3ÐÙÑ@Ð.?Ô@Ó@€Gó(ó&,ó/ð Ø×Ññ#ó ó ð#õ&0ô3ò
Bò9ò#ò
ô?õUóóGòM÷r9   r   )r   )r™   r   )Ú
__future__r   r¡   r+   rw   Úcollections.abcr   Ú	itertoolsr   Útypingr   Ú
_importlibr   Údistr	   r^   r   Údistutils.command.sdistÚcommandr   r<   Ú	distutilsr   ÚlistÚ_default_revctrlr   r    r9   r   ú<module>r¯      sI   ðÝ "ã Û 	Û 	Ý $Ý Ý å !Ý Ý (ç &Ð &Ý àÐ ô&ô@ˆD�J‰Jõ @r9   