hyb
2026-01-30 44480e71b27aa9d4cb8441f50c873f1b110e9691
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
Ë
Añúh4Xãól—ddlZddlZddlmZddlmZddlmZddlZ    ddl
Z
ddl m Z ddl Z ddlmZddlmZmZddlmZdd    lmZd
d lmZd
d lmZmZmZd
d lmZddlZ Gd„d«Z!Gd„d«Z"Gd„d«Z#Gd„d«Z$Gd„d«Z%Gd„d«Z&d„Z'd„Z(d„Z)d„Z*d„Z+d„Z,d „Z-d!„Z.y)"éN)Ú ConfigParser)Úproduct)Úcast)ÚPath)Úsdist)Úfind_package_pathÚfind_parent_package)Ú Distribution)ÚPackageDiscoveryErroré)Úquiet)Úget_sdist_membersÚget_wheel_membersÚrun)ÚDALScó—eZdZd„Zd„Zy)ÚTestFindParentPackagecó¬—|dz jdd¬«|dz j«|dz j«gd¢}t|ddi|«d    k(sJ‚y)
Nzsrc/namespace/pkg/nestedT©Úexist_okÚparentsz$src/namespace/pkg/nested/__init__.pyzsrc/namespace/pkg/__init__.py)Ú    namespaceú namespace.pkgznamespace.pkg.nestedÚÚsrcr©ÚmkdirÚtouchr    )ÚselfÚtmp_pathÚpackagess   úYH:\Change_password\venv_build\Lib\site-packages\setuptools/tests/test_config_discovery.pyÚtest_single_packagez)TestFindParentPackage.test_single_packages_€à    Ð.Ñ    .×5Ñ5¸tÈTÐ5ÔRØ    Ð:Ñ    :×AÑAÔCØ    Ð3Ñ    3×:Ñ:Ô<ÚIˆÜ" 8¨b°%¨[¸(ÓCÀÒVÐVÑVócóœ—gd¢}|D]2}|d|›z jdd¬«|d|›dz j«Œ4t|ddi|«J‚y)N)ÚpkgÚpkg1Úpkg2úsrc/Trz /__init__.pyrrr)rr ÚmultipleÚnames    r"Útest_multiple_toplevelz,TestFindParentPackage.test_multiple_toplevel!sk€ò+ˆØò    ;ˆDØ ˜$˜t˜f˜ Ñ %× ,Ñ ,°dÀDÐ ,Ô IØ ˜$˜t˜f LÐ1Ñ 1× 8Ñ 8Õ :ð    ;ô# 8¨b°%¨[¸(ÓCÐKÐKÑKr$N)Ú__name__Ú
__module__Ú __qualname__r#r,©r$r"rrs„òWóLr$rc óÜ—eZdZdZddidgdœdddiiddgid    dgidd
d giiiiid œ    Zd dgddgddgdgdgdœZd„Zejjdej««d„«Z ejjdej««d„«Z e d«e d«e d«e d«dœZejjdegd ¢dd    gej«««d!„«Zejjd"d#gdhfd$gdd%hfd&gdd'hfd(ghd)£fd*gdd+hfd,gdhfd-gdhfg«d.„«Zejjd/d0gd1gg«d2„«Zd3„Zd4„Zd5„Zy6)7Ú TestDiscoverPackagesAndPyModulesz‹Make sure discovered values for ``packages`` and ``py_modules`` work
    similarly to explicit configuration for the simple scenarios.
    rrr&)Ú package_dirr!r3Úlibr!Ú
