U ë˜Re` ã@sºdZddlmZddlmZddlZddlZddlZddlZddl Z ddl Z ddl Z ddl Z ddl m Z ddlmZddlmZddlmZe  d e j¡jZd Zd d „ZGd d„dƒZdS)zWheels support.é)Ú get_platform)ÚlogN)Ú parse_version)Úsys_tags)Úcanonicalize_name)Úwrite_requirementsz‚^(?P.+?)-(?P\d.*?) ((-(?P\d.*?))?-(?P.+?)-(?P.+?)-(?P.+?) )\.whl$z8__import__('pkg_resources').declare_namespace(__name__) c CsÞt |¡D]¢\}}}tj ||¡}|D].}tj ||¡}tj |||¡}t ||¡q&ttt|ƒƒƒD]D\} } tj || ¡}tj ||| ¡}tj  |¡sft ||¡|| =qfq tj|dd�D]\}}}|rÎt ‚t  |¡q¼dS)zDMove everything under `src_dir` to `dst_dir`, and delete the former.T)ÚtopdownN) ÚosÚwalkÚpathÚrelpathÚjoinÚrenamesÚreversedÚlistÚ enumerateÚexistsÚAssertionErrorÚrmdir) Úsrc_dirZdst_dirÚdirpathÚdirnamesÚ filenamesÚsubdirÚfÚsrcÚdstÚnÚd©rú†/builddir/build/BUILDROOT/alt-python38-setuptools-58.3.0-2.el8.x86_64/opt/alt/python38/lib/python3.8/site-packages/setuptools/wheel.pyÚunpacks   r!c@sheZdZdd„Zdd„Zdd„Zdd„Zd d „Zd d „Zd d„Z e dd„ƒZ e dd„ƒZ e dd„ƒZ dS)ÚWheelcCsPttj |¡ƒ}|dkr$td|ƒ‚||_| ¡ ¡D]\}}t|||ƒq6dS)Nzinvalid wheel name: %r) Ú WHEEL_NAMEr r ÚbasenameÚ ValueErrorÚfilenameÚ groupdictÚitemsÚsetattr)Úselfr&ÚmatchÚkÚvrrr Ú__init__6s  zWheel.__init__cCs&t |j d¡|j d¡|j d¡¡S)z>List tags (py_version, abi, platform) supported by this wheel.Ú.)Ú itertoolsÚproductÚ py_versionÚsplitÚabiÚplatform©r*rrr Útags>s    ýz Wheel.tagscs0tdd„tƒDƒƒ‰t‡fdd„| ¡DƒdƒS)z5Is the wheel is compatible with the current platform?css|]}|j|j|jfVqdS©N)Ú interpreterr4r5©Ú.0Útrrr Ú Hsz&Wheel.is_compatible..c3s|]}|ˆkrdVqdS)TNrr:©Úsupported_tagsrr r=JsF)ÚsetrÚnextr7r6rr>r Ú is_compatibleFsÿzWheel.is_compatiblecCs,tj|j|j|jdkrdntƒd� ¡dS)NÚany)Ú project_nameÚversionr5z.egg)Ú pkg_resourcesÚ DistributionrDrEr5rÚegg_namer6rrr rHLsþýzWheel.egg_namecCsJ| ¡D]4}t |¡}| d¡rt|ƒ t|jƒ¡r|Sqtdƒ‚dS)Nz .dist-infoz.unsupported wheel format. .dist-info not found)ÚnamelistÚ posixpathÚdirnameÚendswithrÚ startswithrDr%)r*ÚzfÚmemberrKrrr Ú get_dist_infoRs   ÿÿ zWheel.get_dist_infoc Cs(t |j¡�}| ||¡W5QRXdS)z"Install wheel as an egg directory.N)ÚzipfileÚZipFiler&Ú_install_as_egg)r*Údestination_eggdirrNrrr Úinstall_as_egg\szWheel.install_as_eggcCs\d|j|jf}| |¡}d|}tj |d¡}| ||||¡| ||¡| ||¡dS)Nz%s-%sz%s.dataúEGG-INFO) rDrErPr r r Ú_convert_metadataÚ_move_data_entriesÚ_fix_namespace_packages)r*rTrNZ dist_basenameÚ dist_infoÚ dist_dataÚegg_inforrr rSas  zWheel._install_as_eggc sL‡‡fdd„}|dƒ}t| d¡ƒ}tdƒ|ko>tdƒkn}|sTtd|ƒ‚t |¡ˆ |¡tj |ˆ¡‰tj j |ˆt  |ˆ¡d�‰d d „‰t t tˆˆ ¡ƒƒƒ‰‡‡‡fd d „ˆjDƒ}t ˆ|¡t tj |d ¡tj |d¡¡tj tˆ|d�d�} tjj} t tj¡z t|  d¡dtj |d¡ƒW5t | ¡XdS)Nc sHˆ t ˆ|¡¡�,}| ¡ d¡}tj ¡ |¡W5QR£SQRXdS)Nzutf-8) ÚopenrJr ÚreadÚdecodeÚemailÚparserÚParserÚparsestr)ÚnameÚfpÚvalue)rZrNrr Ú get_metadatamsz-Wheel._convert_metadata..get_metadataZWHEELz Wheel-Versionz1.0z2.0dev0z$unsupported wheel format version: %s)ÚmetadatacSsd|_t|ƒSr8)ÚmarkerÚstr)Úreqrrr Úraw_reqˆsz(Wheel._convert_metadata..raw_reqc s2i|]*}|t‡fdd„tˆˆ |f¡ƒDƒƒ“qS)c3s|]}|ˆkr|VqdSr8r)r;rk)Úinstall_requiresrr r=�sþz5Wheel._convert_metadata...)ÚsortedÚmapÚrequires)r;Úextra)Údistrmrlrr Ú Œs û þz+Wheel._convert_metadata..ÚMETADATAzPKG-INFO)rmÚextras_require)Úattrsr\z requires.txt)rÚgetr%r ÚmkdirÚ extractallr r rFrGÚ from_locationÚ PathMetadatarrnrorpÚextrasÚrenameÚ setuptoolsÚdictrÚ _global_logÚ thresholdÚ set_thresholdÚWARNrÚget_command_obj) rNrTrZr\rgÚwheel_metadataÚ wheel_versionZwheel_v1ruZ setup_distZ log_thresholdr)rrrZrmrlrNr rWksTÿÿ   þú   þþÿ  ýzWheel._convert_metadatacsâtj |ˆ¡‰tj ˆd¡}tj |¡rœtj |dd¡}t |¡t |¡D]D}| d¡rpt tj ||¡¡qLt tj ||¡tj ||¡¡qLt  |¡t tjj‡fdd„dDƒƒD]}t ||ƒq¸tj ˆ¡rÞt  ˆ¡dS)z,Move data entries to their correct location.ÚscriptsrVz.pycc3s|]}tj ˆ|¡VqdSr8)r r r )r;r©r[rr r=¿sÿz+Wheel._move_data_entries..)ÚdataÚheadersÚpurelibÚplatlibN) r r r rrxÚlistdirrLÚunlinkr}rÚfilterr!)rTr[Zdist_data_scriptsZegg_info_scriptsÚentryrrrˆr rX«s. ÿ    þ þ   zWheel._move_data_entriesc Cs°tj |d¡}tj |¡r¬t|ƒ�}| ¡ ¡}W5QRX|D]l}tjj|f| d¡žŽ}tj |d¡}tj |¡s~t |¡tj |¡s>t|dƒ�}| t ¡W5QRXq>dS)Nznamespace_packages.txtr/z __init__.pyÚw) r r r rr]r^r3rxÚwriteÚNAMESPACE_PACKAGE_INIT)r\rTÚnamespace_packagesreÚmodZmod_dirZmod_initrrr rYÇsÿ      zWheel._fix_namespace_packagesN)Ú__name__Ú __module__Ú __qualname__r.r7rBrHrPrUrSÚ staticmethodrWrXrYrrrr r"4s   ? r")Ú__doc__Údistutils.utilrÚ distutilsrr`r0r rJÚrerQrFr~rZ setuptools.extern.packaging.tagsrZ!setuptools.extern.packaging.utilsrZsetuptools.command.egg_inforÚcompileÚVERBOSEr+r#r“r!r"rrrr Ús,      üÿ