+
    SBi+Z                    x   ^ RI Ht ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RI	t	^ RI
t
^ RIt^ RIHt ^ RIHt ^ RIHt ^ RIt^ RIt^ RIHt ^ RIt^ RIHtHt ^ RIHt ^ R	IHt ^ R
IH t  0 Remt!0 Rfmt"RR0t#Rt$RR]$RRR//]%PM                  ]"]#,          R4      CRR]! R4      RR/RR]! R4      RRR//RR]! R4      RRRR/R R]! R!4      R"RRR#RRR$R//R%R"RR///R&R]! R'4      R(RRR)R//R*R+]! R,4      R-R./R/R+]! R04      RRR1R2RR////t']
P                  R38w  d   R]! R44      R+R5R6R7/]'R8&   R9 t(R: t)]PT                  ! R;R<7      R= 4       t+]PT                  R> 4       t,]PT                  R? 4       t-R@ t.RA t/RBt0RC t1RD t2RE t3]Ph                  Pk                  RgRhRiR]$Pm                  RFRG4      3.4      RH 4       t7RI t8RJ t9RK t:RL t;RMt<RNt=]Ph                  P}                  RO4      RP 4       t?RQ t@]Ph                  Pk                  Rj]A! ]P                  P                  4       4      ]A! ]P                  4      RR7      RS 4       tDRT tERU tFRV tGRW tHRX tIRY tJRZ tKR[ tLR\ tM]Ph                  Pk                  RkRlRm.4      ]Ph                  P                  ]P                  ! 4       R]8g  R^R_7      R` 4       4       tPRa Rb ltQRc tRRd tSR# )n    )annotationsN)suppress)cleandoc)ZipFile)tags)bdist_wheelget_abi_tag)Distribution)SetuptoolsDeprecationWarning)	run_setupLICENSEzLICENSE~zAUTHORS~zQfrom setuptools import setup

setup(
    name='dummy_dist',
    version='1.0',
)

dummy-distsetup.pylicenses_dir	DUMMYFILE zsimple-distu  
            from setuptools import setup

            setup(
                name="simple.dist",
                version="0.1",
                description="A testing distribution ☃",
                extras_require={"voting": ["beaglevote"]},
            )
            
simpledistzcomplex-distui  
            from setuptools import setup

            setup(
                name="complex-dist",
                version="0.1",
                description="Another testing distribution ☃",
                long_description="Another testing distribution ☃",
                author="Illustrious Author",
                author_email="illustrious@example.org",
                url="http://example.org/exemplary",
                packages=["complexdist"],
                setup_requires=["setuptools"],
                install_requires=["quux", "splort"],
                extras_require={"simple": ["simple.dist"]},
                entry_points={
                    "console_scripts": [
                        "complex-dist=complexdist:main",
                        "complex-dist2=complexdist:main",
                    ],
                },
            )
            complexdistz__init__.pyzdef main(): returnzheaders-distz
            from setuptools import setup

            setup(
                name="headers.dist",
                version="0.1",
                description="A distribution with headers",
                headers=["header.h"],
            )
            zheadersdist.pyzheader.hzcommasinfilenames-distak  
            from setuptools import setup

            setup(
                name="testrepo",
                version="0.1",
                packages=["mypackage"],
                description="A test package with commas in file names",
                include_package_data=True,
                package_data={"mypackage.data": ["*"]},
            )
            	mypackagedataz	1,2,3.txtztestrepo-0.1.0zunicode-distu  
            from setuptools import setup

            setup(
                name="unicode.dist",
                version="0.1",
                description="A testing distribution ☃",
                packages=["unicodedist"],
                zip_safe=True,
            )
            unicodedist   åäö_日本語.pyzutf8-metadata-dist	setup.cfgu   
            [metadata]
            name = utf8-metadata-dist
            version = 42
            author_email = "John X. Ãørçeč" <john@utf8.org>, Γαμα קּ 東 <gama@utf8.org>
            long_description = file: README.rst
            z
README.rst   UTF-8 描述 説明licenses-distz
            [metadata]
            name = licenses-dist
            version = 1.0
            license_files = **/LICENSE
            srcvendorwin32u  
            from setuptools import Extension, setup

            setup(
                name="extension.dist",
                version="0.1",
                description="A testing distribution ☃",
                ext_modules=[
                    Extension(
                        name="extension", sources=["extension.c"], py_limited_api=True
                    )
                ],
            )
            z![bdist_wheel]
