1j"ddlZddlZddlZddlZddlZddlmZddlm Z m Z ddl m Z ddl mZddlmZddlmZd Zed d d d ddddgZdZddgdgddfdddgfddgffdfdddgidfddidfdddDid ffZejd!ed"Zd#Zd$Zejd%gd&d'Zejd(d)dd*d+gd,gfd-dd*d+gd,gfd,dd*d+gd,gfd)dd.gd/d)gfd,dd0d1gd,d2gfd,d3d4d5gd6gd7fgd8Zejd9d:dd;gfd)dd.dgfd,dd0d?gfd,d3d4d@gd6fdAddBdCgfdAddDdEgfgdFZdS)GN) Distribution)check_package_datacheck_specifier)make_trivial_sdist) ensure_files)DALS)DistutilsSetupErrorc|dtjdtjt }fd}|dd|dd|dd 5}| td  | d d d n #1swxYwYd }| 5tfd|D}d d d n #1swxYwYd|D|ksJd S)zR Check multiple calls to `Distribution.fetch_build_egg` work as expected. indexzfile://c|}|d|d}tt|||||dd5}|t d|ddddS#1swxYwYdS)N-z.tar.gzz index.htmlwz {dist_sdist}
) dist_sdist)mkdirrstrjoinopenwriter format)distnameversiondist_dirrfpr setuptools_wheels l/builddir/build/BUILD/cloudlinux-venv-1.0.11/venv/lib/python3.11/site-packages/setuptools/tests/test_dist.pysdist_with_indexz3test_dist_fetch_build_egg..sdist_with_indexs;;x(( 337333   j)) * *Hg?O   ]]< ( ( - -c 2 2 b HH &J&//                     s97B==CC barbazquuxz3.2.0zbarbazquux-runnerz2.11.1z setup.cfgrzL [easy_install] index_url = {index_url} ) index_urlNz* barbazquux-runner barbazquux c:g|]}|S)fetch_build_egg).0rdists r z-test_dist_fetch_build_egg..<s'@@@a$..q11@@@c g|] }||j Sr!)name)r#r%s rr&z-test_dist_fetch_build_egg..=s 9 9 9$D 9DI 9 9 9r')rurllibparseurljoinrequest pathname2urlrrrrr rsplitas_cwdrparse_config_files) tmpdirrrrrreqsresolved_distsr%r s ` @@rtest_dist_fetch_build_eggr5s LL ! !E $$Y0K0KCPUJJ0W0WXXI"\7+++((333 [ ! ! & &s + + r     fyf))                       AA~~ !!!@@@@4@@@AAAAAAAAAAAAAAA : 9. 9 9 9T A A A A A As$)7C,,C03C01EE #E packagez0.0.1zFoo Barz foo@bar.netzLong descriptionzShort descriptiononetwo)r)rauthor author_emaillong_description descriptionkeywordscvttdgdg}t|}t|jjddgksJtt |d|d<t|}t|jjddgksJdS)Nfoobar)ab)extras_requirerArBrC)dictrlistmetadataprovides_extrasreverseditemsattrsr%s r(test_provides_extras_deterministic_orderrLKs w5' : : : ; ; ;E   D  - . .3* < < < <"8E2B,C,I,I,K,K#L#LMME    D  - . .3* < < < < < (got '*.msg')c#K|]}|VdS)Nr!)r#xs r rQ|s"--Aa------r' generatorzd"values of 'package_data' dict" must be of type (got =3.0, !=3.1)r)python_requiresr_z>=3.0z!=3.1z>=invalid-version)rrrYrZr rJs rtest_check_specifierr`s~ > >E   DD%'8!9:::/A B BE   DD%'8!9:::/B C CE * + +##E""##################s7BBBctjtd5tddddS#1swxYwYdS)Nz missing.*namerW)rYrZr r_validate_metadatar!r'rtest_metadata_namercs */ B B B,,))+++,,,,,,,,,,,,,,,,,,s!A  AA) dist_name py_module))my.pkgmy_pkg)my-pkgrg)rgrg)pkgric||dz |dz |dz it|t|d}t|}||j|gksJti|ddgi}||jdgksJti|ddgi}||jrJdS) Nz.pysetup.py noxfile.py)r)src_root py_modulesexplicity_py_modulepackagesexplicity_package)touchEXAMPLE_BASE_INFOrr set_defaultsrn)tmp_pathrdrerKr%s rtest_dist_default_py_modulesrvs89!!!!((*** !!### ##%%% P O)X O O OE   D ?yk ) ) ) ) H5H,1F0GHH I ID ?45 5 5 5 5 D5D*/B.CDD E ED r')rd package_dir package_filesrprfzmy_pkg/__init__.pyz my_pkg/mod.pyrgrhzmy/pkg/__init__.pymyzsrc/my_pkg/__init__.pyzsrc/my_pkg2/__init__.pymy_pkg2liblib2)ripkg2)zlib/__init__.pyzlib/nested/__init__.pytzlib2/__init__.py)riz pkg.nestedr}ct|||dz |dz it|t||d}t |}||jrJ|jrJt|jt|ksJt i|ddgi}||jrJt|jdhksJt i|ddgi}||jrJt|jdhksJdS)Nrkrl)r)rmrwrnexplicit_py_modulerpexplicit_package) rrrrsrrrtrnsetrp)rurdrwrxrprKr%s rtest_dist_default_packagesrs0=))) !!### ##%%%   MM"    E   D   t}  X . . . . G5G,1E0FGG H HD}  t  $8#9 9 9 9 9 C5C*/A.BCC D DD  t}  "4!5 5 5 5 5 5 5r')rdrwrxz my.pkg.nestedzmy/pkg/nested/__init__.pyzmy/pkg/file.pyz my_pkg.pyzmy_pkg/nested/__init__.pyzsrc/my_pkg/nested/__init__.py)rgz my_pkg.lib2UNKNOWNz src/mod1.pyz src/mod2.pyzsrc/pkg1/__ini__.pyzsrc/pkg2/__init__.pycBt||itdtj||d}|d=t |}||js |j sJ| |ksJdS)z:Make sure dist.name is discovered from packages/py_modules/)rmrwr)N) rrsrospathr/rrtrnrpget_name)rurdrwrxrKr%s rtest_dist_default_namers(=)))   HHRW]]84455"   E f   D ?+dm++ + ==??i ' ' ' ' ' 'r') rr[ urllib.parser*urllib.requestrY setuptoolsrsetuptools.distrrfixturesrtest_find_packagesrtextwrapr distutils.errorsr r5rDrsrLCHECK_PACKAGE_DATA_TESTSmark parametrizer]r`rcrvrrr!r'rrs  ######????????((((((,,,,,,000000+B+B+B\D   (#U^==='"Y   '7# $ wi   :  '7#  A  W    -----  & M/d=?WXXCCYXC # # # ,,, ,= 4.@8*M 4.@8*M 4.@8*M 4./$1AB   %'@ A y !   6 * * N N N ) ) )  *66+*6B1 $!< => 4.0@AB 4+' 4.0KLM 424STU V 4 4 N N N D=-89 D02HIJ$ ( (%$ ( ( (r'