Ë
    ��h,/  ã                   óÂ  — d dl Z d dlZd dlZd dl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 d dlmZmZmZmZmZmZ d dlmZmZmZmZmZ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#m$Z$ d dl%m&Z& d dl'm(Z( d dl)m*Z*  ejV                  «       Z,da-dZ. e$d«      Z/ G d„ de0«      Z1dee2   de2de3fd„Z4e jj                  d0de6ded   fd„«       Z7de6fd„Z8 G d„ dejr                  «      Z:e G d„ d«      «       Z; G d„ de«      Z<d d!œd"e3defd#„Z= G d$„ d%e«      Z> G d&„ d'ej~                  j€                  «      ZA G d(„ d)e«      ZB G d*„ d+e«      ZCd,e6d-e3d.eeD   de6fd/„ZEy)1é    N)Ú	dataclass)ÚTextIOWrapper)ÚFilter)ÚAnyÚClassVarÚ	GeneratorÚListÚOptionalÚType)ÚConsoleÚConsoleOptionsÚConsoleRenderableÚRenderableTypeÚRenderResultÚRichCast)ÚNullHighlighter)ÚRichHandler)ÚSegment)ÚStyle)ÚVERBOSEÚ	getLogger)ÚWINDOWS)ÚDEPRECATION_MSG_PREFIX)Ú
ensure_dirzpip.subprocessorc                   ó   — e Zd ZdZy)ÚBrokenStdoutLoggingErrorzO
    Raised if BrokenPipeError occurs for the stdout stream while logging.
    N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__© ó    úY/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/pip/_internal/utils/logging.pyr   r   %   s   „ òr"   r   Ú	exc_classÚexcÚreturnc                 óž   — | t         u ryt        syt        |t        «      xr, |j                  t        j
                  t        j                  fv S )NTF)ÚBrokenPipeErrorr   Ú
isinstanceÚOSErrorÚerrnoÚEINVALÚEPIPE)r$   r%   s     r#   Ú_is_broken_pipe_errorr.   +   s=   € Ø”OÑ#Øõ
 Øä�cœ7Ó#ÒP¨¯	©	´e·l±lÄEÇKÁKÐ5PÐ(PÐPr"   Únum)NNNc              #   óÜ   K  — t        «       t        _        t        xj                  | z  c_        	 d–— t        xj                  | z  c_        y# t        xj                  | z  c_        w xY w­w)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/   s    r#   Ú
indent_logr4   8   sN   è ø€ ô -Ó.„JÔÜ×Ò˜cÑ!Õð&Ûä×Ò #Ñ%ÖøŒ
×Ò #Ñ%Öüs   ‚-A,°A ´A,ÁA)Á)A,c                  ó$   — t        t        dd«      S )Nr3   r   )Úgetattrr2   r!   r"   r#   r1   r1   G   s   € Ü”:˜}¨aÓ0Ð0r"   c            	       óv   ‡ — e Zd ZdZddœdedededdfˆ fd	„Zd
ededefd„Z	de
j                  defˆ fd„Zˆ xZS )ÚIndentingFormatterz%Y-%m-%dT%H:%M:%SF)Úadd_timestampÚargsr9   Úkwargsr&   Nc                ó2   •— || _         t        ‰| �  |i |¤Ž y)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)r9   ÚsuperÚ__init__)Úselfr9   r:   r;   Ú	__class__s       €r#   r>   zIndentingFormatter.__init__N   s   ø€ ð +ˆÔÜ‰Ñ˜$Ð) &Ó)r"   Ú	formattedÚlevelnoc                 ó€   — |t         j                  k  ry|j                  t        «      ry|t         j                  k  ryy)zv
        Return the start of the formatted log message (not counting the
        prefix to add to each line).
        Ú z	WARNING: zERROR: )ÚloggingÚWARNINGÚ
startswithr   ÚERROR)r?   rA   rB   s      r#   Úget_message_startz$IndentingFormatter.get_message_start]   s9   € ð
 ”W—_‘_Ò$ØØ×ÑÔ 6Ô7ð Ø”W—]‘]Ò"Øàr"   Úrecordc                 ó8  •— t         ‰| �  |«      }| j                  ||j                  «      }||z   }d}| j                  r| j                  |«      › d�}|dt        «       z  z  }dj                  |j                  d«      D �cg c]  }||z   ‘Œ	 c}«      }|S c c}w )z†
        Calls the standard formatter, but will indent all of the log message
        lines by our current indentation level.
        rD   ú T)	r=   ÚformatrI   rB   r9   Ú
