id-&tddlZddlZddlZddlZddlZddlmZmZm Z m Z m Z m Z m Z ddlmZddlmZddlmZmZddlmZddlmZmZmZddlmZdd lmZm Z dd l!m"Z"m#Z#d d l$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*ej+e,Z-Gd de Z.GddZ/Gdde%Z0Gdde'Z1dS)N) CollectionIterableIteratorListMapping NamedTupleOptional) pkg_resources) Requirement)NormalizedNamecanonicalize_name)parse) InvalidWheelNoneMetadataErrorUnsupportedWheel)egg_link_path_from_location) display_pathnormalize_path) parse_wheelread_wheel_metadata_file)BaseDistributionBaseEntryPointBaseEnvironmentDistributionVersionInfoPathWheelc.eZdZUeed<eed<eed<dS) EntryPointnamevaluegroupN)__name__ __module__ __qualname__str__annotations__Y/opt/cloudlinux/venv/lib/python3.11/site-packages/pip/_internal/metadata/pkg_resources.pyrrs+ III JJJ JJJJJr)rceZdZdZdeeefdeddfdZdedefdZ dedefd Z dede efd Z dedefd Z dedeefd Zd ededdfdZdS)InMemoryMetadatazIMetadataProvider that reads metadata files from a dictionary. This also maps metadata decoding exceptions to our internal exception type. metadata wheel_namereturnNc"||_||_dSN) _metadata _wheel_name)selfr-r.s r*__init__zInMemoryMetadata.__init__*s!%r)r c||jvSr1)r2r4r s r* has_metadatazInMemoryMetadata.has_metadata.st~%%r)c  |j|S#t$r#}td|jd|d|dd}~wwxYw)NzError decoding metadata for z: z in z file)r2decodeUnicodeDecodeErrorrr3)r4r es r* get_metadatazInMemoryMetadata.get_metadata1sr >$'..00 0!   "Ut/?UU1UU$UUU  s! AA  AcPtj||Sr1)r yield_linesr=r7s r*get_metadata_linesz#InMemoryMetadata.get_metadata_lines:s!():):4)@)@AAAr)cdSNFr(r7s r*metadata_isdirzInMemoryMetadata.metadata_isdir=sur)cgSr1r(r7s r*metadata_listdirz!InMemoryMetadata.metadata_listdir@s r) script_name namespacecdSr1r()r4rFrGs r* run_scriptzInMemoryMetadata.run_scriptCs r))r#r$r%__doc__rr&bytesr5boolr8r=rr@rCrrErIr(r)r*r,r,$s1 &e!4&#&$&&&&&&&&&&BsBx}BBBB34ST#Y c c d      r)r,c eZdZdejddfdZededefdZ ede ded edefd Z ed e d edefd Z edeefdZedeefdZedeefdZedefdZedefdZedefdZdedefdZdeefdZdedefdZdeefdZ de!j"j#fdZ$dde%edee&fdZ'deefdZ(dS) Distributiondistr/Nc||_dSr1)_distr4rOs r*r5zDistribution.__init__Hs  r) directoryc0|tj}tj|\}}t j||}|dr2t j}tj |d}na|dsJt j }tj |ddd}||||}||S)Nz .egg-inforz .dist-info-) project_namer-) rstriposseppathsplitr PathMetadataendswithrNsplitextDistInfoDistribution) clsrSdist_dirbase_dir dist_dir_namer-dist_cls dist_namerOs r*from_directoryzDistribution.from_directoryKs##BF++#%'--"9"9- -hAA   [ ) ) I$1H((77:II$$\22 2 2 2$9H((77:@@EEaHIxy8LLLs4yyr)metadata_contentsfilenamerVcjd|i}tj|t|||}||S)NMETADATAlocationr-rV)r r_r,)r`rgrhrV metadata_dictrOs r*from_metadata_file_contentsz(Distribution.from_metadata_file_contents_sM ) 1%mX>>%    s4yyr)wheelr c |5t|\}fdD}dddn #1swxYwYnN#tj$r}t |j||d}~wt$r}t|d|d}~wwxYwtj |jt||j|}||S)Nci|]E}|d|dddt|FS)/r) startswithr[r).0rZinfo_dirzfs r* z+Distribution.from_wheel..usa!!!(~~~66!JJsA&&r*,DR,N,N!!!r)z has an invalid wheel, rk) as_zipfilernamelistzipfile BadZipFilerrlrr r_r,) r`ror _rmr<rOrvrws @@r* from_wheelzDistribution.from_wheelpsc H!!## r)"d33 !!!!!! " !!!                ! < < <u~t44! ; H H H"d#F#F1#F#FGG G H1^%mU^DD    s4yysFA%5A A%AA% A!A%%B04B  B0B++B0c|jjSr1)rQrlr4s r*rlzDistribution.location z""r)ctt|j}|r|}n|jr|j}ndSt|Sr1)rraw_namerlr)r4egg_linkrls r*installed_locationzDistribution.installed_locationsF.t}==  HH ] }HH4h'''r)c|jjSr1)rQegg_infors r* info_locationzDistribution.info_locationrr)cb t|jjjS#t$rYdSwxYwrB)rLrQ _providerrZAttributeErrorrs r*installed_by_distutilsz#Distribution.installed_by_distutilss?   ,122 2   55 s  ..c4t|jjSr1)r rQrVrs r*canonical_namezDistribution.canonical_names !8999r)c4t|jjSr1) parse_versionrQversionrs r*rzDistribution.versionsTZ/000r)rZcP|jt|Sr1)rQr8r&)r4rZs r*is_filezDistribution.is_filesz&&s4yy111r)c#JK|jdEd{VdS)Nscripts)rQrErs r*iter_distutils_script_namesz(Distribution.iter_distutils_script_namess4:..y99999999999r)ct|}|j|st||j|}|t |||Sr1)r&rQr8FileNotFoundErrorr=r)r4rZr contents r* read_textzDistribution.read_textsb4yyz&&t,, *#D)) )*))$// ?#D$// /r)c#\K|jD]}\}}|D]c\}}t|d\}}}t |||Vd~dS)N=)r r!r")rQ get_entry_mapitemsr& partitionrstrip)r4r"entriesr entry_pointr}r!s r*iter_entry_pointszDistribution.iter_entry_pointss"j6688>>@@ V VNE7%,]]__ V V!k!$[!1!1!;!;C!@!@a djjll%++--uUUUUUUU V V Vr)ct|jtjrd}nd} ||}n]#t $rP|jrt|j}nt|j}t d|d}YnwxYwtj }|||S)z :raises NoneMetadataError: if the distribution reports `has_metadata()` True but `get_metadata()` returns None. rjzPKG-INFOzNo metadata found in %s) isinstancerQr r_rrrlrreprloggerwarningemailparser FeedParserfeedclose)r4 metadata_namer-displaying_path feed_parsers r*_metadata_implzDistribution._metadata_impls dj-"D E E '&MM&M ~~m44HH    } 6".t}"="="&t}"5"5 NN4o F F FHHH  l--// """  """s<ABBr(extrasc|r,t||jj}|j|Sr1) frozenset intersectionrQrrequires)r4rs r*iter_dependencieszDistribution.iter_dependenciessA  Gv&&33DJ4EFFFz""6***r)c|jjSr1)rQrrs r*iter_provided_extrasz!Distribution.iter_provided_extrass z  r))r())r#r$r%r rNr5 classmethodr&rrfrKrnrr~propertyr rlrrrLrr rrrrrrrrrrrrmessageMessagerrr rrr(r)r*rNrNGs]7Ds/?[&    [ uC4D[(#(3-###X#(HSM(((X(#x}###X#X::::X:1,111X12H22222:Xc]::::h3V8N#;VVVV # 5####,++ 3++AV++++ !hsm!!!!!!r)rNceZdZdejddfdZedefdZede e e defdZ de efdZd e de efd Zd e de efd ZdS) Environmentwsr/Nc||_dSr1)_ws)r4rs r*r5zEnvironment.__init__s r)c,|tjSr1)r working_set)r`s r*defaultzEnvironment.defaultss=,---r)pathsc<|tj|Sr1)r WorkingSet)r`rs r* from_pathszEnvironment.from_pathsss=+E22333r)c#@K|jD]}t|VdSr1)rrNrRs r*_iter_distributionszEnvironment._iter_distributionss8H % %Dt$$ $ $ $ $ % %r)r cpt|}|D]}|j|kr|cSdS)zFind a distribution matching the ``name`` in the environment. This searches from *all* distributions available in the environment, to match the behavior of ``pkg_resources.get_distribution()``. N)r iter_all_distributionsr)r4r rrOs r*_search_distributionz Environment._search_distributionsM +400//11  D"n44 5tr)c||}|r|S |j|n#tj$rYdSwxYw||Sr1)rrrequirer DistributionNotFound)r4r rOs r*get_distributionzEnvironment.get_distributions{((..  K  H  T " " " "1   44 ((...s6A A )r#r$r%r rr5rrrr rr&rrrrrrr(r)r*rrs=3....[.4xS 24444[4%X.>%?%%%%  :J1K    /S/X6F-G//////r)r)2 email.messager email.parserloggingrXr{typingrrrrrrr pip._vendorr "pip._vendor.packaging.requirementsr pip._vendor.packaging.utilsr r pip._vendor.packaging.versionrrpip._internal.exceptionsrrrpip._internal.utils.egg_linkrpip._internal.utils.miscrrpip._internal.utils.wheelrrbaserrrrrr getLoggerr#rrr,rNrr(r)r*rs; VVVVVVVVVVVVVVVVVV%%%%%%::::::IIIIIIII@@@@@@VVVVVVVVVVDDDDDDAAAAAAAAKKKKKKKK  8 $ $         FT!T!T!T!T!#T!T!T!n0/0/0/0/0//0/0/0/0/0/r)