HEX
Server: Apache
System: Linux p3plzcpnl506847.prod.phx3.secureserver.net 4.18.0-553.54.1.lve.el8.x86_64 #1 SMP Wed Jun 4 13:01:13 UTC 2025 x86_64
User: slfopp7cb1df (5698090)
PHP: 8.1.34
Disabled: NONE
Upload Files
File: //opt/python38/lib/python3.8/site-packages/pip/_internal/utils/__pycache__/logging.cpython-38.pyc
U

�{�eS-�@s�ddlZddlZddlZddlZddlZddlZddlZddlmZddl	m
Z
ddlmZddlm
Z
mZmZmZmZmZmZddlmZmZmZmZmZmZddlmZddlmZdd	lm Z dd
l!m"Z"ddl#m$Z$m%Z%ddl&m'Z'dd
l(m)Z)ddl*m+Z+e�,�Z-e%d�Z.Gdd�de/�Z0ee1e1e2d�dd�Z3ej4d,e5edd�dd��Z6e5d�dd�Z7Gdd�dej8�Z9eGdd �d ��Z:Gd!d"�d"e�Z;Gd#d$�d$ej<j=�Z>Gd%d&�d&e�Z?Gd'd(�d(e�Z@e5e2eeAe5d)�d*d+�ZBdS)-�N)�	dataclass)�
TextIOWrapper)�Filter)�Any�ClassVar�	Generator�List�Optional�TextIO�Type)�Console�ConsoleOptions�ConsoleRenderable�RenderableType�RenderResult�RichCast)�NullHighlighter)�RichHandler)�Segment)�Style)�VERBOSE�	getLogger)�WINDOWS)�DEPRECATION_MSG_PREFIX)�
ensure_dirzpip.subprocessorc@seZdZdZdS)�BrokenStdoutLoggingErrorzO
    Raised if BrokenPipeError occurs for the stdout stream while logging.
    N)�__name__�
__module__�__qualname__�__doc__�r r �?/tmp/pip-unpacked-wheel-_0scjqea/pip/_internal/utils/logging.pyr#sr)�	exc_class�exc�returncCs0|tkrdStsdSt|t�o.|jtjtjfkS)NTF)�BrokenPipeErrorr�
isinstance�OSError�errno�EINVAL�EPIPE)r"r#r r r!�_is_broken_pipe_error)s
r+�)NNN)�numr$c	cs6t�t_tj|7_z
dVW5tj|8_XdS)zv
    A context manager which will cause the log output to be indented for any
    log messages emitted inside it.
    N)�get_indentation�
_log_state�indentation)r-r r r!�
indent_log6s

r1�r$cCsttdd�S)Nr0r)�getattrr/r r r r!r.Esr.csZeZdZdZdd�eeedd��fdd�Zeeed�d	d
�Z	e
jed��fdd
�Z�Z
S)�IndentingFormatterz%Y-%m-%dT%H:%M:%SF)�
add_timestampN)�argsr5�kwargsr$cs||_t�j||�dS)z�
        A logging.Formatter that obeys the indent_log() context manager.

        :param add_timestamp: A bool indicating output lines should be prefixed
            with their record's timestamp.
        N)r5�super�__init__)�selfr5r6r7��	__class__r r!r9LszIndentingFormatter.__init__)�	formatted�levelnor$cCs.|tjkrdS|�t�rdS|tjkr*dSdS)zv
        Return the start of the formatted log message (not counting the
        prefix to add to each line).
        �z	WARNING: zERROR: )�logging�WARNING�
startswithr�ERROR)r:r=r>r r r!�get_message_start[s


z$IndentingFormatter.get_message_start��recordr$cslt��|�}|�||j�}||}d�|jr<|�|��d���dt�7�d��fdd�|�d�D��}|S)z�
        Calls the standard formatter, but will indent all of the log message
        lines by our current indentation level.
        r?� csg|]}�|�qSr r )�.0�line��prefixr r!�
<listcomp>xsz-IndentingFormatter.format.<locals>.<listcomp>T)	r8�formatrDr>r5�
formatTimer.�join�
splitlines)r:rFr=�
message_startr;rJr!rMkszIndentingFormatter.format)rrr�default_time_formatr�boolr9�str�intrDr@�	LogRecordrM�
__classcell__r r r;r!r4Is��r4c@s0eZdZUeed<eed<eeed�dd�Z	dS)�IndentedRenderable�
renderable�indent)�console�optionsr$ccsJ|�|j|�}t�|�}|D](}td|j�V|EdHtd�VqdS)NrG�
)�renderrYrZsplit_linesrZ)r:r[r\�segments�linesrIr r r!�__rich_console__�s

z#IndentedRenderable.__rich_console__N)
rrrr�__annotations__rUrr
rrar r r r!rX|s
�rXcsleZdZUgZeeeeed<ee	e
dd��fdd�Zej
dd�dd�Zej
dd��fd	d
�Z�ZS)�RichPipStreamHandler�KEYWORDSN)�stream�no_colorr$cs&t�jt||dd�dddt�d�dS)NT)�filerfZ	soft_wrapF)r[Z	show_timeZ
show_levelZ	show_pathZhighlighter)r8r9rr)r:rerfr;r r!r9�s�zRichPipStreamHandler.__init__rEcCs�d}t|jt�st�t|dd�rV|j\}t|tttf�sFt|�d���t|t	�d�}nN|�
|�}|�||�}|jdk	r�|jt
jkr�tdd�}n|jt
jkr�tdd�}z|jj|dd|d	�Wntk
r�|�|�YnXdS)
NZrichFz is not rich-console-renderable)rZZred)�colorZyellow�ignore)ZoverflowZcrop�style)r&r6�tuple�AssertionErrorr3rrrTrXr.rMZrender_messager>r@rCrrAr[�print�	Exception�handleError)r:rFrjZrich_renderablerY�messager r r!�emit�s2���


zRichPipStreamHandler.emitcsFt��dd�\}}|r:|r:|jjtjkr:t||�r:t��t��|�S)z1Called when logging is unable to log some output.Nr,)	�sys�exc_infor[rg�stdoutr+rr8ro)r:rFr"r#r;r r!ro�s����z RichPipStreamHandler.handleError)rrrrdrr	rrTrbr
rSr9r@rVrqrorWr r r;r!rc�s

rccs"eZdZed��fdd�Z�ZS)�BetterRotatingFileHandlerr2csttj�|j��t���S�N)r�os�path�dirname�baseFilenamer8�_open)r:r;r r!r{�szBetterRotatingFileHandler._open)rrrrr{rWr r r;r!ru�sruc@s.eZdZedd�dd�Zejed�dd�ZdS)�MaxLevelFilterN)�levelr$cCs
||_dSrv)r})r:r}r r r!r9�szMaxLevelFilter.__init__rEcCs|j|jkSrv)r>r}�r:rFr r r!�filter�szMaxLevelFilter.filter)	rrrrUr9r@rVrSrr r r r!r|�sr|cs*eZdZdZejed��fdd�Z�ZS)�ExcludeLoggerFilterzQ
    A logging Filter that excludes records from a logger (or its children).
    rEcst��|�Srv)r8rr~r;r r!r�szExcludeLoggerFilter.filter)	rrrrr@rVrSrrWr r r;r!r��sr�)�	verbosityrf�
user_log_filer$cCs�|dkrtj}nD|dkrt}n6|dkr.tj}n&|dkr>tj}n|dkrNtj}ntj}t�|�}|dk	}|rt|}d}nd}|}|d	kr�d
nd}ddd
�}	ddd�}
dddg|r�dgng}tj�	dddtjd�dt
jd�dt
jd�d�tdd�tddd�d �||
d!||	d"d#d$gd%d&�d
|
d!||	d'd#gd%d&�||
d!|	d'|d(gd%d)�d|
d*|d+dd,d-�d.�||d/�d0d1|iid2��|S)3znConfigures and sets up all of the logging

    Returns the requested logging level, as its integer value.
    r,����������N�DEBUGz	/dev/null)�INFOrCrAzext://sys.stdoutzext://sys.stderr)rt�stderrz0pip._internal.utils.logging.RichPipStreamHandlerz5pip._internal.utils.logging.BetterRotatingFileHandler)rergr[�console_errors�console_subprocess�user_logFz*pip._internal.utils.logging.MaxLevelFilter)�()r}zlogging.Filter)r��namez/pip._internal.utils.logging.ExcludeLoggerFilter)�exclude_warnings�restrict_to_subprocess�exclude_subprocessz%(message)s)r�rMT)r�rMr5)rZ�indent_with_timestamprertr�r�rZ)r}�classrfre�filters�	formatterr�r�)r}r�rerfr�r�rgzutf-8r�)r}r��filename�encoding�delayr�)r[r�r�r�)r}�handlerszpip._vendorr})�version�disable_existing_loggersr��
formattersr��root�loggers)
r@r�rrArC�CRITICALr��getLevelName�config�
dictConfig�subprocess_loggerr�r4)r�rfr��level_numberr}�include_user_log�additional_log_file�
root_level�vendored_log_level�log_streams�handler_classesr�r r r!�
setup_logging�s�
����������
�	��	��%�
��Ir�)r,)C�
contextlibr(r@�logging.handlersrwrr�	threadingZdataclassesr�iorr�typingrrrrr	r
rZpip._vendor.rich.consolerr
rrrrZpip._vendor.rich.highlighterrZpip._vendor.rich.loggingrZpip._vendor.rich.segmentrZpip._vendor.rich.stylerZpip._internal.utils._logrr�pip._internal.utils.compatr�pip._internal.utils.deprecationr�pip._internal.utils.miscr�localr/r�rnr�
BaseExceptionrSr+�contextmanagerrUr1r.�	Formatterr4rXrcr��RotatingFileHandlerrur|r�rTr�r r r r!�<module>sD$ 
3<