py_modulesÚnszns.pkg)    z explicit-srcz variation-libz explicit-flatzexplicit-single_modulezexplicit-namespacez automatic-srczautomatic-flatzautomatic-single_modulezautomatic-namespaceúsrc/pkg/__init__.pyzsrc/pkg/main.pyzlib/pkg/__init__.pyzlib/pkg/main.pyzpkg/__init__.pyz pkg/main.pyúpkg.pyzns/pkg/__init__.py)rr4ÚflatÚ single_modulercóp—|jd«\}}}|j|}|j|}||fS)Nú-)Ú    partitionÚFILESÚOPTIONS)rÚ circumstanceÚ_ÚlayoutÚfilesÚoptionss      r"Ú    _get_infoz*TestDiscoverPackagesAndPyModules._get_infoFs>€Ø#×-Ñ-¨cÓ2‰ ˆˆ1ˆfØ—
‘
˜6Ñ"ˆØ—,‘,˜|Ñ,ˆØgˆ~Ðr$r@có,‡    —|j|«\}}t|||«t||«\}}|jjDcgc]"}|j t jd«‘Œ$}}|D]Š    tˆ    fd„|D««rŒJ‚ycc}w)Nú/c3ó@•K—|]}|j‰«–—Œy­w©N)Úendswith)Ú.0ÚfÚfiles  €r"ú    <genexpr>zGTestDiscoverPackagesAndPyModules.test_sdist_filelist.<locals>.<genexpr>Usøèø€Ò:¨Aq—z‘z $×'Ñ:ùsƒ)    rEÚ_populate_project_dirÚ_run_sdist_programaticallyÚfilelistrCÚreplaceÚosÚsepÚany)
rr r@rCrDrAÚcmdrLÚmanifestrMs
         @r"Útest_sdist_filelistz4TestDiscoverPackagesAndPyModules.test_sdist_filelistLs†ø€àŸ™¨ Ó5‰ˆˆwܘh¨¨wÔ7ä+¨H°gÓ>‰ˆˆ3à47·L±L×4FÑ4FÖG¨qA—I‘IœbŸf™f cÕ*ÐGˆÐGØò    ;ˆDÜÓ:°Ô:Õ:Ð :Ð:ñ    ;ùòHsÁ
