§
    
Á³gž  ã                   ó´   — d dl Z d dlZd dlmZ d dlmZmZ d dlmc m	c m
Z
 d dlmZ d dlmZmZ d dlmZmZ d dlmZ  ee¦  «        Z G d„ d	e¦  «        ZdS )
é    N)ÚValues)ÚAnyÚList)ÚCommand)ÚERRORÚSUCCESS)ÚCommandErrorÚPipError)Ú	getLoggerc                   ój  — e Zd ZdZdZdZdd„Zdedee	         de
fd	„Zdedee         ddfd
„Zdedee         ddfd„Zdedee         ddfd„Zdee	         ddfd„Zdee	         ddfd„Zdedee         ddfd„Zdedee         ddfd„Zdede	de	fd„Zdedee	         fd„Zdede	dee	         fd„ZdS )ÚCacheCommandaw  
    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                 ó†   — | j                              dddddd¬¦  «         | j                             d| j         ¦  «         d S )	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    úZ/var/www/html/mpstechhub/venv/lib/python3.11/site-packages/pip/_internal/commands/cache.pyÚadd_optionszCacheCommand.add_options'   sU   € àŒ× Ò ØØØØØ(ØMð 	!ñ 	
ô 	
ð 	
ð 	Œ×'Ò'¨¨4¬=Ñ9Ô9Ð9Ð9Ð9ó    ÚoptionsÚargsc                 ó  — | j         | j        | j        | j        | j        dœ}|j        s!t                               d¦  «         t          S |r
|d         |vrBt                               dd 	                    t          |¦  «        ¦  «        ¦  «         t          S |d         }	  ||         ||dd …         ¦  «         nC# t          $ r6}t                               |j        d         ¦  «         t          cY d }~S d }~ww xY wt          S )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   ÚrunzCacheCommand.run4   s  € àÔ%ØÔ'ØÔ)ØÔ-ØÔ%ð
ð 
ˆð Ô ð 	Ý�LŠLÐWÑXÔXÐXÝˆLð ð 	�t˜A”w hÐ.Ð.Ý�LŠLØ1Ø—	’	�& Ñ*Ô*Ñ+Ô+ñô ð õ ˆLà�a”ˆð	ØˆH�VÔ˜W d¨1¨2¨2¤hÑ/Ô/Ð/Ð/øÝð 	ð 	ð 	Ý�LŠL˜œ œÑ#Ô#Ð#ÝˆLˆLˆLˆLˆLˆLøøøøð	øøøõ ˆs   Â!B< Â<
C<Ã+C7Ã1C<Ã7C<c                 óf   — |rt          d¦  «        ‚t                               |j        ¦  «         d S )NúToo many arguments)r	   r0   r%   r/   ©r   r!   r"   s      r   r*   zCacheCommand.get_cache_dirT   s4   € Øð 	5ÝÐ3Ñ4Ô4Ð4å�Š�GÔ%Ñ&Ô&Ð&Ð&Ð&r    c                 ó  — |rt          d¦  «        ‚t          |                      |¦  «        ¦  «        }t          |                      |d¦  «        ¦  «        }|                      |d¦  «        }|                      |d¦  «        }t          j        |¦  «        }t          j        |¦  «        }t          j        d¦  «         	                    ||||||¬¦  «         
                    ¦   «         }	t                               |	¦  «         d S )Nr8   Ú*ÚhttpÚwheelsa°  
                    Package index page cache location: {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Úhttp_cache_sizeÚnum_http_filesÚwheels_cache_locationÚpackage_countÚwheels_cache_size)r	   ÚlenÚ_find_http_filesÚ_find_wheelsÚ
