+
    BV-jt  ã                   óÂ   € R t ^ RIt^ RIHt ^ RIHt ^ RIHtHt ^ RI	H
t
 ^ RIHt Rt]P                  ! ]4      tR R ltR	 R
 ltR R ltR R ltR R ltR R ltR# )z/Support functions for working with wheel files.N)ÚMessage)ÚParser)Ú
BadZipFileÚZipFile)Úcanonicalize_name)ÚUnsupportedWheelc                ó^   € V ^8„  d   QhR\         R\        R\        \        \        3,          /# )é   Ú	wheel_zipÚnameÚreturn)r   ÚstrÚtupler   )Úformats   "Új/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/pip/_internal/utils/wheel.pyÚ__annotate__r      s*   € ÷ ñ œ7ð ¬#ð ´%¼¼W¸Õ2Eñ ó    c                ó¨   €  \        W4      p\        W4      p\        V4      p\	        YA4       Y#3#   \         d   p\        T RT 24      hRp?ii ; i)z�Extract information from the provided wheel, ensuring it meets basic
standards.

Returns the name of the .dist-info directory and the parsed WHEEL metadata.
z has an invalid wheel, N)Úwheel_dist_info_dirÚwheel_metadataÚwheel_versionr   Úcheck_compatibility)r
   r   Úinfo_dirÚmetadataÚversionÚes   &&    r   Úparse_wheelr      sd   € ðDÜ& yÓ7ˆÜ! )Ó6ˆÜ Ó)ˆô ˜Ô&àÐÐøô ô DÜ $ Ð'>¸q¸cÐBÓCÐCûðDús   ‚!1 ±A¼AÁAc                ó<   € V ^8„  d   QhR\         R\        R\        /# )r	   Úsourcer   r   )r   r   )r   s   "r   r   r   $   s!   € ÷ ñ ¤ð ¬sð ´sñ r   c                ó   € V P                  4        Uu0 uF  q"P                  R^4      ^ ,          kK  	  ppV Uu. uF  qDP                  R4      '       g   K  VNK  	  ppV'       g   \        R4      h\	        V4      ^8”  d*   \        RP                  RP                  V4      4      4      hV^ ,          p\        V4      p\        V4      pVP                  V4      '       g   \        RV: RV: 24      hV# u upi u upi )z¢Returns the name of the contained .dist-info directory.

