U
    cUh                     @   s   d Z ddlZddlZddlZddlmZmZm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eddd
Zeee dddZee eeee f dddZdS )z=A single place for constructing and exposing the main parser
    N)ListOptionalTuple)get_runnable_pip)
cmdoptions)ConfigOptionParserUpdatingDefaultsHelpFormatter)commands_dictget_similar_commands)CommandError)get_pip_versionget_progcreate_main_parserparse_command)returnc                  C   sl   t ddt dt d} |   t | _ttj| }| 	| d| _
dgdd t D  }d	|| _| S )
z1Creates and returns the main parser for pip's CLIz
%prog <command> [options]Fglobal)usageadd_help_option	formatternameprogT c                 S   s"   g | ]\}}|d d|j  qS )Z27 )Zsummary).0r   Zcommand_info r   ]/opt/bot/vods_filmes/script/venv/lib/python3.8/site-packages/pip/_internal/cli/main_parser.py
<listcomp>)   s   z&create_main_parser.<locals>.<listcomp>
)r   r   r   disable_interspersed_argsr   versionr   Zmake_option_groupZgeneral_groupadd_option_groupmainr	   itemsjoindescription)parserZgen_optsr$   r   r   r   r      s"    

)pythonr   c                 C   sN   t j| rJt j| rFdD ]&}t j| |}t j|r|  S qn| S d S )N)z
bin/pythonzScripts/python.exe)ospathexistsisdirr#   )r&   Zexepyr   r   r   identify_python_interpreter2   s    r,   )argsr   c              
   C   s  t  }|| \}}|jrdtjkrt|j}|d krFtd|j |t g}||  dtjd< d}zt	
|}|j}W n< t	jtfk
r } ztd| d| W 5 d }~X Y nX t| |jrtj|j tjtj t  |r|d dkr t|dkr |  t  |d }	|	tkrnt|	}
d	|	 d
g}|
r`|d|
 d
 td|| d d  }||	 |	|fS )NZ_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'   environr,   r   r   extend
subprocessrun
returncodeZSubprocessErrorOSErrorsysexitr   stdoutwritelineseplen
print_helpr	   r
   appendr#   remove)r-   r%   Zgeneral_optionsZ	args_elseZinterpreterZpip_cmdr7   procexccmd_nameZguessmsgcmd_argsr   r   r   r   E   sJ    	





&
"

)__doc__r'   r5   r9   typingr   r   r   Zpip._internal.build_envr   Zpip._internal.clir   Zpip._internal.cli.parserr   r   pip._internal.commandsr	   r
   pip._internal.exceptionsr   Zpip._internal.utils.miscr   r   __all__r   strr,   r   r   r   r   r   <module>   s   