py_limited_api=cp32extension.cz5#define Py_LIMITED_API 0x03020000
#include <Python.h>zabi3extension-distc                 $   \         P                  P                  R4      '       d   \        RRR7      M\	        RR/4      pVP                  4        \        V4      pV P                  4        F  w  r4\        W#V4       K  	  VP                  4        V# )zHRun command in the same process so that it is easier to collect coverager   init)
stop_afterscript_namez%%build_meta%%)
ospathexistsr   r
   parse_config_filesr   itemssetattrfinalize_options)kwargsdist_objcmdattrvalues   ,    F/usr/lib/python3.14/site-packages/setuptools/tests/test_bdist_wheel.pybdist_wheel_cmdr1      s{     77>>*%% 	*0=*:;< 
 !
h
C||~5! &J    c                    V P                  V4      p\        P                  P                  \        V,          \        V4      R 7       V# )prefix)mktempjaracor%   buildEXAMPLESstr)tmp_path_factorynamebasedirs   && r0   	mkexampler>      s6    %%d+G
KKhtnS\:Nr2   session)scopec           	        V P                  R 4      pV P                  R4      p\         F  p\        W4      pW,          p\        P                  P                  4       P                  V4      ;_uu_ 4        \        \        V4      \        V4      R7      P                  4        RRR4       K  	  \        R VP                  R4       4       4      #   + '       g   i     K  ; i)r8   dist	bdist_dirdist_dirNc              3  8   "   T F  p\        V4      x  K  	  R # 5iN)r:   ).0fnames   & r0   	<genexpr>wheel_paths.<locals>.<genexpr>   s     A*@#e***@s   z*.whl)r6   r9   r>   r7   r%   DirectoryStackcontextr1   r:   runsortedglob)r;   
build_baserE   r<   example_dir	build_dirs   &     r0   wheel_pathsrT      s    !((1J&&v.H 07%	[['')11+>>c)ns8}MQQS ?>  A(--*@AAA ?>>s   4.CC c                    \        V R 4      # )r   r>   r;   s   &r0   
dummy_distrX      s    %|44r2   c                    \        V R 4      # )r   rV   rW   s   &r0   licenses_distrZ      s    %77r2   c                    \        R V  4       4      p\        V4      P                  4        F  pRVP                  9  d   K  Q h	  R# )z0Make sure entry point scripts are not generated.c              3  8   "   T F  pR V9   g   K  Vx  K  	  R# 5i)complex_distN rH   r%   s   & r0   rJ   "test_no_scripts.<locals>.<genexpr>       G$0F   	
z.data/scripts/N)nextr   infolistfilename)rT   r%   entrys   &  r0   test_no_scriptsrg     s;    GGGD'')u~~555 *r2   c                    \        R  V  4       4      p\        V4      ;_uu_ 4       pVP                  R4      pRRR4       RP                  4       X9   g   Q hR#   + '       g   i     L); i)c              3  8   "   T F  pR V9   g   K  Vx  K  	  R# 5i)unicode_distNr^   r_   s   & r0   rJ   &test_unicode_record.<locals>.<genexpr>  ra   rb   z!unicode_dist-0.1.dist-info/RECORDNr   )rc   r   readencode)rT   r%   zfrecords   &   r0   test_unicode_recordrp     sR    GGGD	"<= 
 !'')V333 
s   AA)	u   Metadata-Version: 2.1
Name: helloworld
Version: 42
Author-email: "John X. Ãørçeč" <john@utf8.org>, Γαμα קּ 東 <gama@utf8.org>


UTF-8 描述 説明
c                   V P                  V4       VR ,          pVR,          pVP                  4        VR,          P                  \        RR7       VR,          P	                  4         ! R R\
        4      pV! 4       pVP                  W#4       VR,          P                  RR7      pR	V9   g   Q hR