formatTimer1   ÚjoinÚ
splitlines)r?   rJ   rA   Úmessage_startÚprefixÚliner@   s         €r#   rM   zIndentingFormatter.formatm   s�   ø€ ô
 ‘G‘N 6Ó*ˆ	Ø×.Ñ.¨y¸&¿.¹.ÓIˆØ! IÑ-ˆ	àˆØ×ÒØŸ™¨Ó/Ð0°Ð2ˆFØ�#œÓ)Ñ)Ñ)ˆØ—G‘G°y×7KÑ7KÈDÓ7QÖR¨t˜V d›]ÒRÓSˆ	ØÐùò Ss   ÂB)r   r   r   Údefault_time_formatr   Úboolr>   ÚstrÚintrI   rE   Ú	LogRecordrM   Ú__classcell__©r@   s   @r#   r8   r8   K   sq   ø„ Ø-Ðð
 $ò*àð*ð ð*ð ð	*ð
 
õ*ð¨3ð ¸ð Àó ð ˜W×.Ñ.ð °3÷ ñ r"   r8   c                   ó6   — e Zd ZU eed<   eed<   dededefd„Z	y)ÚIndentedRenderableÚ
renderableÚindentÚconsoleÚoptionsr&   c              #   óâ   K  — |j                  | j                  |«      }t        j                  |«      }|D ]3  }t        d| j                  z  «      –— |E d {  –—†  t        d«      –— Œ5 y 7 Œ­w)NrL   ú
)Úrenderr]   r   Úsplit_linesr^   )r?   r_   r`   ÚsegmentsÚlinesrS   s         r#   Ú__rich_console__z#IndentedRenderable.__rich_console__ƒ   sc   è ø€ ð —>‘> $§/¡/°7Ó;ˆÜ×#Ñ# HÓ-ˆØò 	 ˆDÜ˜# §¡Ñ+Ó,Ò,Ø�OˆOÜ˜$“-Óñ	 àús   ‚AA/ÁA-ÁA/N)
r   r   r   r   Ú__annotations__rW   r   r   r   rg   r!   r"   r#   r\   r\   ~   s*   … àÓØƒKð Øð Ø)7ð à	ô r"   r\   c                   ó   — e Zd Zdd„Zy)Ú
PipConsoleNc                 ó   — t        «       d ‚©N)r(   )r?   s    r#   Úon_broken_pipezPipConsole.on_broken_pipe�   s   € ô Ó TÐ)r"   )r&   N)r   r   r   rm   r!   r"   r#   rj   rj   Ž   s   „ ô*r"   rj   F©Ústderrro   c                 óR   — | rt         €J d«       ‚t         S t        €J d«       ‚t        S )Nzstderr rich console is missing!zstdout rich console is missing!)Ú_stderr_consoleÚ_stdout_consolern   s    r#   Úget_consolers   •   s5   € ÙÜÐ*ÐMÐ,MÓMÐ*ÜÐäÐ*ÐMÐ,MÓMÐ*ÜÐr"   c                   ó–   ‡ — e Zd ZU g Zeeee         ed<   de	ddfˆ fd„Z
dej                  ddfd„Zdej                  ddfˆ fd„Zˆ xZS )	ÚRichPipStreamHandlerÚKEYWORDSr_   r&   Nc                 ó>   •— t         ‰| �  |dddt        «       ¬«       y )NF)r_   Ú	show_timeÚ
show_levelÚ	show_pathÚhighlighter)r=   r>   r   )r?   r_   r@   s     €r#   r>   zRichPipStreamHandler.__init__¡   s'   ø€ Ü‰ÑØØØØÜ'Ó)ð 	õ 	
r"   rJ   c                 óp  — d }t        |dd«      ret        |j                  t        «      sJ ‚|j                  \  }t        |t        t
        t        f«      s
J |› d�«       ‚t        |t        «       ¬«      }n‚| j                  |«      }| j                  ||«      }|j                  �S|j                  t        j                  k\  rt        d¬«      }n)|j                  t        j                  k\  rt        d¬«      }	 | j                   j#                  |dd|¬	«       y # t$        $ r | j'                  |«       Y y w xY w)
NÚrichFz is not rich-console-renderable)r^   Úred)ÚcolorÚyellowÚignore)ÚoverflowÚcropÚstyle)r6   r)   r:   Útupler   r   rV   r\   r1   rM   Úrender_messagerB   rE   rH   r   rF   r_   ÚprintÚ	ExceptionÚhandleError)r?   rJ   r„   Úrich_renderabler]   Úmessages         r#   ÚemitzRichPipStreamHandler.emit«   s  € Ø!%ˆô �6˜6 5Ô)Ü˜fŸk™k¬5Ô1Ð1Ð1Ø!'§¡Ñˆ_ÜØÔ"3´X¼sÐ!Côð Cà!Ð"Ð"AÐBóCð ô *<Ø¬Ó(9ô*‰Jð —k‘k &Ó)ˆGØ×,Ñ,¨V°WÓ=ˆJØ�~‰~Ð)Ø—>‘>¤W§]¡]Ò2Ü!¨Ô.‘EØ—^‘^¤w§¡Ò6Ü!¨Ô1�Eð	%Ø�L‰L×Ñ˜z°HÀ5ÐPUÐÕVøÜò 	%Ø×Ñ˜VÖ$ð	%ús   Ã8D ÄD5Ä4D5c                 óÖ   •— t        j                  «       dd \  }}|r>|r<| j                  j                  t         j                  u rt        ||«      r
t        «       ‚t        ‰| �!  |«      S )z1Called when logging is unable to log some output.Né   )	ÚsysÚexc_infor_   ÚfileÚstdoutr.   r   r=   r‰   )r?   rJ   r$   r%   r@   s       €r#   r‰   z RichPipStreamHandler.handleErrorÇ   s\   ø€ ô Ÿ™›¨¨Ð+‰ˆ	�3ñ ÙØ—‘×!Ñ!¤S§Z¡ZÑ/Ü% i°Ô5ä*Ó,Ð,ä‰wÑ" 6Ó*Ð*r"   )r   r   r   rv   r   r
   r	   rV   rh   r   r>   rE   rX   rŒ   r‰   rY   rZ   s   @r#   ru   ru   ž   se   ø… Ø.0€Hˆh�x  S¡	Ñ*Ñ+Ó0ð
 ð 
¨Dõ 
ð%˜7×,Ñ,ð %°ó %ð8+ '×"3Ñ"3ð +¸÷ +ñ +r"   ru   c                   ó$   ‡ — e Zd Zdefˆ fd„Zˆ xZS )ÚBetterRotatingFileHandlerr&   c                 ó„   •— t        t        j                  j                  | j                  «      «       t
        ‰| �  «       S rl   )r   ÚosÚpathÚdirnameÚbaseFilenamer=   Ú_open)r?   r@   s    €r#   rš   zBetterRotatingFileHandler._openÛ   s*   ø€ Ü”2—7‘7—?‘? 4×#4Ñ#4Ó5Ô6Ü‰w‰}‹Ðr"   )r   r   r   r   rš   rY   rZ   s   @r#   r”   r”   Ú   s   ø„ ð�}÷ ñ r"   r”   c                   ó@   — e Zd Zdeddfd„Zdej                  defd„Zy)ÚMaxLevelFilterÚlevelr&   Nc                 ó   — || _         y rl   )r�   )r?   r�   s     r#   r>   zMaxLevelFilter.__init__á   s	   € Øˆ�
r"   rJ   c                 ó4   — |j                   | j                  k  S rl   )rB   r�   )r?   rJ   s     r#   ÚfilterzMaxLevelFilter.filterä   s   € Ø�~‰~ §
¡
Ñ*Ð*r"   )	r   r   r   rW   r>   rE   rX   rU   r    r!   r"   r#   rœ   rœ   à   s.   „ ð˜cð  dó ð+˜W×.Ñ.ð +°4ô +r"   rœ   c                   ó@   ‡ — e Zd ZdZdej
                  defˆ fd„Zˆ xZS )ÚExcludeLoggerFilterzQ
    A logging Filter that excludes records from a logger (or its children).
    rJ   r&   c                 ó$   •— t         ‰| �  |«       S rl   )r=   r    )r?   rJ   r@   s     €r#   r    zExcludeLoggerFilter.filterí   s   ø€ ô ‘7‘> &Ó)Ð)Ð)r"   )	r   r   r   r    rE   rX   rU   r    rY   rZ   s   @r#   r¢   r¢   è   s&   ø„ ñð*˜W×.Ñ.ð *°4÷ *ñ *r"   r¢   Ú	verbosityÚno_colorÚuser_log_filec                 ó*  — | dk\  rt         j                  }n^| dk(  rt        }nR| dk(  rt         j                  }n<| dk(  rt         j                  }n&| dk  rt         j
                  }nt         j                  }t        j                  |«      }|du}|r|}d}nd}|}|d	v rd
nd}dddœ}	g d¢|rdgng z   }
t        t        j                  |d¬«      at        t        j                  |d¬«      }t         j                  j                  dddt         j                  dœdt        j                   dœdt        j                   dœdœt"        ddœt"        dddœdœ||	d   t        ddgd d!œd
|	d   |dgd d!œ||	d   |d"gd d!œd|	d#   |d$dd%d&œd'œ||
d(œd)d*|iid+œ«       |S ),znConfigures and sets up all of the logging

    Returns the requested logging level, as its integer value.
    rŽ   é   éÿÿÿÿéþÿÿÿéýÿÿÿNÚDEBUGz	/dev/null)ÚINFOrH   rF   z0pip._internal.utils.logging.RichPipStreamHandlerz5pip._internal.utils.logging.BetterRotatingFileHandler)Ústreamr‘   )r_   Úconsole_errorsÚconsole_subprocessÚuser_logT)r‘   r¥   Ú	soft_wrapFz*pip._internal.utils.logging.MaxLevelFilter)ú()r�   zlogging.Filter)r³   Únamez/pip._internal.utils.logging.ExcludeLoggerFilter)Úexclude_warningsÚrestrict_to_subprocessÚexclude_subprocessz%(message)s)r³   rM   )r³   rM   r9   )r^   Úindent_with_timestampr®   r·   rµ   r^   )r�   Úclassr_   ÚfiltersÚ	formatterr¶   r‘   zutf-8r¸   )r�   r¹   ÚfilenameÚencodingÚdelayr»   )r_   r¯   r°   r±   )r�   Úhandlerszpip._vendorr�   )ÚversionÚdisable_existing_loggersrº   Ú
formattersr¿   ÚrootÚloggers)rE   r¬   r   rF   rH   ÚCRITICALr­   ÚgetLevelNamerj   r�   r’   rr   ro   ÚconfigÚ
dictConfigÚsubprocess_loggerr´   r8   )r¤   r¥   r¦   Úlevel_numberr�   Úinclude_user_logÚadditional_log_fileÚ
root_levelÚvendored_log_levelÚhandler_classesr¿   rq   s               r#   Úsetup_loggingrÐ   ó   s  € ð �A‚~Ü—}‘}‰Ø	�aŠÜ‰Ø	�bŠÜ—‘‰Ø	�bŠÜ—}‘}‰Ø	�bŠÜ×'Ñ'‰ä—|‘|ˆä× Ñ  Ó.€Eð %¨DÐ0ÐÙØ+ÐØ‰
à)ÐØˆ
ð ',Ð/@Ñ&@™ÀgÐð EØGñ€Oò CÙ(ˆ‰¨bñ€Hô !¤c§j¡j¸8ÈtÔT€OÜ ¤c§j¡j¸8ÈtÔT€Oä‡N�N×ÑàØ(-ð GÜ$Ÿ_™_ñ%ð
 +Ü-×2Ñ2ñ+ð
 LÜ-×2Ñ2ñ'ñô  -Ø+ñô
 -Ø+Ø%)ñ*ñ
ð #Ø,¨XÑ6Ü.Ø 4Ð6HÐIØ!)ñð 'Ø,¨XÑ6Ø.Ø 4Ð5Ø!)ñ#ð #Ø,¨XÑ6Ø.Ø 8Ð9Ø!)ñ'ð %Ø,¨VÑ4Ø 3Ø 'Ø!Ø!8ññ1 ðD $Ø$ñð &¨Ð1CÐ'DÐEñCB	
ôDðL Ðr"   )rŽ   )FÚ
contextlibr+   rE   Úlogging.handlersr–   r�   Ú	threadingÚdataclassesr   Úior   r   Útypingr   r   r   r	   r
   r   Úpip._vendor.rich.consoler   r   r   r   r   r   Úpip._vendor.rich.highlighterr   Úpip._vendor.rich.loggingr   Úpip._vendor.rich.segmentr   Úpip._vendor.rich.styler   Úpip._internal.utils._logr   r   Úpip._internal.utils.compatr   Úpip._internal.utils.deprecationr   Úpip._internal.utils.miscr   Úlocalr2   rr   rq   rÉ   rˆ   r   ÚBaseExceptionrU   r.   ÚcontextmanagerrW   r4   r1   Ú	Formatterr8   r\   rj   rs   ru   r¿   ÚRotatingFileHandlerr”   rœ   r¢   rV   rÐ   r!   r"   r#   ú<module>rå      s“  ðÛ Û Û Û Û 	Û 
Û Ý !Ý Ý ß A× A÷÷ õ 9Ý 0Ý ,Ý (ç 7Ý .Ý BÝ /àˆY�_‰_Ó€
Ø€Ø€ÙÐ0Ó1Ð ô˜yô ð
Q T¨-Ñ%8ð 
Q¸}ð 
QÐQUó 
Qð ×Ññ&�Cð & 	Ð*:Ñ ;ò &ó ð&ð1˜ó 1ô0˜×*Ñ*ô 0ðf ÷ ð  ó ð ô*�ô *ð #(ò ˜4ð ¨Gó ô9+˜;ô 9+ôx × 0Ñ 0× DÑ Dô ô+�Vô +ô*˜&ô *ðv˜Sð v¨Dð vÀÈ#Áð vÐSVô vr"   