+
    SBi|                         R t ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RIt^ RI	H
t
 ^RIHt ]! ]P                  P                  RR7      t ! R R4      t ! R	 R
4      tR tR tR# )z$Test .dist-info style distributions.N)partial)unpack_archive)DALSutf-8encodingc                   p   a  ] tR t^t o R tR t]P                  P                  RR4      R 4       t	Rt
V tR# )TestDistInfoc                   RpVR,          P                  VRR7       \        P                  ! R\        P                  \        P                  ,          4      p\        RVRR7      pVP                  '       g   Q hVP                  VP                  4      '       g   Q h\        VP                  R	4      4      '       d   Q hR
# )z1
Supplying an invalid version crashes dist_info.
z@[metadata]
name=proj
version=42
[egg_info]
tag_build=invalid!!!
	setup.cfgr   r   zinvalid version	dist_infoF)cwdcheck*.dist-infoN)
write_textrecompileMIrun_command_inner
returncodesearchstdoutlistglob)selftmp_pathconfigmsgprocs   &&   D/usr/lib/python3.14/site-packages/setuptools/tests/test_dist_info.pytest_invalid_version!TestDistInfo.test_invalid_version   s     Y	K	++FW+Ejj*BDD244K8 (%Hzz$++&&&&m455555    c           	        R pVR,          P                  VRR7       \        \        RRVR7      4       \        VP	                  R4      4      pVP
                  P                  R4      '       g   Q h\        P                  ! V4       \        \        RR	R
VR7      4       \        VP	                  R4      4      pVP
                  P                  R4      '       g   Q hR# )z
        [metadata]
        name=proj
        version=42
        [egg_info]
        tag_date=1
        tag_build=.post
        r   r   r   r   z	--no-dater   r   zproj-42z--tag-buildz.azproj-42aN)	r   printrun_commandnextr   name
startswithshutilrmtree)r   r   r   r   s   &&  r    test_tag_argumentsTestDistInfo.test_tag_arguments    s     
K	++FW+Ek+{AB}56	~~((3333i k+}dIJ}56	~~((4444r#   keep_egg_infoc                   R pVR,          P                  VRR7       VR,          pVP                  4        V'       d   R.M. p\        RRV.VO5RV/  \        \	        VP                  R	4      4      4      ^8X  g   Q h\        \	        VP                  R	4      4      4      ^ 8X  g   Q h\        V4      p\        \	        VP                  R
4      4      4      V8X  g   Q h\        \	        VP                  R
4      4      4      ^ 8X  g   Q h\        \	        VP                  R4      4      4      ^ 8X  g   Q h\        \	        VP                  R4      4      4      ^ 8X  g   Q hR# )z [metadata]
name=proj
version=42
r   r   r   __outz--keep-egg-infor   z--output-dirr   r   z
*.egg-infoz	*.__bkp__N)r   mkdirr'   lenr   r   int)r   r   r/   r   outoptsexpected_egg_infos   &&&    r    test_output_dirTestDistInfo.test_output_dir4   s'   6	K	++FW+E 		&3!"KJtJJ4/01Q6664m456!;;;.4./04EEEE4l345:::4-./14444k234999r#    N)FT)__name__
__module____qualname____firstlineno__r!   r-   pytestmarkparametrizer8   __static_attributes____classdictcell____classdict__s   @r    r	   r	      s4     
65( [[_m<: =:r#   r	   c                     a  ] tR t^Et o Rt]! R4      t. R
Ot]P                  P                  RRP                  4       4      ]P                  P                  RR.4      ]P                  P                  R]4      R 4       4       4       tRtV tR	# )TestWheelCompatibilityzMake sure the .dist-info directory produced with the ``dist_info`` command
is the same as the one produced by ``bdist_wheel``.
ae  
    [metadata]
    name = {name}
    version = {version}

    [options]
    install_requires =
        foo>=12; sys_platform != "linux"

    [options.extras_require]
    test = pytest

    [options.entry_points]
    console_scripts =
        executable-name = my_package.module:function
    discover =
        myproj = my_package.other_module:function
    r)   zmy-proj my_proj my.proj My.Projversionz0.42.13c                   V P                   P                  WR 7      V,           pR F9  pW7,          P                  4        W7,          R,          P                  VRR7       K;  	  \	        RVR,          R7       \        VP                  R4      4      p\        WR	,          4       \        VP                  R
4      4      p	\	        RVR,          R7       \        VP                  R4      4      p
V
P                  V	P                  8X  g   Q hV
P                  P                  RV V 24      '       g   Q hR F*  p\        W,          4      \        W,          4      8X  d   K*  Q h	  R# ))r)   rH   	dir_wheeldir_distr   r   r   bdist_wheelr%   zdir_wheel/dist/*.whlunpackzunpack/*.dist-infor   zdir_dist/*.dist-infozmy_proj-N)rJ   rK   )METADATAzentry_points.txt)SETUPCFGformatr2   r   r'   r(   r   r   r)   r*   read)r   r)   rH   r   suffixcfgr   iwheelwheel_dist_infor   files   &&&&&&      r    &test_dist_info_is_the_same_as_in_wheel=TestWheelCompatibility.test_dist_info_is_the_same_as_in_wheelk   s!    %%4%ACG(A\  "\K'33FW3M ) 	Mx+'=>X]]#9:;u12x}}-ABCKX
%:;'=>?	~~!5!5555~~((8G9VH)EFFFF2D	()T/2H-IIII 3r#   r:   N)) rZ   ).postz[egg_info]
tag_build = post
)r[   z[egg_info]
tag_build = .post
)r[   z)[egg_info]
tag_build = post
tag_date = 1
).devz[egg_info]
tag_build = .dev
)r\   z)[egg_info]
tag_build = .dev
tag_date = 1
)a1z[egg_info]
tag_build = .a1
)z+localz[egg_info]
tag_build = +local
)rR   rS   )r;   r<   r=   r>   __doc__r   rO   EGG_INFO_OPTSr?   r@   rA   splitrX   rB   rC   rD   s   @r    rG   rG   E   s      	H*
M [[V%F%L%L%NO[[Y4[[.>J ? 5 PJr#   rG   c            
          R \         P                  R\         P                  RRRRRR/VCp\        P                  RR.\        \        V 4      Op \         P                  ! V 3/ VB # )	stderrr   textTr   r   r   z-cz __import__('setuptools').setup())
subprocessSTDOUTPIPEsys
executablemapstrrun)cmdkwargsr6   s   *, r    r   r      sh    *##*//G D >>4!C
Tc#sm
TC>>#&&&r#   c                  ,    \        V / VB P                  # )N)r   r   )argsrm   s   *,r    r'   r'      s    d-f-444r#   )r^   pathlibr   r+   rd   rg   	functoolsr   r?   setuptools.archive_utilr   textwrapr   Path	read_textrQ   r	   rG   r   r'   r:   r#   r    <module>rv      s[    *  	   
   2 w||%%8/: /:d=J =J@
'5r#   