File: //usr/local/lib/python3.10/dist-packages/virtualenv/run/__pycache__/__init__.cpython-310.pyc
o
3�hT � @ s� d dl mZ d dlZd dlZd dlmZ d dlmZ d dlm Z d dl
mZmZ d dl
mZ d dlmZ d d lmZ d
dlmZ d
dlmZ d
d
lmZ d
dlmZ d dd�Zd dd�Zd!dd�Zd"dd�Zdd� Zdd� Z dd� Z!dd� Z"ddgZ#dS )#� )�annotationsN)�partial)�
make_app_data)�VirtualEnvConfigParser)�LEVELS�setup_report)�Session)�manual_upgrade)�__version__� )�ActivationSelector)�CreatorSelector)�get_discover)�SeederSelectorTc C sR |du rt jn|}t| |||�}|�
|�� W d � |S 1 s"w Y |S )a�
Create a virtual environment given some command line interface arguments.
:param args: the command line arguments
:param options: passing in a ``VirtualEnvOptions`` object allows return of the parsed options
:param setup_logging: ``True`` if setup logging handlers, ``False`` to use handlers already registered
:param env: environment variables to use
:return: the session object of the creation (its structure for now is experimental and might change on short notice)
N)�os�environ�session_via_cli�run)�args�options�
setup_logging�env�
of_session� r �B/usr/local/lib/python3.10/dist-packages/virtualenv/run/__init__.py�cli_run s
��r c sl |du rt jn|}t| � ||�\}}|�| �� |jj� _t� fdd�|D ��\}}}t� j � j
|j|||�S )aq
Create a virtualenv session (same as cli_run, but this does not perform the creation). Use this if you just want to
query what the virtual environment would look like, but not actually create it.
:param args: the command line arguments
:param options: passing in a ``VirtualEnvOptions`` object allows return of the parsed options
:param setup_logging: ``True`` if setup logging handlers, ``False`` to use handlers already registered
:param env: environment variables to use
:return: the session object of the creation (its structure for now is experimental and might change on short notice)
Nc 3 s � | ]}|� � �V qd S �N)�create)�.0�e�r r r � <genexpr>4 s � z"session_via_cli.<locals>.<genexpr>)r r �build_parser�
parse_args�_interpreter�version_info�
py_version�tupler � verbosity�app_data) r r r r �parser�elements�creator�seeder�
activatorsr r r r % s
�r c C s� t ||d u r tjn|�}t|� |jdddddd� t|| |� t| ||�}t|� t|| �}|j |_
}|d u rBd|� �}t|��t||�t
||�t||�g}|�| �\}} |D ]}
|
�|� qY|�� ||fS )Nz--with-traceback�with_traceback�
store_trueFz>on failure also display the stacktrace internals of virtualenv)�dest�action�default�helpzfailed to find interpreter for )r r r �add_version_flag�add_argument�_do_report_setup�
load_app_data�handle_extra_commandsr �interpreterr$ �RuntimeErrorr
r r �parse_known_args�handle_selected_arg_parse�enable_help)r r r r r* �discoverr: �msgr+ �_�elementr r r r"