'Bcóh—|j|«\}}t|||«|dz j«|dz j«|dz j«|dz j«|dz j«|dz j«|dz j«|dz j«t    |«t t |jd    «««}td
«td j|««|t|«k\sJ‚tt |jd «««}td «td j|««|Dchc]$}|jdd«jdd«’Œ&}}||k\sJ‚|D]}    d|vsJ‚d|vrŒJ‚ycc}w)NÚbuildz    build/libzbuild/bdist.linux-x86_64z build/bdist.linux-x86_64/file.pyzbuild/lib/__init__.pyzbuild/lib/file.pyÚdistz dist/file.pyú dist/*.tar.gzú~~~~~ sdist_members ~~~~~ú
ú
dist/*.whlú~~~~~ wheel_members ~~~~~r)rúlib/) rErOrrÚ
_run_buildrÚnextÚglobÚprintÚjoinÚsetrrR)
rr r@rCrDÚ sdist_filesÚ wheel_filesrLÚ
orig_filesrMs
          r"Ú test_projectz-TestDiscoverPackagesAndPyModules.test_projectWs˜€àŸ™¨ Ó5‰ˆˆwܘh¨¨wÔ7ð
GÑ    ×"Ñ"Ô$Ø    KÑ    ×&Ñ&Ô(Ø    Ð.Ñ    .×5Ñ5Ô7Ø    Ð6Ñ    6×=Ñ=Ô?Ø    Ð+Ñ    +×2Ñ2Ô4Ø    Ð'Ñ    '×.Ñ.Ô0Ø    FÑ    ×!Ñ!Ô#Ø    NÑ    "×)Ñ)Ô+ä8Ôä'¬¨X¯]©]¸?Ó-KÓ(LÓMˆ Ü Ð)Ô*Ü ˆdi‰i˜ Ó$Ô%Øœc %›jÒ(Ð(Ð(ä'¬¨X¯]©]¸<Ó-HÓ(IÓJˆ Ü Ð)Ô*Ü ˆdi‰i˜ Ó$Ô%ØINÖOÀAa—i‘i ¨Ó+×3Ñ3°F¸BÕ?ÐOˆ
ÐOؘjÒ(Ð(Ð(ð ò    'ˆDØ %Ñ'Ð 'Ð'Ø Ò&Ð &Ð&ñ    'ùò    PsÅ))F/z‡
            [metadata]
            name = myproj
            version = 0.0.0
 
            [options]
            {param} =
            z¢
            __import__('setuptools').setup(
                name="myproj",
                version="0.0.0",
                {param}=[]
            )
            zÿ
            [build-system]
            requires = []
            build-backend = 'setuptools.build_meta'
 
            [project]
            name = "myproj"
            version = "0.0.0"
 
            [tool.setuptools]
            {param} = []
            zv
            [build-system]
            requires = []
            build-backend = 'setuptools.build_meta'
            )ú    setup.cfgúsetup.pyúpyproject.tomlútemplate-pyproject.toml)Ú config_fileÚparamr@)rlrmrncó”—|j|gd¢z}t||i«|dk(r|jdd«}n'|jd}|dz j    |d¬«|}|j|j |¬«}||z j    |d¬«t |i«}    t|    |«gk(sJ‚d    d
d œ|}
t|    |
«J‚y) N)zmod.pyzother.pyr7rnrAr<roúutf-8©Úencoding)rqr!r5)r5r!)r>rOrRÚPURPOSEFULLY_EMPYÚ
write_textÚformatÚ    _get_distÚgetattr) rr rprqr@rCÚtemplate_paramÚ    pyprojectÚconfigr[Úothers            r"Útest_purposefully_emptyz8TestDiscoverPackagesAndPyModules.test_purposefully_empty£sé€ð—
‘
˜<Ñ(Ò+XÑXˆÜ˜h¨¨rÔ2à Ð*Ò *Ø"Ÿ]™]¨3°Ó4‰Nð×.Ñ.Ð/HÑIˆIØ Ð(Ñ (× 4Ñ 4°YÈÐ 4Ô QØ"ˆNà×'Ñ'¨ Ñ4×;Ñ;À.Ð;ÓQˆØ    KÑ    ×+Ñ+¨F¸WÐ+ÔE䘠2Ó&ˆôt˜UÓ# rÒ)Ð)Ð)Ø)°|ÑDÀUÑKˆÜt˜UÓ#Ð+Ð+Ñ+r$)Ú extra_filesÚpkgszvenv/bin/simulate_venvzpkg-stubs/__init__.pyiz    pkg-stubszother-stubs/__init__.pyiz other-stubsz namespace-stubs/pkg/__init__.pyi>únamespace-stubs.pkgr&únamespace-stubsz&namespace-stubs/pkg-stubs/__init__.pyirƒz_hidden/file.pyznews/finalize.pycóŽ—|jd|z}t||i«t|i«}t|j«|k(sJ‚y)Nr9)r>rOryrgr!)rr r€rrCr[s      r"Ú!test_flat_layout_with_extra_fileszBTestDiscoverPackagesAndPyModules.test_flat_layout_with_extra_filesÁsF€ð*—
‘
˜6Ñ" [Ñ0ˆÜ˜h¨¨rÔ2ܘ 2Ó&ˆÜ4—=‘=Ó! TÒ)Ð)Ñ)r$r€zother/__init__.pyzother/finalize.pycóº—|jd|z}t||i«tjtd¬«5t |i«ddd«y#1swYyxYw)Nr9úmultiple (packages|modules)©Úmatch©r>rOÚpytestÚraisesr ry)rr r€rCs    r"Ú+test_flat_layout_with_dangerous_extra_fileszLTestDiscoverPackagesAndPyModules.test_flat_layout_with_dangerous_extra_filesÛsR€ð—
‘
˜6Ñ" [Ñ0ˆÜ˜h¨¨rÔ2Ü ]‰]Ô0Ð8UÔ Vñ    $Ü h Ô #÷    $÷    $ñ    $ús » AÁAcó’—|jddgz}t||i«t|i«}t|j«dhk(sJ‚y)Nr:zinvalid-module-name.pyr&)r>rOryrgr5)rr rCr[s    r"Ú#test_flat_layout_with_single_modulezDTestDiscoverPackagesAndPyModules.test_flat_layout_with_single_moduleèsJ€Ø—
‘
˜?Ñ+Ð/GÐ.HÑHˆÜ˜h¨¨rÔ2ܘ 2Ó&ˆÜ4—?‘?Ó#¨ wÒ.Ð.Ñ.r$có¼—|jddgz}t||i«tjtd¬«5t |i«ddd«y#1swYyxYw)Nr:zvalid_module_name.pyr‡rˆrŠ)rr rCs   r"Ú&test_flat_layout_with_multiple_moduleszGTestDiscoverPackagesAndPyModules.test_flat_layout_with_multiple_modulesîsT€Ø—
‘
˜?Ñ+Ð/EÐ.FÑFˆÜ˜h¨¨rÔ2Ü ]‰]Ô0Ð8UÔ Vñ    $Ü h Ô #÷    $÷    $ñ    $ús ¼ AÁAcóp—ddlm}d}|dz jt|«d¬«|dz j    «t
j j«j|«5|jd«d    d    d    «tt|jd
«««}d|vsJ‚y    #1swYŒ3xYw) zRegression for issue 3692r)Ú
build_metaz%[project]
name = "test"
version = "1"rnrsrtzfoo.pyú.Nz*.whl) Ú
setuptoolsr“rwrrÚjaracoÚpathÚDirectoryStackÚcontextÚ build_wheelrrcrd)rr r“r|ris     r"Ú%test_py_modules_when_wheel_dir_is_cwdzFTestDiscoverPackagesAndPyModules.test_py_modules_when_wheel_dir_is_cwdôsž€å)à=ˆ    Ø    Ð$Ñ    $×0Ñ0´°i³È7Ð0ÔSØ    HÑ    ×#Ñ#Ô%Ü [‰[× 'Ñ 'Ó )× 1Ñ 1°(Ó ;ñ    (Ø × "Ñ " 3Ô '÷    (ô(¬¨X¯]©]¸7Ó-CÓ(DÓEˆ ؘ;Ñ&Ð&Ñ&÷        (ð    (ús Á(B,Â,B5N)r-r.r/Ú__doc__r?r>rEr‹ÚmarkÚ parametrizeÚkeysrXrkrrvrrr…rrr‘r›r0r$r"r2r2+sM„ñð *,¨U¨ À%ÀÑIà ˜B ˜;ð
ð% u gÐ.Ø#/°%°Ð"9Ø)¨D°(Ð+;Ð<ØØØ#%Ø!ñ €Gð&Ð'8Ð9Ø%Ð'8Ð9Ø" MÐ2Ø"˜Ø*Ð+ñ  €Eòð  ‡[[×ј^¨W¯\©\«^Ó<ñ;ó=ð;ð ‡[[×ј^¨W¯\©\«^Ó<ñ'ó=ð'ñBð ó    
ñð ó
ñð ó 
ñ$(ð ó$
ñE)ÐðV ‡[[×ÑØ0ÙÚ 7Ø ˜Ð &Ø J‰J‹Ló    
óñ,óð,ð, ‡[[×ÑØà&Ð '¨%¨Ð 1Ø&Ð '¨%°Ð)=Ð >Ø(Ð )¨E°=Ð+AÐ Bð4Ð4ÚAð ð:Ð:ØÐ)Ð*ð ð
 Ð   5 'Ð *Ø Ð ! E 7Ð +ð    
óñ(*ó)ð(*ð  ‡[[×ÑØà  Ð !Ø  Ð !ð    
óñ$óð$ò /ò $ó 'r$r2có˜—eZdZdZdgdgddgddgdgd    gd
œZej jd ej««d „«Z    d „Z
y)Ú TestNoConfigz0.0.0z src/pkg1.pyzsrc/pkg2/__init__.pyzsrc/pkg3/__init__.pyzsrc/pkg3-stubs/__init__.pyzpkg4/__init__.pyzpkg4-stubs/__init__.pyzsrc/ns/nested/pkg1/__init__.pyzns/nested/pkg2/__init__.py)r'r(Úpkg3Úpkg4zns.nested.pkg1zns.nested.pkg2Úexamplecóz—t||j|i«t|i«}|j«|k(sJ‚yrI)rOÚEXAMPLESryÚget_name)rr r¤r[s    r"Útest_discover_namezTestNoConfig.test_discover_names7€ä˜h¨¯ © °gÑ(>ÀÔCܘ 2Ó&ˆØ}‰}‹ 'Ò)Ð)Ñ)r$có†—dg}t||i«t|d«|d|j›dz }|j«sJ‚y)Nzsrc/ns/nested/pkg/__init__.pyú--sdistzdist/ns_nested_pkg-z.tar.gz)rOrbÚDEFAULT_VERSIONÚis_file)rr rCÚ    dist_files    r"Útest_build_with_discovered_namez,TestNoConfig.test_build_with_discovered_namesM€Ø0Ð1ˆÜ˜h¨¨rÔ2ܐ8˜YÔ'àÐ!4°T×5IÑ5IÐ4JÈ'ÐRÑRˆ    Ø× Ñ Ô"Ð"Ñ"r$N) r-r.r/r«r¦r‹rržrŸr¨r®r0r$r"r¡r¡si„Ø€OðØ'Ð(Ø'Ð)EÐFØ#Ð%=Ð>Ø;Ð<Ø7Ð8ñ €Hð ‡[[×јY¨¯ © «Ó8ñ*ó9ð*ó
#r$r¡cól—eZdZejj ddifddddidœfg«d„«Zd„Zy    )
ÚTestWithAttrDirective)ÚfolderÚoptsrr4zfind:Úwhere)r!ú packages.findcó*—|›ddg}t|||«|dz jd¬«}|dddiidd|zi}tjj    ||¬    «t |i«}|j «dk(sJ‚|j«d
k(sJ‚|jsJ‚td|j|«}tjj|«sJ‚|t|«j«vsJ‚t|d «|d z }    |    j«sJ‚y) Nz/pkg/__init__.pyrlrsrtr&ú __init__.pyú version = 42z'[metadata]
version = attr: pkg.version
©ÚprefixÚ42rªzdist/pkg-42.tar.gz)rOÚ    read_textr–r—rZryr§Ú get_versionr3rrSÚexistsrÚpartsrbr¬)
rr r±r²rCr}Ú    overwriter[Ú package_pathr­s
          r"Útest_setupcfg_metadataz,TestWithAttrDirective.test_setupcfg_metadatas'€ð8Ð+Ð,¨kÐ:ˆÜ˜h¨¨tÔ4à˜[Ñ(×3Ñ3¸WÐ3ÓEˆà U˜]¨NÐ;Ð<Ø ÐDÀvÑMð
ˆ    ô     ‰ ×ј)¨HÐÔ5䘠2Ó&ˆØ}‰}‹ %Ò'Ð'Ð'Ø×ÑÓ! TÒ)Ð)Ð)Ø×ÒÐÐÜ(¨°×0@Ñ0@À(ÓKˆ ܏w‰w~‰~˜lÔ+Ð+Ð+Øœ˜lÓ+×1Ñ1Ó3Ñ3Ð3Ð3ä8˜YÔ'ØÐ3Ñ3ˆ    Ø× Ñ Ô"Ð"Ñ"r$cóܗt|dgi«dddiiddœ}tjj||¬«t    |i«}|j «dk(sJ‚|j d    d
ik(sJ‚y) Nr7r&r¶r·zh[project]
name = 'pkg'
dynamic = ['version']
[tool.setuptools.dynamic]
version = {attr = 'pkg.version'}
©rrnr¸rºrr)rOr–r—rZryr¼r3)rr r¿r[s    r"Útest_pyproject_metadataz-TestWithAttrDirective.test_pyproject_metadata<s‚€Ü˜hÐ)>Ð(?ÀÔDð˜M¨>Ð:Ð;ðPñ
ˆ    ô     ‰ ×ј)¨HÐÔ5䘠2Ó&ˆØ×ÑÓ! TÒ)Ð)Ð)Ø×Ñ B¨ ;Ò.Ð.Ñ.r$N)r-r.r/r‹rržrÁrÄr0r$r"r°r°sI„Ø ‡[[×ÑØà BˆKØ  ¸GÀUÐ;KÑLÐ Mð    
óñ#óð#ó./r$r°có—eZdZd„Zd„Zd„Zy)ÚTestWithCExtensioncóh—gd¢}t||i«d}|dz jt|«d¬«y)N) zbenchmarks/file.pyz docs/Makefilezdocs/requirements.txtzdocs/source/conf.pyz proj/header.hz proj/file.pyz py/proj.cppz py/other.cppz
py/file.pyz py/py.typedzpy/tests/test_proj.pyz
README.rsta^
            from setuptools import Extension, setup
 
            ext_modules = [
                Extension(
                    "proj",
                    ["py/proj.cpp", "py/other.cpp"],
                    include_dirs=["."],
                    language="c++",
                ),
            ]
            setup(ext_modules=ext_modules)
        rmrsrt©rOrwr)rr rCÚ setup_scripts    r"Ú _simulate_package_with_extensionz3TestWithCExtension._simulate_package_with_extensionNs=€ò 
ˆô    ˜h¨¨rÔ2ð  ˆ ð
JÑ    ×*Ñ*¬4° Ó+=ÈÐ*ÕPr$có¾—|j|«d}|dz jt|«d¬«d}|dz jt|«d¬«t|i«}|j    «dk(sJ‚|j «dk(sJ‚|j J‚|jJ‚t|j«d
k(sJ‚|jd jdk(sJ‚y    ) zˆEnsure that auto-discovery is not triggered when the project is based on
        C-extensions only, for backward compatibility.
        zr
            [build-system]
            requires = []
            build-backend = 'setuptools.build_meta'
        rnrsrtzQ
            [metadata]
            name = proj
            version = 42
        rlÚprojrºNr r) rÊrwrryr§r¼r5r!ÚlenÚ ext_modulesr+)rr r|Úsetupcfgr[s     r"Ú*test_skip_discovery_with_setupcfg_metadataz=TestWithCExtension.test_skip_discovery_with_setupcfg_metadataosì€ð     ×-Ñ-¨hÔ7ð ˆ    ð
 
Ð$Ñ    $×0Ñ0´°i³È7Ð0ÔSð ˆð
 
KÑ    ×+Ñ+¬D°«NÀWÐ+ÔM䘠2Ó&ˆØ}‰}‹ &Ò(Ð(Ð(Ø×ÑÓ! TÒ)Ð)Ð)؏‰Ð&Ð&Ð&؏}‰}Ð$Ð$Ð$ܐ4×#Ñ#Ó$¨Ò)Ð)Ð)Ø×Ñ Ñ"×'Ñ'¨6Ò1Ð1Ñ1r$cóà—|j|«d}|dz jt|«d¬«tjt
d¬«5t |i«ddd«y#1swYyxYw)aŽWhen opting-in to pyproject.toml metadata, auto-discovery will be active if
        the package lists C-extensions, but does not configure py-modules or packages.
 
        This way we ensure users with complex package layouts that would lead to the
        discovery of multiple top-level modules/packages see errors and are forced to
        explicitly set ``packages`` or ``py-modules``.
        zT
            [project]
            name = 'proj'
            version = '42'
        rnrsrtr‡rˆN)rÊrwrr‹rŒr ry)rr r|s   r"Ú0test_dont_skip_discovery_with_pyproject_metadatazCTestWithCExtension.test_dont_skip_discovery_with_pyproject_metadata‹sg€ð     ×-Ñ-¨hÔ7ð ˆ    ð
 
Ð$Ñ    $×0Ñ0´°i³È7Ð0ÔSÜ ]‰]Ô0Ð8UÔ Vñ    $Ü h Ô #÷    $÷    $ñ    $ús Á A$Á$A-N)r-r.r/rÊrÐrÒr0r$r"rÆrÆMs„òQòB2ó8$r$rÆcó
—eZdZd„ZdZdZdZejjddde
e«ifdde
e«ifd    de
e«ifd    de
e«ifd    de
e«e
d
«zifd    de
e«e
d «zifg«d „«Z y )ÚTestWithPackageDatacó|—|›d|›d|›dg}t||i«d}|dz jt|«d¬«y)Nz/proj/__init__.pyú/proj/file1.txtú/proj/nested/file2.txtz/
            global-include *.py *.txt
        z MANIFEST.inrsrtrÈ)rr Úsrc_rootrCrWs     r"Ú!_simulate_package_with_data_filesz5TestWithPackageData._simulate_package_with_data_files s\€àˆjÐ)Ð *؈j˜Ð (؈jÐ.Ð /ð
ˆô
    ˜h¨¨rÔ2ð ˆð
MÑ    !×-Ñ-¬d°8«nÀwÐ-ÕOr$zd
    [metadata]
    name = proj
    version = 42
 
    [options]
    include_package_data = True
    z8
    [project]
    name = "proj"
    version = "42"
    z:
    [tool.setuptools]
    package-dir = {"" = "src"}
    )rØrCr”rlrnrzÞ
                        packages = find:
                        package_dir =
                            =src
 
                        [options.packages.find]
                        where = src
                        zv
                        [tool.setuptools]
                        package-dir = {"" = "src"}
                        có6—tjj|t|«¬«|j    ||«t
jj |›d«jt
jd«t
jj |›d«jt
jd«h}t|«tt|jd«««}td«tdj|««||k\sJ‚tt|jd«««}td    «tdj|««|Dchc]$}|jd
d «jd d «’Œ&}}||k\sJ‚y cc}w)zq
        Make sure auto-discovery does not affect package include_package_data.
        See issue #3196.
        r¸rÖrGr×r\r]r^r_r`r)rraN)r–r—rZÚstrrÙrSÚnormpathrRrTrbrrcrdrerfr)    rr rØrCÚexpectedrhrirLrjs             r"Útest_include_package_dataz-TestWithPackageData.test_include_package_dataÀsJ€ôT     ‰ ×ј%¬¨H« ÐÔ6Ø ×.Ñ.¨x¸ÔBô G‰G× Ñ  ˜z¨Ð9Ó :× BÑ BÄ2Ç6Á6È3Ó OÜ G‰G× Ñ  ˜zÐ)?Ð@Ó A× IÑ IÌ"Ï&É&ÐRUÓ Vð
ˆô
    8Ôä'¬¨X¯]©]¸?Ó-KÓ(LÓMˆ Ü Ð)Ô*Ü ˆdi‰i˜ Ó$Ô%ؘhÒ&Ð&Ð&ä'¬¨X¯]©]¸<Ó-HÓ(IÓJˆ Ü Ð)Ô*Ü ˆdi‰i˜ Ó$Ô%ØIQÖRÀAa—i‘i ¨Ó+×3Ñ3°F¸BÕ?ÐRˆ
ÐRؘjÒ(Ð(Ñ(ùòSsÅ#)FN) r-r.r/rÙÚEXAMPLE_SETUPCFGÚEXAMPLE_PYPROJECTÚPYPROJECT_PACKAGE_DIRr‹rržrrÞr0r$r"rÔrԟsò„ò PðÐðÐð Ðð
 ‡[[×ÑØà ;¡Ð%5Ó 6Ð7Ð 8Ø Ð#¡TÐ*;Ó%<Ð=Ð >Ø [¡$Ð'7Ó"8Ð9Ð :Ø Ð%¡tÐ,=Ó'>Ð?Ð @àà¡Ð&6Ó!7Ùðó    ñ
"ð ð ð"à$¡dÐ+<Ó&=Ùðóñ'ðð ð+!    
ó$ñJ)óK$ñJ)r$rÔcó²—gd¢}t||i«ti«}t«|_|j    «|j
J‚|j J‚y)N)zdir1/__init__.pyzdir2/__init__.pyzfile.py)rOr
ÚobjectÚ configurationÚ set_defaultsr5r!)r rCr[s   r"Ú(test_compatible_with_numpy_configurationræsW€ò €Eô
˜( E¨2Ô.Ü ˜Ó €DÜ›€DÔØ×ÑÔØ ?‰?Ð "Ð"Ð "Ø =‰=Ð  Ð Ñ  r$có֗tjjddi«ti«}dg|_|j «|j «|j«dk(sJ‚y)Nr8rz--namer&)r–r—rZr
Ú script_argsråÚparse_command_liner§)Ú
tmpdir_cwdr[s  r"Ú$test_name_discovery_doesnt_break_clirësX€Ü
‡KK×ѐx nÔ%Ü ˜Ó €DØ z€DÔØ×ÑÔØ×ÑÔØ =‰=‹?˜eÒ #Ð#Ñ #r$cór‡‡—dddiitd«dœ}tjj|«t    i«Š‰j
j Šˆˆfd„}|j‰j
d|«‰j«‰j«dk(sJ‚t‰j«dhk(sJ‚y    )
a
According to #3545 it seems that ``name`` discovery is running,
    even when the project already explicitly sets it.
    This seems to be related to parsing of dynamic versions (via ``attr`` directive),
    which requires the auto-discovery of ``package_dir``.
    r&r¶z__version__ = 42
            [project]
            name = "myproj"  # purposefully different from package name
            dynamic = ["version"]
            [tool.setuptools.dynamic]
            version = {"attr" = "pkg.__version__"}
            rÃcó>•—‰«‰j«dk(sJ‚y)NÚmyproj)r§)r[Úorig_analyse_names€€r"Úspy_analyse_namezJtest_preserve_explicit_name_with_dynamic_version.<locals>.spy_analyse_name/sø€ñ    Ô؏}‰}‹ (Ò*Ð*Ñ*r$Ú analyse_namerºN) rr–r—rZr
rårñÚsetattrÚparse_config_filesr¼rgr!)rêÚ monkeypatchrCrðr[rïs    @@r"Ú0test_preserve_explicit_name_with_dynamic_versionrõs·ù€ð MÐ#7Ð8ð
ôð ó
ñ     €Eô ‡KK×ѐeÔÜ ˜Ó €DØ×)Ñ)×6Ñ6Ðõ+ð ×ј×)Ñ)¨>Ð;KÔLØ×ÑÔØ × Ñ Ó  Ò %Ð%Ð %Ü ˆt}‰}Ó  % Ò (Ð(Ñ (r$cóꇗddddœ}tjj|‰¬«t‰|«ˆfd„|D«}|D]/}|jj dd¬«|j «Œ1y)    Nz$import setuptools
setuptools.setup()z# Example PackagezCopyright (c) 2018)rmz    README.mdÚLICENSEr¸c3ó(•K—|]    }‰|z –—Œ y­wrIr0)rKrLÚroots  €r"rNz(_populate_project_dir.<locals>.<genexpr>Fsøèø€Ò %˜!ˆTAXÑ %ùsƒTr)r–r—rZÚ_write_setupcfgÚparentrr)rùrCrDÚbasicÚpathsr—s`     r"rOrO;sqø€ð
<Ø(Ø'ñ €Eô
 ‡KK×ѐe DÐÔ)ܐD˜'Ô"Û %˜uÔ %€EØòˆØ  ‰ ×Ñ 4°ÐÔ6Ø 
‰
 ñr$cóž—|s td«yt«}|jd«|j«D]±\}}|dk(r,|jd|›«|d|›j    |«Œ7t |t «rdj|«|d|<Œ_t |t«r2djd„|j«D««}d|z|d|<Œ¡t|«|d|<Œ³t|dz d    d
¬ «5}|j|«ddd«td «t|dz jd
¬ ««y#1swYŒ3xYw) Nz~~~~~ **NO** setup.cfg ~~~~~rDr´zoptions.z, r^c3ó2K—|]\}}d|›d|›–—Œy­w)ú    z = Nr0)rKÚkÚvs   r"rNz"_write_setupcfg.<locals>.<genexpr>Ys èø€Ò!K±T°Q¸ B q c¨¨Q¨C¤.Ñ!Kùs‚rlÚwrsrtz~~~~~ setup.cfg ~~~~~) rerÚ add_sectionÚitemsÚupdateÚ
isinstanceÚlistrfÚdictrÛÚopenÚwriter»)rùrDrÏÚkeyÚvalueÚ    str_valuerLs       r"rúrúLs=€Ù Ü Ð,Ô-ØÜ‹~€HØ ×јÔ#Ø—m‘m“oò
2‰
ˆˆUØ /Ò !Ø ×  Ñ   8¨C¨5Ð!1Ô 2Ø x ˜uÐ%Ñ &× -Ñ -¨eÕ 4Ü ˜œtÔ $Ø'+§y¡y°Ó'7ˆHYÑ  Ò $Ü ˜œtÔ $ØŸ    ™    Ñ!K¸U¿[¹[»]Ô!KÓKˆIØ'+¨iÑ'7ˆHYÑ  Ò $ä'*¨5£zˆHYÑ  Ò $ð
2ô
ˆd[Ñ  #°Ô    8ð¸A؏‰qÔ÷ä    Ð
!Ô"Ü    ˆ4+Ñ ×
(°'Ð
:Õ;÷ðús Ã?EÅE cób—tjdddg|¢t|«‘}t|ddi¬«S)Nz-mrZz--no-isolationÚDISTUTILS_DEBUGr)Úenv)ÚsysÚ
executablerÛr)r—ÚflagsrVs   r"rbrbcs6€Ü >‰>˜4 Ð*:Ð
N¸UÐ
NÄCÈÃIÐ
N€CÜ ˆsÐ*¨BÐ/Ô 0Ð0r$c    óà—djtjj|««}|dz }|j    «rEt |«5t ttjjdid¬««}ddd«n t|«}|_ d|_ t |«5|j«ddd«|j«|S#1swYŒMxYw#1swYŒ'xYw)NrGrmÚinit)Ú
stop_after)rfrSr—Úsplitr½rrr
Ú    distutilsÚcoreÚ    run_setuprØÚ script_namerórå)Ú    dist_pathÚattrsrùÚscriptr[s     r"ryryhsÍ€Ø 8‰8”B—G‘G—M‘M )Ó,Ó -€Dà ˜Ñ #€FØ ‡}}„Ü )‹_ñ    ÜÜÜ—‘×(Ñ(¨°RÀFÐ(ÓKóˆD÷    ð    ô ˜EÓ"ˆà€D„MØ!€DÔÜ     ˆi‹ñ"Ø ×ÑÔ!÷"ð    ×ÑÔØ €K÷    ð    ú÷"ð"úsÁ1CÂ-C$ÃC!Ã$C-cóX—t||«}t|«}|j«|jjs|jj
sJ‚t «5t|«5|j«ddd«ddd«||fS#1swYŒxYw#1swY||fSxYwrI)    ryrÚensure_finalizedÚ distributionr!r5r rr)rrr[rVs    r"rPrP~s—€Ü Y Ó &€DÜ
‹+€CØ×ÑÔØ × Ñ × $Ò $¨×(8Ñ(8×(CÒ(CÐCÐ Cä    ‹ñ”$y“/ñØ ‰Œ    ÷÷𠐈9Ð÷ðú÷𠐈9Ðús$Á  BÁ,BÁ=BÂB    ÂBÂB))/rSrÚ configparserrÚ    itertoolsrÚtypingrÚ jaraco.pathr–r‹r—rr•Úsetuptools.command.sdistrÚsetuptools.discoveryrr    Úsetuptools.distr
Úsetuptools.errorsr Úcontextsr Úintegration.helpersrrrÚtextwraprÚdistutils.corerrr2r¡r°rÆrÔrærërõrOrúrbryrPr0r$r"ú<module>r/s¬ðÛ    Û
Ý%ÝÝãÛ ÝãÝ*ßGÝ(Ý3åßJÑJÝã÷LñL÷&T'ñT'÷n#ñ#÷6-/ñ-/÷`O$ñO$÷d^)ñ^)òB !ò$ò!)òHò"<ò.1ò
ó,    r$