
    3i                       d dl mZ d dlZd dlZd dlZd dlmZ er$d dlmZ d dl	m
Z
 d dlmZ d dlmZ d dlmZ d d	lmZ ej&                  d
k\  rd dlmZ nd dlmZ  ej,                  e      Z G d d      ZdZ G d d      ZdgZy)    )annotationsN)TYPE_CHECKING)TracebackType)
PythonInfo)	Activator)AppData)Creator)Seeder)      )Selfc                      e Zd ZdZ	 	 	 	 	 	 	 	 	 	 	 	 	 	 ddZedd       Zedd       Zedd       Zedd       Z	edd       Z
ddZdd	Zdd
ZddZddZ	 	 	 	 	 	 	 	 ddZy)Sessionz2Represents a virtual environment creation session.c                X    || _         || _        || _        || _        || _        || _        y N)
_verbosity	_app_data_interpreter_creator_seeder_activators)self	verbosityapp_datainterpretercreatorseeder
activatorss          I/var/www/opsc/venv/lib/python3.12/site-packages/virtualenv/run/session.py__init__zSession.__init__   s0     $!'%    c                    | j                   S )zThe verbosity of the run.)r   r   s    r   r   zSession.verbosity-   s     r!   c                    | j                   S )zACreate a virtual environment based on this reference interpreter.)r   r#   s    r   r   zSession.interpreter2   s        r!   c                    | j                   S )z\The creator used to build the virtual environment (must be compatible with the interpreter).)r   r#   s    r   r   zSession.creator7   s     }}r!   c                    | j                   S )zIThe mechanism used to provide the seed packages (pip, setuptools, wheel).)r   r#   s    r   r   zSession.seeder<   s     ||r!   c                    | j                   S )z0Activators used to generate activations scripts.)r   r#   s    r   r   zSession.activatorsA   s     r!   c                    | j                          | j                          | j                          | j                  j                  j                          y r   )_create_seed	_activater   	pyenv_cfgwriter#   s    r   runzSession.runF   s4    

$$&r!   c                    t         j                  d| j                         | j                  j                          t         j	                  t
               t         j	                  dt        | j                               y )Nz!create virtual environment via %sz%s)LOGGERinfor   r.   debug_DEBUG_MARKER_Debugr#   s    r   r)   zSession._createL   sH    7F]#T6$,,/0r!   c                    | j                   ]| j                   j                  rFt        j                  d| j                          | j                   j	                  | j
                         y y y )Nzadd seed packages via %s)r   enabledr0   r1   r.   r   r#   s    r   r*   zSession._seedR   sG    ;;"t{{':':KK2DKK@KKOODLL) (;"r!   c                    | j                   redj                  d | j                   D              }t        j                  d|       | j                   D ]  }|j	                  | j
                          y y )Nz, c              3  f   K   | ])  }t        |      j                  j                  d d       + yw)r    N)type__name__replace).0is     r   	<genexpr>z$Session._activate.<locals>.<genexpr>Y   s'     bQtAw//77RHbs   /1zadd activators for %s)r   joinr0   r1   generater   )r   active	activators      r   r+   zSession._activateW   s]    ??YYbRVRaRabbFKK/8!__ 1	""4<<01 r!   c                    | S r    r#   s    r   	__enter__zSession.__enter__^   s    r!   c                8    | j                   j                          y r   )r   close)r   exc_typeexc_valexc_tbs       r   __exit__zSession.__exit__a   s     	r!   N)r   intr   r   r   r   r   r	   r   r
   r   list[Activator]returnNone)rO   rM   )rO   r   )rO   r	   )rO   r
   )rO   rN   )rO   rP   )rO   r   )rI   ztype[BaseException] | NonerJ   zBaseException | NonerK   zTracebackType | NonerO   rP   )r;   
__module____qualname____doc__r    propertyr   r   r   r   r   r.   r)   r*   r+   rF   rL   rE   r!   r   r   r      s    <&& &  	&
 & & $& 
&    ! !        '1*
1, & %	
 
r!   r   zJ============================== target debug ==============================c                       e Zd ZdZddZddZy)r4   zlazily populate debug.c                    || _         y r   )r   )r   r   s     r   r    z_Debug.__init__p   s	    r!   c                X    t        j                  | j                  j                  d      S )N   )indent)jsondumpsr   r2   r#   s    r   __repr__z_Debug.__repr__s   s    zz$,,,,Q77r!   N)r   r	   rO   rP   )rO   str)r;   rQ   rR   rS   r    r\   rE   r!   r   r4   r4   m   s     8r!   r4   )
__future__r   rZ   loggingsystypingr   typesr   python_discoveryr   virtualenv.activation.activatorr   virtualenv.app_data.baser   virtualenv.create.creatorr	   virtualenv.seed.seederr
   version_infor   typing_extensions	getLoggerr;   r0   r   r3   r4   __all__rE   r!   r   <module>rl      sy    "   
  #+901-w&			8	$M M` 78 8 r!   