
    dh                        d Z ddlmZ ddlZddlZddlZddl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 dd	lmZmZ d
dgZddZddZddZy)z<A single place for constructing and exposing the main parser    )annotationsN)get_runnable_pip)
cmdoptions)ConfigOptionParserUpdatingDefaultsHelpFormatter)commands_dictget_similar_commands)CommandError)get_pip_versionget_progcreate_main_parserparse_commandc                    t        ddt               dt                     } | j                          t	               | _        t        j                  t        j                  |       }| j                  |       d| _
        dgt        j                         D cg c]  \  }}|dd|j                    c}}z   }d	j                  |      | _        | S c c}}w )
z1Creates and returns the main parser for pip's CLIz
%prog <command> [options]Fglobal)usageadd_help_option	formatternameprogT 27 
)r   r   r   disable_interspersed_argsr   versionr   make_option_groupgeneral_groupadd_option_groupmainr   itemssummaryjoindescription)parsergen_optsr   command_infor#   s        _/var/www/html/vivango/api/ia/venv/lib/python3.12/site-packages/pip/_internal/cli/main_parser.pyr   r      s      +/1ZF $$&$&FN ++J,D,DfMH
H% FK $"/"5"5"7D, )1\))*+ K ;/FMs   Cc                   t         j                  j                  |       rlt         j                  j                  |       rKdD ]E  }t         j                  j	                  | |      }t         j                  j                  |      sC|c S  y | S y )N)z
bin/pythonzScripts/python.exe)ospathexistsisdirr"   )pythonexepys      r'   identify_python_interpreterr0   2   so     
ww~~f77==  < WW\\&#.77>>"%I  M     c                F   t               }|j                  |       \  }}|j                  rdt        j                  vrt        |j                        }|t        d|j                         |t               g}|j                  |        dt        j                  d<   d}	 t        j                  |      }|j                  }t        j                  |       |j                   rjt        j"                  j%                  |j                          t        j"                  j%                  t        j&                         t        j                          |r|d   dk(  r2t)        |      dk(  r$|j+                          t        j                          |d   }	|	t,        vrCt/        |	      }
d	|	 d
g}|
r|j1                  d|
 d
       t        dj3                  |            | d d  }|j5                  |	       |	|fS # t        j                  t        f$ r}t        d| d|       d }~ww xY w)N_PIP_RUNNING_IN_SUBPROCESSz$Could not locate Python interpreter 1r   zFailed to run pip under z: help   zunknown command ""zmaybe you meant "z - )r   
parse_argsr-   r)   environr0   r
   r   extend
subprocessrun
returncodeSubprocessErrorOSErrorsysexitr   stdoutwritelineseplen
print_helpr   r	   appendr"   remove)argsr$   general_options	args_elseinterpreterpip_cmdr=   procexccmd_nameguessmsgcmd_argss                r'   r   r   E   s   !F "(!2!24!8OY ">bjj"P1/2H2HI67M7M6NO 
 
 	t 47

/0
	P>>'*DJ 	 

(

$
 1/C	Na4G
 |H}$$X."8*A./JJ*5'345::c?++ AwHOOHX? **G4 	P!9+bNOO	Ps   !G1 1H 
HH )returnr   )r-   strrT   z
str | None)rI   z	list[str]rT   ztuple[str, list[str]])__doc__
__future__r   r)   r;   r@   pip._internal.build_envr   pip._internal.clir   pip._internal.cli.parserr   r   pip._internal.commandsr   r	   pip._internal.exceptionsr
   pip._internal.utils.miscr   r   __all__r   r0   r    r1   r'   <module>r`      s@    B " 	  
 4 ( V F 1 >
1>&Ar1   