Raises AssertionError or UnsupportedWheel if not found, >1 found, or
it doesn't match the provided name.
Ú/z
.dist-infoz.dist-info directory not foundz)multiple .dist-info directories found: {}z, z.dist-info directory z does not start with )	ÚnamelistÚsplitÚendswithr   Úlenr   Újoinr   Ú
startswith)	r   r   ÚpÚsubdirsÚsÚ	info_dirsr   Úinfo_dir_nameÚcanonical_names	   &&       r   r   r   $   sí   € ð ,2¯?©?Ô+<Ó=Ñ+< a�w‰w�s˜A‹˜q×!Ð!Ñ+<€GÐ=á#Ó@™G�q§z¡z°,×'?—�™G€IÐ@çÜÐ?Ó@Ð@ä
ˆ9ƒ~˜ÔÜØ7×>Ñ>¸t¿y¹yÈÓ?SÓTó
ð 	
ð ˜�|€Hä% hÓ/€MÜ& tÓ,€NØ×#Ñ# N×3Ò3ÜØ# H¡<Ð/DÀ^ÑDVÐWó
ð 	
ð €Oùò+ >ùâ@s   “!C6ºC;ÁC;c                ó<   € V ^8„  d   QhR\         R\        R\        /# )r	   r   Úpathr   )r   r   Úbytes)r   s   "r   r   r   C   s&   € ÷ Gñ G¤Wð G´Cð G¼Eñ Gr   c                 óˆ   €  V P                  V4      #   \        \        \        3 d   p\	        R T: RT: 24      hRp?ii ; i)zcould not read z file: N)Úreadr   ÚKeyErrorÚRuntimeErrorr   )r   r.   r   s   && r   Úread_wheel_metadata_filer4   C   sJ   € ðGØ�{‰{˜4Ó Ð øô œ¤,Ð/ô GÜ °±¸À¹uÐEÓFÐFûðGús   ‚ “A©<¼Ac                ó<   € V ^8„  d   QhR\         R\        R\        /# )r	   r   Údist_info_dirr   )r   r   r   )r   s   "r   r   r   L   s!   € ÷ )ñ )œ7ð )´3ð )¼7ñ )r   c                óÂ   € V R2p\        W4      p VP                  4       p\	        4       P                  T4      #   \         d   p\        RT: RT: 24      hRp?ii ; i)zaReturn the WHEEL metadata of an extracted wheel, if possible.
Otherwise, raise UnsupportedWheel.
z/WHEELzerror decoding z: N)r4   ÚdecodeÚUnicodeDecodeErrorr   r   Úparsestr)r   r6   r.   Úwheel_contentsÚ
wheel_textr   s   &&    r   r   r   L   so   € ð ˆ_˜FÐ#€Dä-¨fÓ;€NðBØ#×*Ñ*Ó,ˆ
ô ‹8×Ñ˜ZÓ(Ð(øô ô BÜ °±¸¸1¹%Ð@ÓAÐAûðBús   ’; »AÁAÁAc                óJ   € V ^8„  d   QhR\         R\        \        R3,          /# )r	   Ú
wheel_datar   .)r   r   Úint)r   s   "r   r   r   _   s&   € ÷ Fñ Fœgð F¬%´°S°­/ñ Fr   c                óà   € V R,          pVf   \        R4      hVP                  4       p \        \        \        VP                  R4      4      4      #   \         d    \        RT: 24      hi ; i)zZGiven WHEEL metadata, return the parsed Wheel-Version.
Otherwise, raise UnsupportedWheel.
zWheel-VersionzWHEEL is missing Wheel-VersionÚ.zinvalid Wheel-Version: )r   Ústripr   Úmapr?   r"   Ú
ValueError)r>   Úversion_textr   s   &  r   r   r   _   ss   € ð ˜oÕ.€LØÒÜÐ?Ó@Ð@à× Ñ Ó"€GðFÜ”Sœ˜gŸm™m¨CÓ0Ó1Ó2Ð2øÜô FÜÐ!8¸¹ÐDÓEÐEðFús   ª'A ÁA-c                óN   € V ^8„  d   QhR\         \        R3,          R\        RR/# )r	   r   .r   r   N)r   r?   r   )r   s   "r   r   r   o   s)   € ÷ 
ñ 
¤¤s¨C x¥ð 
¼ð 
Àñ 
r   c                ó(  € V ^ ,          \         ^ ,          8”  d9   \        RP                  VRP                  \	        \
        V 4      4      4      4      hV \         8”  d6   \        P                  RRP                  \	        \
        V 4      4      4       R# R# )aÉ  Raises errors or warns if called with an incompatible Wheel-Version.

pip should refuse to install a Wheel-Version that's a major series
ahead of what it's compatible with (e.g 2.0 > 1.1); and warn when
installing a version only minor version ahead (e.g 1.2 > 1.1).

version: a 2-tuple representing a Wheel-Version (Major, Minor)
name: name of wheel or package to raise exception about

:raises UnsupportedWheel: when an incompatible Wheel-Version is given
zB{}'s Wheel-Version ({}) is not compatible with this version of piprA   z*Installing from a newer Wheel-Version (%s)N)ÚVERSION_COMPATIBLEr   r   r%   rC   r   ÚloggerÚwarning)r   r   s   &&r   r   r   o   sv   € ð ˆq…zÔ& qÕ)Ô)Üðß‘V˜D #§(¡(¬3¬s°GÓ+<Ó"=Ó>ó
ð 	
ð 
Ô%Ô	%Ü�‰Ø8Ø�H‰H”Sœ˜gÓ&Ó'ö	
ñ 
&r   )é   é    )Ú__doc__ÚloggingÚemail.messager   Úemail.parserr   Úzipfiler   r   Úpip._vendor.packaging.utilsr   Úpip._internal.exceptionsr   rH   Ú	getLoggerÚ__name__rI   r   r   r4   r   r   r   © r   r   Ú<module>rW      sR   ðÙ 5ã Ý !Ý ß 'å 9å 5àÐ ð 
×	Ò	˜8Ó	$€õõ$õ>Gõ)õ&F÷ 
r   