a Re@sddlZddlZddlmZmZmZmZmZm Z ddl m Z ddl m Z ddlmZmZddlmZddlmZddlmZmZdd lmZd d lmZmZmZmZm Z e!e"Z#Gd d d eZ$GdddeZ%GdddeZ&dS)N) CollectionIterableIteratorList NamedTupleOptional) pkg_resources) Requirement)NormalizedNamecanonicalize_name)parse)misc) get_installer get_metadata)$pkg_resources_distribution_for_wheel)BaseDistributionBaseEntryPointBaseEnvironmentDistributionVersionWheelc@s&eZdZUeed<eed<eed<dS) EntryPointnamevaluegroupN)__name__ __module__ __qualname__str__annotations__r r /builddir/build/BUILDROOT/alt-python39-pip-21.3.1-2.el8.x86_64/opt/alt/python39/lib/python3.9/site-packages/pip/_internal/metadata/pkg_resources.pyrs rc@s0eZdZejddddZeeeddddZ e e edd d Z e e edd d Z e edd dZe edddZe edddZe edddZe edddZe edddZeedddZeedddZe ejjdddZd&eeee d!d"d#Z!eedd$d%Z"dS)' DistributionN)distreturncCs ||_dSN)_distselfr#r r r!__init__ szDistribution.__init__)wheelrr$cCs>|}t|||j}Wdn1s,0Y||Sr%) as_zipfilerlocation)clsr*rzfr#r r r! from_wheel#s ,zDistribution.from_wheelr$cCs|jjSr%)r&r,r(r r r!r,)szDistribution.locationcCs|jjSr%)r&egg_infor1r r r!info_directory-szDistribution.info_directorycCs t|jjSr%)r r& project_namer1r r r!canonical_name1szDistribution.canonical_namecCs t|jjSr%) parse_versionr&versionr1r r r!r75szDistribution.versioncCs t|jSr%)rr&r1r r r! installer9szDistribution.installercCs t|jSr%)r dist_is_localr&r1r r r!local=szDistribution.localcCs t|jSr%)r dist_in_usersiter&r1r r r! in_usersiteAszDistribution.in_usersitecCs t|jSr%)r dist_in_site_packagesr&r1r r r!in_site_packagesEszDistribution.in_site_packagesrr$cCs |j|st||j|Sr%)r& has_metadataFileNotFoundErrorr)r(rr r r! read_textIs zDistribution.read_textccsZ|jD]F\}}|D]4\}}t|d\}}}t|||dVqqdS)N=)rrr)r& get_entry_mapitemsr partitionrstrip)r(rentriesr entry_point_rr r r!iter_entry_pointsNszDistribution.iter_entry_pointscCs t|jSr%)rr&r1r r r!metadataTszDistribution.metadatar )extrasr$cCs"|rt||jj}|j|Sr%) frozenset intersectionr&rMrequires)r(rMr r r!iter_dependenciesXszDistribution.iter_dependenciescCs|jjSr%)r&rMr1r r r!iter_provided_extras]sz!Distribution.iter_provided_extras)r )#rrrrr"r) classmethodrrr/propertyrr,r3r r5rr7r8boolr:r<r>rBrrrKemailmessageMessagerLrr rQrRr r r r!r"s2r"c@seZdZejddddZeedddZee e e edd d Z e e e d d d Ze e e d ddZee dddZdS) EnvironmentN)wsr$cCs ||_dSr%)_ws)r(rZr r r!r)bszEnvironment.__init__r0cCs |tjSr%)r working_set)r-r r r!defaulteszEnvironment.default)pathsr$cCs|t|Sr%)r WorkingSet)r-r^r r r! from_pathsiszEnvironment.from_pathsr?cCs,t|}|D]}|j|kr|SqdS)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_distributionsr5)r(rr5r#r r r!_search_distributionms    z Environment._search_distributioncCsD||}|r|Sz|j|Wntjy8YdS0||Sr%)rbr[requirerDistributionNotFound)r(rr#r r r!get_distributionys  zEnvironment.get_distributionccs|jD]}t|VqdSr%)r[r"r'r r r!_iter_distributionss zEnvironment._iter_distributions)rrrrr_r)rSrr]rrrr`rrbrerrfr r r r!rYas rY)' email.messagerVloggingtypingrrrrrr pip._vendorrZ"pip._vendor.packaging.requirementsr pip._vendor.packaging.utilsr r Zpip._vendor.packaging.versionr r6Zpip._internal.utilsr pip._internal.utils.packagingrrpip._internal.utils.wheelrbaserrrrr getLoggerrloggerrr"rYr r r r!s       B