V9   g   Q hRV9   g   Q hR# )zdummy_dist.egg-infodummy_dist.dist-infozPKG-INFOutf-8encodingzdependency_links.txtc                  0    ] tR tRtRtR t]R 4       tRtR# );test_preserve_unicode_metadata.<locals>.simpler_bdist_wheeli'  z1Avoid messing with setuptools/distutils internalsc                	    R # rG   r^   selfs   &r0   __init__Dtest_preserve_unicode_metadata.<locals>.simpler_bdist_wheel.__init__*  s    r2   c                	    . # rG   r^   ry   s   &r0   license_pathsItest_preserve_unicode_metadata.<locals>.simpler_bdist_wheel.license_paths-  s    Ir2   r^   N)	__name__
__module____qualname____firstlineno____doc__r{   propertyr~   __static_attributes__r^   r2   r0   simpler_bdist_wheelrw   '  s    ?	 
	 
	r2   r   METADATAu"   Author-email: "John X. Ãørçeč"u   Γαμα קּ 東 r   N)chdirmkdir
write_textUTF8_PKG_INFOtouchr   egg2dist	read_text)monkeypatchtmp_pathegginfodistinfor   cmd_objmetadatas   &&     r0   test_preserve_unicode_metadatar     s    h..G00HMMOz%%mg%F%%,,.k  "#GW':%00'0BH/8;;;(*** H,,,r2   c                h   VP                  V 4       \        \        V4      R 7      P                  4        \	        R4      ;_uu_ 4       p\
         Uu0 uF  pRV,           kK  	  pp\        VP                  4       4      \        V,          8X  g   Q h RRR4       R# u upi   + '       g   i     R# ; i)rD   $dist/dummy_dist-1.0-py3-none-any.whl"dummy_dist-1.0.dist-info/licenses/N)	r   r1   r:   rN   r   DEFAULT_LICENSE_FILESsetnamelistDEFAULT_FILES)rX   r   r   wfrI   license_filess   &&&   r0   test_licenses_defaultr   :  s    j!c(m,002	7	8	8B /
. 1588. 	 
 2;;=!]]%BBBB 
9	8
 
9	8	8s   	B B#-B B  B1	c                p   V P                  R 4      P                  RRR7       VP                  V 4       \        \	        V4      R7      P                  4        \        R4      ;_uu_ 4       pR0p\        VP                  4       4      \        V,          8X  g   Q h RRR4       R#   + '       g   i     R# ; i)r   z.[metadata]
license_file=licenses_dir/DUMMYFILErs   rt   r   r   z8dummy_dist-1.0.dist-info/licenses/licenses_dir/DUMMYFILEN
joinpathr   r   r1   r:   rN   r   r   r   r   )rX   r   r   r   r   s   &&&  r0   test_licenses_deprecatedr   E  s    $//9G 0  j!c(m,002	7	8	8BST2;;=!]]%BBBB 
9	8	8	8s   */B$$B5	)z6  license_files=['licenses_dir/DUMMYFILE', 'LICENSE'])c                   V P                  V4      P                  VR R7       VP                  V 4       \        \	        V4      R7      P                  4        \        R4      ;_uu_ 4       pR
 Uu0 uF  pRV,           kK  	  pp\        VP                  4       4      \        V,          8X  g   Q hVP                  R4      P                  R4      pRV9   g   Q hRV9   g   Q h R	R	R	4       R	# u upi   + '       g   i     R	# ; i)rs   rt   r   r   r   !dummy_dist-1.0.dist-info/METADATAutf8z$License-File: licenses_dir/DUMMYFILELicense-File: LICENSEN>   r   licenses_dir/DUMMYFILE)r   r   r   r1   r:   rN   r   r   r   r   rl   decode)	rX   r   r   config_fileconfigr   rI   r   r   s	   &&&&&    r0   test_licenses_overrider   R  s     $///Ij!c(m,002	7	8	8B ?
