ó
    9—Íf  ã                   ó6  • 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
  S SKJrJr  S SKJrJrJrJr  S SKJr  S S	KJrJr  S S
KJr  \ R4                  " \5      rS\S\S\S\S\\   4
S jrSS.S\S\S\S\S\S\4S jjr S\S\\   S\S\S\S\S\4S jr!g)é    N)ÚPath)ÚListÚSet)Úcanonicalize_name)Úbold)Ú_get_package_bin_dir_app_pathsÚ_get_package_man_paths)ÚEXIT_CODE_OKÚEXIT_CODE_UNINJECT_ERRORÚMAN_SECTIONSÚExitCode)Ústars)Ú	PipxErrorÚ	pipx_wrap)ÚVenvÚpackage_nameÚvenvÚlocal_bin_dirÚlocal_man_dirÚreturnc           	      óL  • [        XR                  U    UR                  U5      n[        5       n[         H0  nU[        UUR                  U    UR                  U-  X6-  5      -  nM2     [        5       nU H=  nUR                  UR                  U    R                  ;   d  M,  UR                  U5        M?     U Hh  n	[        U	R                  R                  5      U	R                  -  n
[        U
5      UR                  U    R                  ;   d  MW  UR                  U
5        Mj     U$ )N)r   Úpackage_metadataÚbin_pathÚsetr   r	   Úman_pathÚnameÚappsÚaddr   ÚparentÚstrÚ	man_pages)r   r   r   r   Úbin_dir_app_pathsÚ	man_pathsÚman_sectionÚneed_to_removeÚbin_dir_app_pathr   Úpaths              Ú8/usr/lib/python3/dist-packages/pipx/commands/uninject.pyÚget_include_resource_pathsr)      s	  € Ü6Ø×#Ñ# LÑ1°4·=±=À-óÐô “€Iß#ˆØÔ+ØØ×!Ñ! ,Ñ/Ø�M‰M˜KÑ'ØÑ'ó	
ñ 	
Š	ñ $ô “U€NÛ-ÐØ× Ñ  D×$9Ñ$9¸,Ñ$G×$LÑ$LÕLØ×ÑÐ/Ö0ñ .ó ˆÜ�H—O‘O×(Ñ(Ó)¨H¯M©MÑ9ˆÜˆt‹9˜×-Ñ-¨lÑ;×EÑEÕEØ×Ñ˜tÖ$ñ ð
 Ðó    F)Ú
leave_depsr+   c                óš  • [        U5      nXR                  R                  R                  :X  aP  [        R                  [        SU SU R                  R                   SU R                  R                   S3SS95        gXR                  R                  ;  a0  [        R                  U SU R                  R                   S	35        gU R                  U   R                  n[        XX#5      nU(       d'  U R                  S
S9n[        R                  SU 35        U R                  US
S9  U(       dp  U R                  S
S9n[        R                  SU 35        UW-
  n	[!        U	5      S:X  a  O[        R                  SU	 35        U	 H  n
U R                  U
SS9  M     SnOSnU(       a8  U H2  n ["        R$                  " U5        [        R                  SU 35        M4     [)        S[+        U5       U S[+        U R                  R                  5       S[,         35        g
! [&         a    [        R                  SU 35         Mœ  f = f)Nz
            z is the main package of z'
            venv. Use `pipx uninstall z0` to uninstall instead of uninject.
            z    )Úsubsequent_indentFz is not in the z venv. Skipping.T)Únot_requiredz Original not required packages: )ÚpackageÚwas_injectedzNew not required packages: r   z%Dependencies of uninstalled package: z and its dependenciesÚ zremoved file z"tried to remove but couldn't find zUninjected package z from venv Ú )r   Úpipx_metadataÚmain_packager/   ÚloggerÚwarningr   Úrootr   Úinjected_packagesr   Úinclude_appsr)   Úlist_installed_packagesÚinfoÚuninstall_packageÚlenÚosÚunlinkÚFileNotFoundErrorÚprintr   r   )r   r   r   r   r+   Úneed_app_uninstallÚnew_resource_pathsÚorig_not_required_packagesÚnew_not_required_packagesÚdeps_of_uninstalledÚdep_package_nameÚdeps_stringr'   s                r(   Úuninject_deprI   3   s=  € ô % \Ó2€Là×)Ñ)×6Ñ6×>Ñ>Ó>Ü�‰ÜðØˆNÐ2°4·9±9·>±>Ð2Bð C'Ø'+§y¡y§~¡~Ð&6ð 7ðð #*ñô	
ð à×-Ñ-×?Ñ?Ó?Ü�‰˜,˜ °t·y±y·~±~Ð6FÐFVÐWÔXØà×.Ñ.¨|Ñ<×IÑIÐä3°LÈÓeÐæØ%)×%AÑ%AÈtÐ%AÐ%TÐ"Ü�‰Ð6Ð7QÐ6RÐSÔTà×Ñ <¸dÐÑCæØ$(×$@Ñ$@ÈdÐ$@Ð$SÐ!Ü�‰Ð1Ð2KÐ1LÐMÔNà7Ð:TÑTÐÜÐ"Ó# qÓ(Øä�K‰KÐ?Ð@SÐ?TÐUÔVã 3ÐØ×"Ñ"Ð+;È%Ð"ÓPñ !4ð .‰àˆæÛ&ˆDð4Ü—	’	˜$”ô —‘˜m¨D¨6Ð2Ö3ñ 'ô 
Ð¤ \Ó 2Ð3°K°=ÀÌDÐQU×QZÑQZ×Q_ÑQ_ÓL`ÐKaÐabÔchÐbiÐ
jÔkØøô %ó IÜ—‘Ð@ÀÀÐG×HðIús   Æ1H$È$"I
É	I
Úvenv_dirÚdependenciesÚverbosec          
      ó–  • U R                  5       (       a  [        U R                  5       5      (       d  [        SU R                   S35      e[        XS9nUR                  (       d6  [        SU R                  < SU R                  < SU R                  < S35      eSnU H  nU[        UUUUUS	9-  nM     U(       a  [        $ [        $ )
zReturns pipx exit codezVirtual environment z does not exist.)rL   z5
            Can't uninject from Virtual Environment z.
            z˜ has missing internal pipx metadata.
            It was likely installed using a pipx version before 0.15.0.0.
            Please uninstall and install z manually to fix.
            T)r   r   r+   )
ÚexistsÚnextÚiterdirr   r   r   r   rI   r
   r   )	rJ   rK   r   r   r+   rL   r   Úall_successÚdeps	            r(   ÚuninjectrS   u   sØ   € ð �?‰?×Ñ¤D¨×)9Ñ)9Ó);×$<Ñ$<ÜÐ.¨x¯}©}¨oÐ=MÐNÓOÐOä�Ñ*€Dà× × Üð5Ø5=·]±]Ñ4Eð FØ�]‰]Ñð *à*2¯-©-Ñ):ð ;ð	ó
ð 	
ð €KÛˆØ”|ØØØ'Ø'Ø!ñ
ñ 	
Šñ ö ÜÐä'Ð'r*   )"Úloggingr>   Úpathlibr   Útypingr   r   Úpackaging.utilsr   Úpipx.colorsr   Úpipx.commands.uninstallr   r	   Úpipx.constantsr
   r   r   r   Úpipx.emojisr   Ú	pipx.utilr   r   Ú	pipx.venvr   Ú	getLoggerÚ__name__r5   r    r)   ÚboolrI   rS   © r*   r(   Ú<module>rb      sÿ   ðÛ Û 	Ý ß å -å ÷÷ó õ ß *Ý à	×	Ò	˜8Ó	$€ð¨Sð ¸ð ÈTð Ðbfð ÐknÐosÑktô ð> ò?Ø
ð?àð?ð ð	?ð
 ð?ð ð?ð 
õ?ðD'(Øð'(à�s‘)ð'(ð ð	'(ð
 ð'(ð ð'(ð ð'(ð õ'(r*   