hyb
2025-11-10 e0a856b5072c5a09f3f6de6da85abf90e00ee704
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
Ë
Añúh@ ã ó2—dZddlZddlZddlZddlZddlmZddlmZddlm    Z    ddl
m Z ddl Z ddl mZdd    lmZmZe j$j&Zed
d «\Z    d efd efdefdefdefdefdefdefdefdefg
ZdddœZddiddidœZdddœZej4dd fZd!Ze j:d"„«Ze j:d#¬$«d%„«Ze j$jAd&e«e j$jBd'„««Z"d(„Z#d)„Z$d*„Z%d+„Z&d,„Z'y)-a™Integration tests for setuptools that focus on building packages via pip.
 
The idea behind these tests is not to exhaustively check all the possible
combinations of packages, operating systems, supporting libraries, etc, but
rather check a limited number of popular packages and how they interact with
the exposed public API. This way if any change in API is introduced, we hope to
identify backward compatibility problems before publishing a release.
 
The number of tested packages is purposefully kept small, to minimise duration
and the associated maintenance cost (changes in the way these packages define
their build process may require changes in the tests).
éN)ÚEnum)Úglob)Úmd5)Úurlopen)Ú Requirementé)ÚArchiveÚrunÚvÚLATESTÚpipÚpytestÚmypyÚbotocoreÚ
kiwisolverÚbrotliÚpyyamlúcharset-normalizerÚprotobufÚcelery)z
Cython<3.0)z mypy>=1.4.1)rrÚPYYAML_FORCE_CYTHONÚ1ÚCHARSET_NORMALIZER_USE_MYPYCÚyamlzgoogle.protobuf)rrú-mÚ
virtualenv)z--ignore-installedz--no-build-isolationcóؗtgt¢t|dz «‘«d„|jd«D«}t    j
dt jj|«¬«S)Nz.venvc3óFK—|]}t|j«–—Œy­w)N)ÚstrÚparent)Ú.0Úps  úfH:\Change_password\venv_build\Lib\site-packages\setuptools/tests/integration/test_pip_install_sdist.pyú    <genexpr>zvenv_python.<locals>.<genexpr>fsèø€ÒM q”S˜Ÿ™—]ÑMùs‚!z.venv/*/python*Úpython)Úpath)    r
Ú
VIRTUALENVrrÚshutilÚwhichÚosÚpathsepÚjoin)Útmp_pathÚ possible_paths  r#Ú venv_pythonr/csQ€äÐ.Œ*Ð.”c˜( WÑ,Ó-Ð.Ô/ÙM¨H¯M©MÐ:KÓ,LÔM€MÜ <‰<˜¤r§z¡z§¡°}Ó'EÔ FÐFóT)Úautousec#óBK—tjdt|««}tj|d¬«|j    dd«d–—t d«t d«t t
|jd««t d    «t|d
d d g«y­w) NÚ DOWNLOAD_PATHT)Úexist_okÚ    USE_MYPYCrú<~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~zTemporary directory:Ú*zVirtual environment:rr Úfreeze)    r*ÚgetenvrÚmakedirsÚsetenvÚprintÚmaprr
)r-r/Ú monkeypatchÚ download_paths    r#Ú_preparer@js~èø€ä—I‘I˜o¬s°8«}Ó=€M܇KK ¨Õ-ð×ѐ{ CÔ(ã    ô
Ð
HÔIÜ    Ð
 Ô!ÜŒˆx}‰}˜SÓ!Ô"Ü    Ð
 Ô!܈d˜E 8Ð,Õ-ùs‚BB)ÚpackageÚversioncó—|ddf}t|||«}t||«}|r(td«td|«tg|¢d‘|¢«tj |i«}tg|¢d‘d‘|‘«tg|¢d‘t ¢|‘|«tj ||«jdd«}    d    |    ›d
|    ›d }
t|d |
g«y) Nrr r6z Dependencies:Úinstallz--force-reinstallú-Ú_zimport z; print(getattr(z, '__version__', 0))z-c)    Úretrieve_sdistÚ
build_depsr<r
ÚEXTRA_ENV_VARSÚgetÚINSTALL_OPTIONSÚ IMPORT_NAMEÚreplace) rArBr-r/Úsetuptools_wheelÚvenv_pipÚsdistÚdepsÚenvÚpkgÚscripts            r#Útest_install_sdistrU}sî€ð˜T 5Ð)€HÜ ˜7 G¨XÓ 6€EÜ g˜uÓ %€DÙ Ü ÐLÔMÜ ˆo˜tÔ$Ü Ð )ˆhÐ )˜    Ð ) DÐ )Ô*ô ×
˜W bÓ
)€CÜÐEˆ(ÐEIÐEÐ2ÐEÐ4DÐEÔFÜÐ7ˆ(Ð7IÐ7¤Ð7°Ð7¸Ô=ô /‰/˜' 7Ó
3°C¸Ó
=€CؐseÐ+¨C¨5Ð0DÐ E€F܈d˜FÐ#Õ$r0có¤—tjdt|««}t||«}t    tj
j ||›d««D] }|d|k7sŒ tj|«Œ"tj
j ||d«}tj
j|«st|d||d«|S)z5Either use cached sdist file or download it from PyPIr3r7ÚfilenameÚurlÚ
md5_digest)
r*r9rÚretrieve_pypi_sdist_metadatarr&r,ÚunlinkÚexistsÚdownload)rArBr-r?ÚdistÚfileÚ    dist_files       r#rGrG—s­€ô —I‘I˜o¬s°8«}Ó=€MÜ '¨°Ó 9€Dô”R—W‘W—\‘\ -°G°9¸A°Ó?Ó@òˆØ 
Ñ ˜tÓ #Ü I‰IdOðô—‘— ‘ ˜]¨D°Ñ,<Ó=€IÜ 7‰7>‰>˜)Ô $ܐe‘˜i¨¨lÑ);Ô<Ø Ðr0có&—|tur|n|›d|›}td|›d«5}tj|«}ddd«ddrt    d|›d|›d«‚|dd    }|tur|d
|n|d }t d „|«\}|S#1swYŒQxYw) Nú/zhttps://pypi.org/pypi/z/jsonÚinfoÚyankedz Release for ú z  was yankedrBÚreleasesÚurlscó—|ddk(S)NÚ packagetyperP©)Úds r#ú<lambda>z.retrieve_pypi_sdist_metadata.<locals>.<lambda>¶s€  -Ñ 0°GÑ ;€r0)r rÚjsonÚloadÚ
ValueErrorÚfilter)rArBÚid_ÚfÚmetadataÚreleaserPs       r#rZrZ«sº€à¤Ñ&‰'¨w¨i°q¸¸    Ð,B€CÜ    Ð)¨#¨¨eÐ4Ó    5ð ¸Ü—9‘9˜Q“<ˆ÷ ðÑ˜Ò!ܘ<¨ y°°'°¸+ÐFÓGÐGàvјyÑ)€GØ/6¼&Ñ/@ˆhzÑ" 7Ò+ÀhÈvÑFV€GÜÑ;¸WÓEH€UØ €L÷ ð ús ¡BÂBcóF—t|«5}|j«}ddd«t«j«|k(sJ‚t    |d«5}|j |«ddd«t jj|«sJ‚y#1swYŒoxYw#1swYŒ7xYw)NÚwb)    rÚreadrÚ    hexdigestÚopenÚwriter*r&r\)rXÚdestrYrrÚdatas     r#r]r]ºsŒ€Ü    ‹ð˜Øv‰v‹xˆ÷ô ˆt‹9× Ñ Ó   JÒ .Ð.Ð .ä     ˆdDÓ    ð˜QØ    ‰Œ ÷ô 7‰7>‰>˜$Ô ÐÑ ÷ðú÷
ðúsŒB ÁB BÂB có|—ddlm}t|«}|jt    |««}|j di«j dg«}|t j |g«z }|Dcic]}t|«j|“Œ}}|j«D    cgc] \}}    |dk7sŒ |    ‘Œc}    }Scc}wcc}    }w)z¡Find out what are the build dependencies for a package.
 
    "Manually" install them, since pip will not install build
    deps with `--no-build-isolation`.
    r)Útomllibz build-systemÚrequiresÚ
setuptools)
Úsetuptools.compat.py310r~r    ÚloadsÚ_read_pyprojectrJÚEXTRA_BUILD_DEPSrÚnameÚitems)
rAÚ
sdist_filer~ÚarchivercrQrkÚ requirementsÚkr s
          r#rHrHÆs¨€õ0äjÓ!€GØ =‰=œ¨Ó1Ó 2€DØ 8‰8N BÓ '× +Ñ +¨J¸Ó ;€DØÔ ×  Ñ   ¨"Ó -Ñ-€Dà48Ö9¨q”K “N×'Ñ'¨Ñ*Ð9€LÐ9Ø&×,Ñ,Ó.× D‘$!Q°!°|Ó2CŠAÓ DÐDùò:ùÛ DsÁ+B3 B8Â+B8có2‡—ˆfd„‰D«}t|d«S)Nc3ó¢•K—|]F}tjj‰j|««dk(r‰j    |«–—ŒHy­w)zpyproject.tomlN)r*r&ÚbasenameÚget_nameÚ get_content)r!Úmemberrˆs  €r#r$z"_read_pyproject.<locals>.<genexpr>ÚsGøèø€òà Ü 7‰7× Ñ ˜G×,Ñ,¨VÓ4Ó 5Ð9IÒ Ið    ×јF×#ñùsƒA AÚ)Únext)rˆÚcontentss` r#rƒrƒÙs!ø€óàô€Hô
˜"Ó Ðr0)(Ú__doc__rmr*r(ÚsysÚenumrrÚhashlibrÚurllib.requestrrÚpackaging.requirementsrÚhelpersr    r
ÚmarkÚ integrationÚ
pytestmarkr ÚEXAMPLESr„rIrLÚ
executabler'rKÚfixturer/r@Ú parametrizeÚ uses_networkrUrGrZr]rHrƒrjr0r#ú<module>r£sƒðñ ó Û    Û Û
ÝÝÝÝ"ã Ý.ç!à [‰[× $Ñ $€
ñ hÓ     €Ø#ð ˆF€OØ ˆvÐØ ˆVÐàÐؐ6ÐØ ˆvÐØ ˆvÐØ˜6Ð"ؐÐà ˆvÐð €ð*Ø*ñÐð % cÐ*Ø9¸3Ð?ñ€ð Ø!ñ€ ð n‰n˜d LÐ 1€
ð€ð‡ñGóðG𠀇˜Ôñ.óð.ð$‡×ÑÐ/°Ó:؇×Ññ%óó;ð%ò0ò( ò     òEó&r0