_cache_dirÚ
filesystemÚformat_directory_sizeÚtextwrapÚdedentÚformatÚstripr0   r%   )
r   r!   r"   r@   Únum_packagesr>   rA   r?   rC   Úmessages
             r   r+   zCacheCommand.get_cache_infoZ   s  € Øð 	5ÝÐ3Ñ4Ô4Ð4å˜T×2Ò2°7Ñ;Ô;Ñ<Ô<ˆÝ˜4×,Ò,¨W°cÑ:Ô:Ñ;Ô;ˆà"Ÿošo¨g°vÑ>Ô>ÐØ $§¢°¸Ñ BÔ BÐÝ$Ô:Ð;NÑOÔOˆÝ&Ô<Ð=RÑSÔSÐõ ŒOðñ	ô 	÷ ŠVØ$7Ø /Ø-Ø&;Ø*Ø"3ð ñ ô ÷ ŠU‰WŒWð' 	õ, 	�Š�GÑÔÐÐÐr    c                 óþ   — t          |¦  «        dk    rt          d¦  «        ‚|r	|d         }nd}|                      ||¦  «        }|j        dk    r|                      |¦  «         d S |                      |¦  «         d S )Nr)   r8   r   r;   r   )rD   r	   rF   r   Úformat_for_humanÚformat_for_abspath)r   r!   r"   ÚpatternÚfiless        r   r,   zCacheCommand.list_cache_items~   s�   € Ýˆt‰9Œ9�qŠ=ˆ=ÝÐ3Ñ4Ô4Ð4àð 	Ø˜1”gˆGˆGàˆGà×!Ò! '¨7Ñ3Ô3ˆØÔ 'Ò)Ð)Ø×!Ò! %Ñ(Ô(Ð(Ð(Ð(à×#Ò# EÑ*Ô*Ð*Ð*Ð*r    rT   c                 ó–  — |st                                d¦  «         d S g }|D ]Q}t          j                             |¦  «        }t          j        |¦  «        }|                     d|› d|› d�¦  «         ŒRt                                d¦  «         t                                d                     t          |¦  «        ¦  «        ¦  «         d S )NzNo locally built wheels cached.z - z (ú)zCache contents:
ú
)
r0   r%   ÚosÚpathÚbasenamerH   Úformat_file_sizeÚappendr2   r3   )r   rT   ÚresultsÚfilenameÚwheelÚsizes         r   rQ   zCacheCommand.format_for_human�   sÁ   € Øð 	Ý�KŠKÐ9Ñ:Ô:Ð:ØˆFàˆØð 	3ð 	3ˆHÝ”G×$Ò$ XÑ.Ô.ˆEÝÔ.¨xÑ8Ô8ˆDØ�NŠNÐ1 Ð1Ð1¨$Ð1Ð1Ð1Ñ2Ô2Ð2Ð2Ý�ŠÐ'Ñ(Ô(Ð(Ý�Š�D—I’I�f W™oœoÑ.Ô.Ñ/Ô/Ð/Ð/Ð/r    c                 óº   — |sd S g }|D ]}|                      |¦  «         Œt                               d                     t	          |¦  «        ¦  «        ¦  «         d S )NrW   )r\   r0   r%   r2   r3   )r   rT   r]   r^   s       r   rR   zCacheCommand.format_for_abspathš   sb   € Øð 	ØˆFàˆØð 	%ð 	%ˆHØ�NŠN˜8Ñ$Ô$Ð$Ð$å�Š�D—I’I�f W™oœoÑ.Ô.Ñ/Ô/Ð/Ð/Ð/r    c                 ó  — t          |¦  «        dk    rt          d¦  «        ‚|st          d¦  «        ‚|                      ||d         ¦  «        }d}|d         dk    r||                      |¦  «        z  }n|d                     |d         ¦  «        z  }|st
                               |¦  «         |D ]1}t          j        |¦  «         t
           	                    d|¦  «         Œ2t
           
                    d	t          |¦  «        ¦  «         d S )