> 1588> 	 
 2;;=!]]%BBBB77>?FFvN5AAA&(222 
9	8
 
9	8	8s   *C0/C+AC0+C00D	c           	        VP                  V 4       \        \        V4      R 7      P                  4        \	        \
        P                  ! R4      4       \        R4      ;_uu_ 4       p\         Uu0 uF  qDP                  RR4      kK  	  ppRR0p\        VP                  4       4      WV,          8X  g   Q hVP                  R4      P                  R4      pR	V9   g   Q hR
V9   g   Q h RRR4       R# u upi   + '       g   i     R# ; i)r   rB   z'dist/licenses_dist-1.0-py3-none-any.whldummy_	licenses_z,licenses_dist-1.0.dist-info/licenses/LICENSEz7licenses_dist-1.0.dist-info/licenses/src/vendor/LICENSEz$licenses_dist-1.0.dist-info/METADATAr   z License-File: src/vendor/LICENSEr   N)r   r1   r:   rN   printr$   listdirr   r   replacer   r   rl   r   )rZ   r   r   r   r<   default_filesr   r   s   &&&     r0   'test_licenses_preserve_folder_structurer   n  s    m$c(m,002	"**V
	:	;	;rIVWh<W:E
 2;;=!]%BBBB77ABII&Q1X===&(222 
<	;W 
<	;	;s   '	C80C3
AC83C88D		c                \   V P                  R 4      P                  RRR7       VP                  V 4       \        \	        V4      R7      P                  4        \        R4      ;_uu_ 4       p\        VP                  4       4      \        8X  g   Q h RRR4       R#   + '       g   i     R# ; i)r   z[metadata]
license_files=
rs   rt   r   r   Nr   )rX   r   r   r   s   &&& r0   test_licenses_disabledr   ~  s    $//& 0  j!c(m,002	7	8	8B2;;=!]222 
9	8	8	8s   *%BB+	c                (   VP                  V 4       \        \        V4      R R7      P                  4        \	        R4      ;_uu_ 4       p\        VP                  4       4      pRV9   g   Q hRV9   g   Q h RRR4       R#   + '       g   i     R# ; i)2rD   build_numberz&dist/dummy_dist-1.0-2-py3-none-any.whldummy_dist-1.0.dist-info/RECORDr   N)r   r1   r:   rN   r   r   r   )rX   r   r   r   	filenamess   &&&  r0   test_build_numberr     sp    j!c(m#>BBD	9	:	:b&	0I===2i??? 
;	:	:	:s   	,B  B	c                >   VP                  V 4       \        P                  ! \        R R7      ;_uu_ 4        \	        \        V4      RR7      P                  4        RRR4       \        P                  P                  R4      '       g   Q hR#   + '       g   i     L9; i)z.*universal is deprecatedmatchT)rD   	universalNz(dist/dummy_dist-1.0-py2.py3-none-any.whl)
r   pytestwarnsr   r1   r:   rN   r$   r%   r&   )rX   r   r   s   &&&r0   test_universal_deprecatedr     sf    j!	2:U	V	V#h-4@DDF 
W 77>>DEEEE	 
W	Vs   %BB	a&  #include <Python.h>

static PyMethodDef methods[] = {
  { NULL, NULL, 0, NULL }
};

static struct PyModuleDef module_def = {
  PyModuleDef_HEAD_INIT,
  "extension",
  "Dummy extension module",
  -1,
  methods
};

PyMODINIT_FUNC PyInit_extension(void) {
  return PyModule_Create(&module_def);
}
u   from __future__ import annotations

from setuptools import Extension, setup

