ó
    Þ j  ã                   óš   • S SK r S SKrS SKJr  S SKJrJr  S SKJr  S SK	J
r
Jr  S SKJrJr  S SKJr  S SKJr  \" \5      r " S	 S
\5      rg)é    N)ÚValues)ÚAnyÚList)ÚCommand)ÚERRORÚSUCCESS)ÚCommandErrorÚPipError)Ú
filesystem)Ú	getLoggerc                   óL  • \ rS rSrSrSrSrSS jrS\S	\	\
   S\4S
 jrS\S	\	\   SS4S jrS\S	\	\   SS4S jrS\S	\	\   SS4S jrS\	\
   SS4S jrS\	\
   SS4S jrS\S	\	\   SS4S jrS\S	\	\   SS4S jrS\S\
S\
4S jrS\S\	\
   4S jrS\S\
S\	\
   4S jrSrg)ÚCacheCommandé   aS  
Inspect and manage pip's wheel cache.

Subcommands:

- dir: Show the cache directory.
- info: Show information about the cache.
- list: List filenames of packages stored in the cache.
- remove: Remove one or more package from the cache.
- purge: Remove all items from the cache.

``<pattern>`` can be a glob expression or a package name.
Tz˜
        %prog dir
        %prog info
        %prog list [<pattern>] [--format=[human, abspath]]
        %prog remove <pattern>
        %prog purge
    ÚreturnNc           	      óŒ   • U R                   R                  SSSSSSS9  U R                  R                  SU R                   5        g )	Nz--formatÚstoreÚlist_formatÚhuman)r   Úabspathz:Select the output format among: human (default) or abspath)ÚactionÚdestÚdefaultÚchoicesÚhelpr   )Úcmd_optsÚ
