+
    Îi                       R t ^ RIHt ^ RIt^ RIHtHt ^ RIHt ^ RI	H
t
 ^ RIHt ^ RIHtHt ^ RIHt ^ R	IHtHt ^ R
IHtHt ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ RI H!t! ]PD                  ! ]#4      t$ ! R R]4      t%]&]]%3,          t'](]]3,          t)](]]]3,          t*]&]]+]),          3,          t,]&]]+]*,          3,          t-](],]-3,          t.](]'].3,          t/R R lt0RR R llt1R R lt2R R lt3R R lt4R R lt5R# )z&Validation of dependencies of packages)annotationsN)	GeneratorIterable)suppress)Parser)reduce)Callable
NamedTuple)Requirement)Tag	parse_tag)NormalizedNamecanonicalize_name)Version))make_distribution_for_install_requirement)get_default_environment)BaseDistribution)InstallRequirementc                  ,    ] tR t^t$ R]R&   R]R&   RtR# )PackageDetailsr   versionzlist[Requirement]dependencies N)__name__
__module____qualname____firstlineno____annotations____static_attributes__r       m/Users/ahmad/.openclaw/workspace/scripts/.venv/lib/python3.14/site-packages/pip/_internal/operations/check.pyr   r      s    ##r   r   c                   V ^8  d   QhRR/# )   returnztuple[PackageSet, bool]r   )formats   "r    __annotate__r%   ,   s     ! !+B !r   c                 B   / p Rp\        4       pVP                  RRR7       FA  pVP                  p \        VP	                  4       4      p\        VP                  V4      W&   KC  	  W3#   \        \        3 d$   p\        P                  RYF4       Rp Rp?Kw  Rp?ii ; i)z3Converts a list of distributions into a PackageSet.F)
local_onlyskipz$Error parsing dependencies of %s: %sTNr   )r   iter_installed_distributionscanonical_namelistiter_dependenciesr   r   OSError
ValueErrorloggerwarning)package_setproblemsenvdistnamer   es          r    !create_package_set_from_installedr7   ,   s    KH
!
#C00E0K""	 6 6 89L .t||\ JK	 L   	 $ 	NNA4KH	s   1A**B;BBc               $    V ^8  d   QhRRRRRR/# )r"   r1   
PackageSetshould_ignorezCallable[[str], bool] | Noner#   CheckResultr   )r$   s   "r    r%   r%   =   s$     *  * * ,H* * r   c                   / p/ pV P                  4        EF,  w  rE\        4       p\        4       pV'       d   V! V4      '       d   K2  VP                   F  p\        VP                  4      p	W9  dJ   Rp
VP
                  e   VP
                  P                  RR/4      p
V
'       d   VP                  W34       Kg  W	,          P                  pVP                  P                  VRR7      '       d   K  VP                  WV34       K  	  V'       d   \        V\        R7      W$&   V'       g   EK  \        V\        R7      W4&   EK/  	  W#3# )zCheck if a package set is consistent

If should_ignore is passed, it should be a callable that takes a
package name and returns a boolean.
Textra )prereleases)key)itemssetr   r   r5   markerevaluateaddr   	specifiercontainssortedstr)r1   r:   missingconflictingpackage_namepackage_detailmissing_depsconflicting_depsreqr5   missedr   s   &&          r    check_package_setrR   =   s    GK(3(9(9(;$%(U-0U]<88!..C$SXX.D &::) ZZ00'2?F $$d[1 "'//G==))'t)DD $$dS%9: /" $*<S$AG!(./?S(IK%9 )<< r   c                    V ^8  d   QhRRRR/# )r"   
to_installlist[InstallRequirement]r#   ConflictDetailsr   )r$   s   "r    r%   r%   j   s      (@ _ r   c                n   a \        4       w  r\        W4      p\        W14      oV\        VV3R lR7      3# )zeFor checking if the dependency graph would be consistent after     installing given requirements
    c                   < V S9  # Nr   )r5   	whitelists   &r    <lambda>)check_install_conflicts.<locals>.<lambda>y   s
    D	4Ir   )r:   )r7   _simulate_installation_of_create_whitelistrR   )rT   r1   _would_be_installedrZ   s   &   @r    check_install_conflictsra   j   sD    
 78NK2:K ""4BI 	'I	
 r   c               $    V ^8  d   QhRRRRRR/# )r"   packageszIterable[BaseDistribution]supported_tagszIterable[Tag]r#   z'Generator[BaseDistribution, None, None]r   )r$   s   "r    r%   r%   ~   s&      (! -r   c              #    "   V  F  p\        \        4      ;_uu_ 4        VP                  R 4      p\        \        P
                  \        \        \        4       P                  V4      P                  R. 4      4      \	        4       4      pVP                  V4      '       d   Vx  RRR4       K  	  R#   + '       g   i     K  ; i5i)WHEELr   N)r   FileNotFoundError	read_textr   	frozensetunionmapr   r   parsestrget_all
isdisjoint)rc   rd   p
wheel_file
wheel_tagss   &&   r    check_unsupportedrr   ~   s      '((W-J)/Ivx00<DDUBOP*J
 $$^44 )( (((s   CBB2$C2C=	Cc               $    V ^8  d   QhRRRRRR/# )r"   rT   rU   r1   r9   r#   set[NormalizedName]r   )r$   s   "r    r%   r%      s$      (7Ar   c                    \        4       pV  Fj  p\        V4      pVP                  4       pVP                  p\	        VP
                  \        VP                  4       4      4      W&   VP                  V4       Kl  	  V# )z=Computes the version of packages after installing to_install.)	rB   r   get_metadata_distributionr*   r   r   r+   r,   rE   )rT   r1   	installedinst_reqabstract_distr4   r5   s   &&     r    r]   r]      so    
 I A(K668""*4<<d>T>T>V9WXd  r   c               $    V ^8  d   QhRRRRRR/# )r"   r`   rt   r1   r9   r#   r   )r$   s   "r    r%   r%      s$      +:Dr   c                    \        V 4      pV FR  pW29   d   K  W,          P                   F1  p\        VP                  4      V9   g   K  VP	                  V4        KP  	  KT  	  V# rY   )rB   r   r   r5   rE   )r`   r1   packages_affectedrL   rP   s   &&   r    r^   r^      sa     ./#,,99C *.??!%%l3 :	 $ r   rY   )6__doc__
__future__r   loggingcollections.abcr   r   
contextlibr   email.parserr   	functoolsr   typingr   r	   "pip._vendor.packaging.requirementsr
   pip._vendor.packaging.tagsr   r   pip._vendor.packaging.utilsr   r   pip._vendor.packaging.versionr   pip._internal.distributionsr   pip._internal.metadatar   pip._internal.metadata.baser   pip._internal.req.req_installr   	getLoggerr   r/   r   dictr9   tupleMissingConflictingr+   MissingDictConflictingDictr;   rV   r7   rR   ra   rr   r]   r^   r   r   r    <module>r      s    , "  /   
 ; 5 I 1 Q : 8 <			8	$$Z $ ..01

+
,NG[89>4=01~tK'889K01
K/0!"* Z( &r   