Nr)   r8   zPlease provide a patternr   zNo matching packagesr;   z for pattern "{}"z
Removed %szFiles removed: %s)rD   r	   rF   rE   rL   r0   ÚwarningrX   ÚunlinkÚverboser%   )r   r!   r"   rT   Úno_matching_msgr^   s         r   r-   zCacheCommand.remove_cache_items¤   s  € Ýˆt‰9Œ9�qŠ=ˆ=ÝÐ3Ñ4Ô4Ð4àð 	;ÝÐ9Ñ:Ô:Ð:à×!Ò! '¨4°¬7Ñ3Ô3ˆà0ˆØ�Œ7�cŠ>ˆ>à�T×*Ò*¨7Ñ3Ô3Ñ3ˆEˆEð Ð2×9Ò9¸$¸q¼'ÑBÔBÑBˆOàð 	,Ý�NŠN˜?Ñ+Ô+Ð+àð 	3ð 	3ˆHÝŒI�hÑÔÐÝ�NŠN˜<¨Ñ2Ô2Ð2Ð2Ý�ŠÐ'­¨U©¬Ñ4Ô4Ð4Ð4Ð4r    c                 óR   — |rt          d¦  «        ‚|                      |dg¦  «        S )Nr8   r;   )r	   r-   r9   s      r   r.   zCacheCommand.purge_cache½   s1   € Øð 	5ÝÐ3Ñ4Ô4Ð4à×&Ò& w°°Ñ6Ô6Ð6r    Úsubdirc                 óL   — t           j                             |j        |¦  «        S )N)rX   rY   r2   r/   )r   r!   rh   s      r   rG   zCacheCommand._cache_dirÃ   s   € ÝŒw�|Š|˜GÔ-¨vÑ6Ô6Ð6r    c                 óX   — |                       |d¦  «        }t          j        |d¦  «        S )Nr<   r;   ©rG   rH   Ú
find_files)r   r!   Úhttp_dirs      r   rE   zCacheCommand._find_http_filesÆ   s(   € Ø—?’? 7¨FÑ3Ô3ˆÝÔ$ X¨sÑ3Ô3Ð3r    rS   c                 ón   — |                       |d¦  «        }|d|v rdndz   }t          j        ||¦  «        S )Nr=   ú-z*.whlz-*.whlrk   )r   r!   rS   Ú	wheel_dirs       r   rF   zCacheCommand._find_wheelsÊ   s@   € Ø—O’O G¨XÑ6Ô6ˆ	ð$ ¨¨w¨¨˜W˜W¸HÑEˆåÔ$ Y°Ñ8Ô8Ð8r    )r   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Úignore_require_venvÚusager   r   r   ÚstrÚintr6   r   r*   r+   r,   rQ   rR   r-   r.   rG   rE   rF   © r    r   r   r      s  € € € € € ðð ð Ðð€Eð:ð :ð :ð :ð˜6ð ¨¨c¬ð °sð ð ð ð ð@' Vð '°4¸´9ð 'Àð 'ð 'ð 'ð 'ð" fð "°D¸´Ið "À$ð "ð "ð "ð "ðH+¨ð +°d¸3´ið +ÀDð +ð +ð +ð +ð0 d¨3¤ið 0°Dð 0ð 0ð 0ð 0ð0¨¨S¬	ð 0°dð 0ð 0ð 0ð 0ð5¨&ð 5¸¸S¼	ð 5Àdð 5ð 5ð 5ð 5ð27 6ð 7°°c´ð 7¸tð 7ð 7ð 7ð 7ð7 &ð 7°#ð 7¸#ð 7ð 7ð 7ð 7ð4¨ð 4°4¸´9ð 4ð 4ð 4ð 4ð9 Fð 9°Sð 9¸TÀ#¼Yð 9ð 9ð 9ð 9ð 9ð 9r    r   )rX   rJ   Úoptparser   Útypingr   r   Úpip._internal.utils.filesystemÚ	_internalÚutilsrH   Úpip._internal.cli.base_commandr   Úpip._internal.cli.status_codesr   r   Úpip._internal.exceptionsr	   r
   Úpip._internal.utils.loggingr   rq   r0   r   ry   r    r   ú<module>rƒ      s  ðØ 	€	€	€	Ø €€€Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ð Ð à 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ð 3Ø 2Ð 2Ð 2Ð 2Ð 2Ð 2Ø 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ð 9Ø ;Ð ;Ð ;Ð ;Ð ;Ð ;Ð ;Ð ;Ø 1Ð 1Ð 1Ð 1Ð 1Ð 1à	ˆ�8Ñ	Ô	€ðP9ð P9ð P9ð P9ð P9�7ñ P9ô P9ð P9ð P9ð P9r    