add_optionÚparserÚinsert_option_group)Úselfs    ÚV/var/www/html/gaurav/venv/lib/python3.13/site-packages/pip/_internal/commands/cache.pyÚadd_optionsÚCacheCommand.add_options'   sE   € Ø�‰× Ñ ØØØØØ(ØMð 	!ñ 	
ð 	�‰×'Ñ'¨¨4¯=©=Õ9ó    ÚoptionsÚargsc                 ó  • U R                   U R                  U R                  U R                  U R                  S.nUR
                  (       d  [        R                  S5        [        $ U(       a	  US   U;  a4  [        R                  SSR                  [        U5      5      5        [        $ US   n X4   " XSS  5        [        $ ! [         a2  n[        R                  UR                  S   5        [        s S nA$ S nAff = f)N)ÚdirÚinfoÚlistÚremoveÚpurgez<pip cache commands can not function since cache is disabled.r   zNeed an action (%s) to perform.z, é   )Úget_cache_dirÚget_cache_infoÚlist_cache_itemsÚremove_cache_itemsÚpurge_cacheÚ	cache_dirÚloggerÚerrorr   ÚjoinÚsortedr
   r%   r   )r   r$   r%   Úhandlersr   Úes         r    ÚrunÚCacheCommand.run3   sÛ   € à×%Ñ%Ø×'Ñ'Ø×)Ñ)Ø×-Ñ-Ø×%Ñ%ñ
ˆð × × Ü�L‰LÐWÔXÜˆLö �t˜A‘w hÓ.Ü�L‰LØ1Ø—	‘	œ& Ó*Ó+ôô ˆLà�a‘ˆð	ØÒ˜W¨1¨2 hÔ/ô
 ˆøô	 ó 	Ü�L‰L˜Ÿ™ ™Ô#Ü�Lûð	ús   Â1C Ã
D Ã'C;Ã5D Ã;D c                 óf   • U(       a  [        S5      e[        R                  UR                  5        g )NúToo many arguments)r	   r3   r(   r2   ©r   r$   r%   s      r    r-   ÚCacheCommand.get_cache_dirS   s#   € ÞÜÐ3Ó4Ð4ä�‰�G×%Ñ%Õ&r#   c           
      óD  • U(       a  [        S5      e[        U R                  U5      5      n[        U R                  US5      5      nU R	                  US5      nU R	                  US5      nU R	                  US5      n[
        R                  " [
        R                  " U5      [
        R                  " U5      -   5      n[
        R                  " U5      n	[        R                  " S5      R                  UUUUUUU	S9R                  5       n
[        R                  U
5        g )Nr<   Ú*úhttp-v2ÚhttpÚwheelsa  
                    Package index page cache location (pip v23.3+): {http_cache_location}
                    Package index page cache location (older pips): {old_http_cache_location}
                    Package index page cache size: {http_cache_size}
                    Number of HTTP files: {num_http_files}
                    Locally built wheels location: {wheels_cache_location}
                    Locally built wheels size: {wheels_cache_size}
                    Number of locally built wheels: {package_count}
                )Úhttp_cache_locationÚold_http_cache_locationÚhttp_cache_sizeÚnum_http_filesÚwheels_cache_locationÚpackage_countÚwheels_cache_size)r	   ÚlenÚ_find_http_filesÚ_find_wheelsÚ
_cache_dirr   Úformat_sizeÚdirectory_sizeÚformat_directory_sizeÚtextwrapÚdedentÚformatÚstripr3   r(   )r   r$   r%   rG   Únum_packagesrD   rE   rH   rF   rJ   Úmessages              r    r.   ÚCacheCommand.get_cache_infoY   s  € ÞÜÐ3Ó4Ð4ä˜T×2Ñ2°7Ó;Ó<ˆÜ˜4×,Ñ,¨W°cÓ:Ó;ˆà"Ÿo™o¨g°yÓAÐØ"&§/¡/°'¸6Ó"BÐØ $§¡°¸Ó BÐÜ$×0Ò0Ü×%Ò%Ð&9Ó:Ü×'Ò'Ð(?Ó@ñAó
ˆô '×<Ò<Ð=RÓSÐô �OŠOðó
÷ ‰VØ$7Ø(?Ø /Ø-Ø&;Ø*Ø"3ð ð ÷ ‰U‹Wð+ 	ô0 	�‰�GÕr#   c                 óÞ   • [        U5      S:”  a  [        S5      eU(       a  US   nOSnU R                  X5      nUR                  S:X  a  U R	                  U5        g U R                  U5        g )Nr,   r<   r   r@   r   )rK   r	   rM   r   Úformat_for_humanÚformat_for_abspath)r   r$   r%   ÚpatternÚfiless        r    r/   ÚCacheCommand.list_cache_itemsƒ   sd   € Üˆt‹9�q‹=ÜÐ3Ó4Ð4æØ˜1‘g‰GàˆGà×!Ñ! 'Ó3ˆØ×Ñ 'Ó)Ø×!Ñ! %Õ(à×#Ñ# EÕ*r#   r]   c                 ór  • U(       d  [         R                  S5        g / nU HP  n[        R                  R	                  U5      n[
        R                  " U5      nUR                  SU SU S35        MR     [         R                  S5        [         R                  SR                  [        U5      5      5        g )NzNo locally built wheels cached.z - z (Ú)zCache contents:
Ú
)
r3   r(   ÚosÚpathÚbasenamer   Úformat_file_sizeÚappendr5   r6   )r   r]   ÚresultsÚfilenameÚwheelÚsizes         r    rZ   ÚCacheCommand.format_for_human’   s‹   € ÞÜ�K‰KÐ9Ô:ØàˆÛˆHÜ—G‘G×$Ñ$ XÓ.ˆEÜ×.Ò.¨xÓ8ˆDØ�N‰N˜S   r¨$¨¨qÐ1Ö2ñ ô 	�‰Ð'Ô(Ü�‰�D—I‘Iœf W›oÓ.Õ/r#   c                 ón   • U(       a.  [         R                  SR                  [        U5      5      5        g g )Nra   )r3   r(   r5   r6   )r   r]   s     r    r[   ÚCacheCommand.format_for_abspathŸ   s#   € ÞÜ�K‰K˜Ÿ	™	¤&¨£-Ó0Õ1ð r#   c                 óº  • [        U5      S:”  a  [        S5      eU(       d  [        S5      eU R                  XS   5      nSnUS   S:X  a  X0R                  U5      -  nOUSUS    S3-  nU(       d  [        R                  U5        U H/  n[        R                  " U5        [        R                  S	U5        M1     [        R                  S
[        U5      5        g )Nr,   r<   zPlease provide a patternr   zNo matching packagesr@   z for pattern "Ú"z
Removed %szFiles removed: %s)
rK   r	   rM   rL   r3   Úwarningrb   ÚunlinkÚverboser(   )r   r$   r%   r]   Úno_matching_msgrh   s         r    r0   ÚCacheCommand.remove_cache_items£   sÀ   € Üˆt‹9�q‹=ÜÐ3Ó4Ð4æÜÐ9Ó:Ð:à×!Ñ! '°©7Ó3ˆà0ˆØ�‰7�c‹>à×*Ñ*¨7Ó3Ñ3‰Eð  °°Q±¨y¸Ð:Ñ:ˆOæÜ�N‰N˜?Ô+ãˆHÜ�IŠI�hÔÜ�N‰N˜<¨Ö2ñ ô 	�‰Ð'¬¨U«Õ4r#   c                 óL   • U(       a  [        S5      eU R                  US/5      $ )Nr<   r@   )r	   r0   r=   s      r    r1   ÚCacheCommand.purge_cache¼   s&   € ÞÜÐ3Ó4Ð4à×&Ñ& w°°Ó6Ð6r#   Úsubdirc                 óV   • [         R                  R                  UR                  U5      $ )N)rb   rc   r5   r2   )r   r$   rw   s      r    rN   ÚCacheCommand._cache_dirÂ   s   € Ü�w‰w�|‰|˜G×-Ñ-¨vÓ6Ð6r#   c                 ó¨   • U R                  US5      nU R                  US5      n[        R                  " US5      [        R                  " US5      -   $ )NrB   rA   r@   ©rN   r   Ú
find_files)r   r$   Úold_http_dirÚnew_http_dirs       r    rL   ÚCacheCommand._find_http_filesÅ   sN   € Ø—‘ w°Ó7ˆØ—‘ w°	Ó:ˆÜ×$Ò$ \°3Ó7¼*×:OÒ:OØ˜#ó;
ñ 
ð 	
r#   r\   c                 ól   • U R                  US5      nUSU;   a  SOS-   n[        R                  " X25      $ )NrC   Ú-z*.whlz-*.whlr{   )r   r$   r\   Ú	wheel_dirs       r    rM   ÚCacheCommand._find_wheelsÌ   s7   € Ø—O‘O G¨XÓ6ˆ	ð$ ¨¨w«™W¸HÑEˆä×$Ò$ YÓ8Ð8r#   © )r   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__Úignore_require_venvÚusager!   r   r   ÚstrÚintr9   r   r-   r.   r/   rZ   r[   r0   r1   rN   rL   rM   Ú__static_attributes__r„   r#   r    r   r      sN  † ñð Ðð€Eô
:ð˜6ð ¨¨c©ð °sô ð@' Vð '°4¸±9ð 'Àô 'ð( fð (°D¸±Ið (À$ô (ðT+¨ð +°d¸3±ið +ÀDô +ð0 d¨3¡ið 0°Dô 0ð2¨¨S©	ð 2°dô 2ð5¨&ð 5¸¸S¹	ð 5Àdô 5ð27 6ð 7°°c±ð 7¸tô 7ð7 &ð 7°#ð 7¸#ô 7ð
¨ð 
°4¸±9ô 
ð9 Fð 9°Sð 9¸TÀ#¹Y÷ 9r#   r   )rb   rR   Úoptparser   Útypingr   r   Úpip._internal.cli.base_commandr   Úpip._internal.cli.status_codesr   r   Úpip._internal.exceptionsr	   r
   Úpip._internal.utilsr   Úpip._internal.utils.loggingr   r…   r3   r   r„   r#   r    Ú<module>r–      s8   ðÛ 	Û Ý ß å 2ß 9ß ;Ý *Ý 1á	�8Ó	€ôR9�7õ R9r#   