
    9fl                        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  S SKJr  S SKJrJrJrJr  S S	KJrJr  S S
KJr  S SKJrJr  SSS.S\S\S\S\S\S\S\S\4S jjrSS.S\S\S\S\S\S\\   S\S\4S jjrg)    N)Path)ListSequence)canonicalize_name)
inject_dep)install)	uninstall)EXIT_CODE_OK"EXIT_CODE_REINSTALL_INVALID_PYTHON$EXIT_CODE_REINSTALL_VENV_NONEXISTENTExitCode)errorsleep)	PipxError)VenvVenvContainerF)force_reinstall_shared_libspython_flag_passedvenv_dirlocal_bin_dirlocal_man_dirpythonverboser   r   returnc                    U R                  5       (       d%  [        SU R                   S[         35        [        $  [        U5      R                  U 5        [        [         S3S5        [        $ ! [         a     Of = f[        XS9nUR                  UR                  R                  R                  XES9  UR                  R                  R                  b!  UR                  R                  R                  nOUR                   n[#        XX$5        U R%                  ['        U R                  5      5      n [)        U UR                   /U/UUUUR                  R                  R                  UR                  R*                  USSUR                  R                  R,                  / UR                  R                  R.                  US9  UR                  R0                  R3                  5        He  u  pU
R                  c  [5        S	U
 S
UR                   35      e[7        U U	U
R                  U
R                  UU
R8                  U
R,                  SS9  Mg     [:        $ )Returns pipx exit code.zNothing to reinstall for  z/ Error, the python executable would be deleted!zPChange it using the --python option or PIPX_DEFAULT_PYTHON environment variable.)r   )pip_argsr   force_upgradeT)force	reinstallinclude_dependenciespreinstall_packagessuffixr   z!Internal Error injecting package z into )r   include_appsr"   r    )existsprintnamer   r   r   relative_tor   r   
ValueErrorr   check_upgrade_shared_libspipx_metadatamain_packager   package_or_urlmain_package_namer	   	with_namer   r   	venv_argsr"   r$   injected_packagesitemsr   r   r%   r
   )r   r   r   r   r   r   r   venvr.   injected_nameinjected_packages              9/usr/lib/python3/dist-packages/pipx/commands/reinstall.pyr!   r!      s0    ??)(--%AB33	2V  * 	gDE^	
 21   *D""##00997 #  &&55A++88GG//h}> !!"3HMM"BCH 			 	''00$$!//<<QQ!!..55-& ,0+=+=+O+O+U+U+W'**2 ?@P?QQWX\XaXaWbcdd++%%)66!1!F!F		
 ,X" s   A/ /
A<;A<)r   venv_containerskipc                   / n/ nSn	U R                  5        HB  n
U
R                  U;   a  M   [        U
UUUUU	US9  Sn	UR                  U
R                  5        MD     [        U5      S:X  a  [        S[         35        [        U5      S:  a  [	        SS	R                  U5       35      e[        $ ! [         a>  n[        U[        R                  S9  UR                  U
R                  5         SnAM  SnAff = f)
r   T)r   r   r   r   r   r   r   F)fileNr   z;No packages reinstalled after running 'pipx reinstall-all' z.The following package(s) failed to reinstall: z, )iter_venv_dirsr(   r!   appendr   r'   sysstderrlenr   joinr
   )r8   r   r   r   r   r9   r   failedreinstalledfirst_reinstallr   es               r7   reinstall_allrF   f   s     FK
 O"113==D 	.!++,;#5 $Ox}}-% 4& ;1KE7ST
6{QHSYIZH[\]]  	)!#**%MM(--((	)s   B00
C8:3C33C8)r>   pathlibr   typingr   r   packaging.utilsr   pipx.commands.injectr   pipx.commands.installr   pipx.commands.uninstallr	   pipx.constantsr
   r   r   r   pipx.emojisr   r   	pipx.utilr   	pipx.venvr   r   strboolr!   rF        r7   <module>rU      s    
  ! - + ) -  %  ) ).$NN N 	N
 N N "&N N Nr  %*!** * 	*
 * 3-* * *rT   