setup(
    name="extension.dist",
    version="0.1",
    description="A testing distribution ☃",
    ext_modules=[Extension(name="extension", sources=["extension.c"])],
)
zEonce:Config variable '.*' is unset.*, Python ABI tag may be incorrectc                `   VP                  R4      pVR,          P                  \        RR7       VR,          P                  \        RR7       VP	                  R4      pVP	                  R4      pV P                  V4       \        \        V4      \        V4      R7      P                  4        R	# )
z=Test that building a binary wheel with the limited ABI works.extension_distr   rs   rt   r   r8   rB   rC   N)	r6   r   EXTENSION_SETUPPYEXTENSION_EXAMPLEr   r   r1   r:   rN   )r   r   r;   
source_dirrS   rE   s   &&&   r0   test_limited_abir     s    
 "(()9:J*(():W(M-++,=+P!!'*I  (Hj!c)ns8}EIIKr2   c                   \        VP                  R 4      4      p\        P                  ! \        V 4      V4       VP	                  V4       \
        P                  ! V4       FQ  w  rEpV FE  p\
        P                  ! \
        P                  P                  WG4      \        P                  4       KG  	  KS  	  \        4       P                  4        R# )dummyN)r:   r   shutilcopytreer   r$   walkchmodr%   joinstatS_IREADr1   rN   )rX   r   r   r=   root_dirsfilesrI   s   &&&     r0   test_build_from_readonly_treer     s    (##G,-G
OOC
OW-g !ggg.UEHHRWW\\$.=  / r2   )idsc                r   VP                  V 4       \        \        V4      VR 7      P                  4        \	        R4      ;_uu_ 4       p\        VP                  4       4      pRV9   g   Q hRV9   g   Q hVP                   F  pVP                  V8X  d   K  Q h	  RRR4       R#   + '       g   i     R# ; i))rD   compressionr   r   r   N)	r   r1   r:   rN   r   r   r   filelistcompress_type)rX   r   r   optionr   r   r   zinfos   &&&&&   r0   test_compressionr     s     j!c(m@DDF	7	8	8B&	0I===2i???[[E&&-777 !	 
9	8	8	8s   	A	B%B%%B6	c                    V  FV  p\        V4      ;_uu_ 4       p\        R  VP                   4       4      pVP                  V4      pRV9  g   Q h RRR4       KX  	  R#   + '       g   i     Km  ; i)c              3  j   "   T F)  qP                   P                  R 4      '       g   K%  Vx  K+  	  R# 5i)WHEELN)re   endswith)rH   fns   & r0   rJ   .test_wheelfile_line_endings.<locals>.<genexpr>  s!     W+B9M9Mg9VRR+s   "3
3   N)r   rc   r   rl   )rT   r%   r   	wheelfilewheelfile_contentss   &    r0   test_wheelfile_line_endingsr     sX    T]]bW"++WWI!#!3 2222 ] ]]s   7AA0c                @   VP                  R R4       VP                  V 4       \        \        V4      RR7      P	                  4        \        R4      ;_uu_ 4       pVP                   F  pVP                  R8  d   K  Q h	  RRR4       R#   + '       g   i     R# ; i)SOURCE_DATE_EPOCH02ar   z'dist/dummy_dist-1.0-2a-py3-none-any.whlN)i     r   r   r   r   )setenvr   r1   r:   rN   r   r   	date_time)rX   r   r   r   r   s   &&&  r0   test_unix_epoch_timestampsr     sv    *C0j!c(m$?CCE	:	;	;r[[E??&;;;; ! 
<	;	;	;s   B>BB	c                |   V P                  \        R R 4       V P                  \        RR 4       \        4       R8X  g   Q hV P                  \        RR R4       \        4       R8X  g   Q hV P                  \        RR	 4       \        4       R
8X  g   Q hV P                  \        R4       \        4       R8X  g   Q hR# )interpreter_namec                     R # )cpr^   r^   r2   r0   <lambda>*test_get_abi_tag_windows.<locals>.<lambda>      $r2   get_config_varc                    R # )zcp313-win_amd64r^   xs   &r0   r   r     s    ?Pr2   cp313gettotalrefcountc                     ^# )r   r^   r^   r2   r0   r   r     s    r2   Fcp313dc                    R # )zcp313t-win_amd64r^   r   s   &r0   r   r     s    ?Qr2   cp313tdcp313tN)r)   r   	sysconfigr	   sysdelattrr   s   &r0   test_get_abi_tag_windowsr    s    0,?	#35PQ=G###/EB=H$$$	#35QR=I%%%/0=H$$$r2   c                    V P                  \        R R 4       V P                  \        RR 4       \        4       R8X  g   Q hR# )r   c                     R # ppr^   r^   r2   r0   r   +test_get_abi_tag_pypy_old.<locals>.<lambda>  r   r2   r   c                    R # )zpypy36-pp73r^   r   s   &r0   r   r    s    }r2   pypy36_pp73N)r)   r   r  r	   r
  s   &r0   test_get_abi_tag_pypy_oldr    s9    0,?	#35LM=M)))r2   c                    V P                  \        R R 4       V P                  \        RR 4       \        4       R8X  g   Q hR# )r   c                    R # )zpypy37-pp73-darwinr^   r   s   &r0   r   +test_get_abi_tag_pypy_new.<locals>.<lambda>
      ?Sr2   r   c                     R # r  r^   r^   r2   r0   r   r    r   r2   pypy37_pp73Nr)   r  r   r	   r
  s   &r0   test_get_abi_tag_pypy_newr  	  s9    	#35ST0,?=M)))r2   c                    V P                  \        R R 4       V P                  \        RR 4       \        4       R8X  g   Q hR# )r   c                    R # )z"graalpy231-310-native-x86_64-linuxr^   r   s   &r0   r   *test_get_abi_tag_graalpy.<locals>.<lambda>  s    /Sr2   r   c                     R # )graalpyr^   r^   r2   r0   r   r    s    )r2   graalpy231_310_nativeNr  r
  s   &r0   test_get_abi_tag_graalpyr"    s@    #%S 02CD=3333r2   c                    V P                  \        R R 4       V P                  \        RR 4       \        4       R8X  g   Q hR# )r   c                    R # )zunknown-python-310r^   r   s   &r0   r   +test_get_abi_tag_fallback.<locals>.<lambda>  r  r2   r   c                     R # )zunknown-pythonr^   r^   r2   r0   r   r%    s    :Jr2   unknown_python_310Nr  r
  s   &r0   test_get_abi_tag_fallbackr(    s;    	#35ST02JK=0000r2   c                \    VP                  V 4       \        RR7      P                  4        R# )z>Ensure building on platforms with a space in the name succeed.zisilon onefs)	plat_nameN)r   r1   rN   )rX   r   s   &&r0   test_platform_with_spacer+    s!    j!n-113r2   c                   V P                  V4       RRRRRRRR/pVP                  4        F>  w  r4\        VRR	R
7      ;_uu_ 4       pVP                  \	        V4      4       RRR4       K@  	  \        4       P                  4        Rp\        P                  P                  V4      '       g   Q h\        \        V4      P                  4       4      pR F  pW9   d   K  Q h	  R F  p	W9  d   K  Q h	  R#   + '       g   i     K  ; i)z
Setuptools allow authors to set PEP 440's local version segments
using ``egg_info.tag_build``. This should be reflected not only in the
``.whl`` file name, but also in the ``.dist-info`` and ``.data`` dirs.
See pypa/setuptools#3997.
r   z]
            from setuptools import setup
            setup(headers=["hello.h"])
            r   z
            [metadata]
            name = test
            version = 1.0

            [options.data_files]
            hello/world = file.txt

            [egg_info]
            tag_build = +what
            tag_date = 0
            zfile.txtr   zhello.hwrs   rt   Nz#dist/test-1.0+what-py3-none-any.whl)z"test-1.0+what.data/headers/hello.hz,test-1.0+what.data/data/hello/world/file.txtz test-1.0+what.dist-info/METADATAztest-1.0+what.dist-info/WHEEL)ztest.data/headers/hello.hz'test-1.0.data/data/hello/world/file.txtztest.dist-info/METADATAztest-1.0.dist-info/WHEEL)r   r(   openwriter   r1   rN   r$   r%   r&   r   r   r   )
r   r   r   filecontentfh
wheel_pathentriesexpectednot_expecteds
   &&        r0   test_data_dir_with_tag_buildr7  #  s     h  	  	B2%E( $g.."HHXg&' /. '  7J77>>*%%%%'*%..01G """ ***# /..s   C55DLinuxz!Only makes sense to test on Linux)reasonc                    VP                  \        R R 4       \        P                  ! 4       p\	        V4      pWn        RVn        VP                  4       w   rVWa8X  g   Q hR# )calcsizec                    ^# )   r^   r   s   &r0   r   'test_platform_linux32.<locals>.<lambda>b  s    ar2   FN)r)   struct
setuptoolsr
   r   r*  root_is_pureget_tag)reportedr5  r   rB   r-   _actuals   &&&    r0   test_platform_linux32rF  Z  sV     
K8""$D
d
CMC;;=LAqr2   c                   V ^8  d   QhRR/# )   returnNoner^   )formats   "r0   __annotate__rL  k  s     * *4 *r2   c                   R  R lp\        \        4      ;_uu_ 4        V P                  \        P                  R4       RRR4       V P                  \        RV4       \        P                  ! \        RR7      ;_uu_ 4        ^ RI
pRRR4       V P                  \        P                  R4       ^ RIpR#   + '       g   i     L~; i  + '       g   i     LI; i)c                   V ^8  d   QhRR/# )rH  r<   r:   r^   )rK  s   "r0   rL  $test_no_ctypes.<locals>.__annotate__l  s     ; ;3 ;r2   c                `    V R 8X  d   \        RV  24      h\        P                  ! V .VO5/ VB # )ctypeszNo module named )ModuleNotFoundError	importlib
__import__)r<   argsr+   s   &*,r0   _fake_import$test_no_ctypes.<locals>._fake_importl  s8    8%(8&?@@##D:4:6::r2   zwheel.macosx_libfileNrT  zNo module named ctypesr   zsetuptools.command.bdist_wheel)r   KeyErrordelitemr  modulesr)   builtinsr   raisesrR  wheel.macosx_libfilesetuptools.command.bdist_wheel)r   rV  wheelr@  s   &   r0   test_no_ctypesr`  k  s    ; 
(		CKK)?@ 
 ,=	*2J	K	K# 
L
 %EF) 
	
 
L	Ks   !B5C5C	C	c                F   VP                  V 4       VR ,          pVP                  4        VR,          P                  RRR7       VR,          P                  RRR7       \        \	        V4      \	        V4      R7      P                  4        RR	0p\        R
4      ;_uu_ 4       p\        VP                  4       4      pRRR4       VX,
          \        4       8X  g   Q hV Uu. uF  pR\	        V4      9   g   K  VNK  	  up'       d   Q hR#   + '       g   i     LV; iu upi )rr   r   zname: helloworldrs   rt   FOObar)rD   dist_info_dirzdummy_dist-1.0.dist-info/FOOr   r   Nzegg-info)	r   r   r   r1   r:   rN   r   r   r   )rX   r   r   r   r5  r   files_foundr%   s   &&&     r0   test_dist_info_providedrf    s    j!00HNN
&&'9G&L
 !!%'!:c(m3x=IMMO&)H 
7	8	8B"++-( 
9 k!SU***!,H
c$i0GHHHHH 
9	8
 Is   #D!D8DD	c                   R RRRRR\        R4      R\        R4      R	R
//p\        P                  P                  V\	        V4      R7       V P                  VR,          4       Rp\        P                  ! \        VR7      ;_uu_ 4        \        4       P                  4        RRR4       \        R4      ;_uu_ 4       p\        VP                  4       4      pRR0pWe8:  g   Q hVP                  R4      P                  R4      pRV9   g   Q hRV9   g   Q h RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i)LICENSE.txtzparent licensez
NOTICE.txtzparent noticepythonzpyproject.tomlz
                [project]
                name = "test-proj"
                dynamic = ["version"]      # <---- testing dynamic will not break
                [tool.setuptools.dynamic]
                version.file = "VERSION"
                r   z
                [metadata]
                license_files =
                  ../LICENSE.txt
                  ../NOTICE.txt
                VERSION42r4   z'Pattern '../.*.txt' cannot contain '..'r   Nz"dist/test_proj-42-py3-none-any.whlz+test_proj-42.dist-info/licenses/LICENSE.txtz*test_proj-42.dist-info/licenses/NOTICE.txtztest_proj-42.dist-info/METADATAr   zLicense-File: LICENSE.txtzLicense-File: NOTICE.txt)r   r7   r%   r8   r:   r   r   r   r   r1   rN   r   r   r   rl   r   )r   r   r   msgr   re  expected_filesr   s   &&      r0   0test_allow_grace_period_parent_directory_licensern    s*    	'oh  t%
E0 KKeCM2h)*
3C	2#	>	> 
?	5	6	6""++-(98
 ,,,77<=DDVL*h666)X555 
7	6 
?	>	6	6	6s   	D =AD3 D0	3E	>   dummy_dist-1.0.dist-info/WHEELr   r   &dummy_dist-1.0.dist-info/top_level.txt>
   NOTICEAUTHORSCOPYINGLICENCEr   
COPYING.md
NOTICE.rstAUTHORS.txtLICENCE.txtrh  )r   r   )r   z1[metadata]
license_files=licenses_dir/*
  LICENSE)r   z0[metadata]
license_files=licenses_dir/*, LICENSE)r   r   )rC  r5  )zlinux-x86_64
linux_i686)zlinux-aarch64linux_armv7l)T
__future__r   r[  rS  os.pathr$   platformr   r   r?  r  r  
contextlibr   inspectr   zipfiler   jaraco.pathr7   r   	packagingr   r@  r^  r   r	   setuptools.distr
   setuptools.warningsr   distutils.corer   r   r   OTHER_IGNORED_FILESSETUPPY_EXAMPLEdictfromkeysr9   r1   r>   fixturerT   rX   rZ   rg   rp   r   r   r   r   markparametrizer   r   r   r   r   r   r   r   filterwarningsr   r   listsupported_compressionsr(   r   r   r   r  r  r  r"  r(  r+  r7  skipifsystemrF  r`  rf  rn  r^   r2   r0   <module>r     s   "        
         C ( < $    Ob) ---0CCR
H
 H	
 	b H
2 	';<58 H	
 	"B  H
 	2]BR8
 	-,
'. H

 	r+@"E  X
 	+ X
 	2y"o
iBJ <<7 	H
  	9O%&H!", i 	B !	B 5 5 8 864-8C
C LJ##M	
	333 3@F &  KLL
 	+	+	1	1	34[//0  
8
83<	%**4144+n #%FG OO )L  	*,I2*6r2   