+
     h,/  c                   s   ^ RI t ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RI	H
t
 ^ RIHt ^ RIHtHtHtHtHtHt ^ RIHtHtHtHtHtHt ^ RIHt ^ RIHt ^ R	IHt ^ R
I H!t! ^ RI"H#t#H$t$ ^ RI%H&t& ^ RI'H(t( ^ RI)H*t* ]PV                  ! 4       t,Rs-Rt.]$! R4      t/ ! R R]04      t1R R lt2] Pf                  R,R R ll4       t4R R lt5 ! R R]Pl                  4      t7] ! R R4      4       t8 ! R R]4      t9RR/R  R! llt: ! R" R#]4      t; ! R$ R%]Px                  Pz                  4      t> ! R& R']4      t? ! R( R)]4      t@R* R+ ltAR# )-i    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                   s    ] tR t^%tRtRtR# )BrokenStdoutLoggingErrorzG
Raised if BrokenPipeError occurs for the stdout stream while logging.
 N)__name__
__module____qualname____firstlineno____doc____static_attributes__r       @/usr/lib/python3.14/site-packages/pip/_internal/utils/logging.pyr   r   %   s    r!   r   c                sR    V ^8  d   QhR\         \        ,          R\        R\        /# )   	exc_classexcreturn)r	   ZBaseExceptionboolformat   "r"   __annotate__r+   +   s,     
Q 
QT-%8 
Q} 
QQU 
Qr!   c                 s    V \         J d   R # \        '       g   R# \        V\        4      ;'       d.    VP                  \        P
                  \        P                  39   # )TF)BrokenPipeErrorr   Z
isinstanceZOSErrorerrnoZEINVALZEPIPE)r$   r%      &&r"   _is_broken_pipe_errorr/   +   sB    O#
 7c7#PP		ellEKK5P(PPr!   c                s>    V ^8  d   QhR\         R\        R,          /# )r#   numr&   )NNN)intr   r(   r*   r"   r+   r+   9   s      & &C &	*: ; &r!   c              #  s   "   \        4       \        n        \        ;P                  V ,          un         Rx  \        ;P                  V ,          un        R#   \        ;P                  T ,          un        i ; i5i)zj
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)r0      &r"   
indent_logr6   8   sM      -.Jc!&#%
#%s   1A9A A9A66A9c                s$    V ^8  d   QhR\         /# r#   r&   r1   r(   r*   r"   r+   r+   G   s     1 1 1r!   c                  s$    \        \        R ^ 4      # )r4   )getattrr3   r   r!   r"   r2   r2   G   s    :}a00r!   c                   st   a a ] tR t^Kt oRtRR/V3R lV 3R llltV3R lR ltV3R lV 3R	 lltR
tVt	V ;t
# )IndentingFormatterz%Y-%m-%dT%H:%M:%Sadd_timestampFc                s0   < V ^8  d   QhRS[ RS[RS[ RR/# )r#   argsr;   kwargsr&   N)r   r'   r)   __classdict__   "r"   r+   IndentingFormatter.__annotate__N   s3     * ** * 	*
 
*r!   c               s4   < Wn         \        SV `  ! V/ VB  R# )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)r;   super__init__)selfr;   r<   r=   	__class__s   &$*,r"   rC   ZIndentingFormatter.__init__N   s     +$)&)r!   c                s,   < V ^8  d   QhRS[ RS[RS[ /# )r#   	formattedlevelnor&   )strr1   r>   r@   r"   r+   rA   ]   s"      3   r!   c                s    V\         P                  8  d   R# VP                  \        4      '       d   R# V\         P                  8  d   R# R# )z^
Return the start of the formatted log message (not counting the
prefix to add to each line).
 z	WARNING: zERROR: )loggingWARNINGZ
startswithr   ERROR)rD   rF   rG   s   &&&r"   get_message_startZ$IndentingFormatter.get_message_start]   s<    
 W__$ 677 W]]"r!   c                :   < V ^8  d   QhRS[ P                  RS[/# r#   recordr&   )rJ   	LogRecordrH   r>   r@   r"   r+   rA   m   s!      W.. 3 r!   c                sb  < \         SV `  V4      pV P                  W!P                  4      pW2,           pRpV P                  '       d   V P                  V4       R2pVR\        4       ,          ,          pRP                  VP                  R4       Uu. uF  qTV,           NK  	  up4      pV# u upi )zn
Calls the standard formatter, but will indent all of the log message
lines by our current indentation level.
rI    T)	rB   r)   rM   rG   r;   Z
formatTimer2   ZjoinZ
splitlines)rD   rP   rF   Zmessage_startZprefixlinerE   s   &&    r"   r)   ZIndentingFormatter.formatm   s    
 GN6*	..y..I!-	/02F#)))GGy7K7KD7QR7Qtd]]7QRS	 Ss   B,)r;   )r   r   r   r   Zdefault_time_formatrC   rM   r)   r    __classdictcell____classcell__rE   r?      @@r"   r:   r:   K   s8     -* $* *    r!   r:   c                   s>   a  ] tR t^~t o V 3R lR ltV 3R ltRtV tR# )IndentedRenderablec                s,   < V ^8  d   QhRS[ RS[RS[/# )r#   consoleoptionsr&   )r
   r   r   r>   r@   r"   r+   IndentedRenderable.__annotate__   s%         )7 	 r!   c              #  s   "   VP                  V P                  V4      p\        P                  ! V4      pV F8  p\        R V P                  ,          4      x  T Rj  xL
  \        R4      x  K:  	  R#  L5i)rR   NZ
)Zrender
renderabler   Zsplit_linesindent)rD   rY   rZ   ZsegmentsZlinesrS   s   &&&   r"   __rich_console__Z#IndentedRenderable.__rich_console__   s]      >>$//7;##H-D#+,,OO$- s   AA7A5A7c                s2   < V ^8  d   Qh/ S[ ;R&   S[;R&   # )r#   r\   r]   )r   r1   r>   r@   r"   r+   r[   ~   s       K r!   r   N)r   r   r   r   r^   __annotate_func__r    rT   r?      @r"   rX   rX   ~   s     
     r!   rX   c                   s2   a  ] tR t^t o V 3R lR ltRtV tR# )
PipConsolec                s   < V ^8  d   QhRR/# )r#   r&   Nr   r>   r@   r"   r+   ZPipConsole.__annotate__   s     * * *r!   c                s    \        4       R hN)r,   )rD   r5   r"   on_broken_pipeZPipConsole.on_broken_pipe   s     T)r!   r   N)r   r   r   r   rd   r    rT   r`   ra   r"   rb   rb      s     * *r!   rb   stderrFc                s0    V ^8  d   QhR\         R\        /# )r#   re   r&   )r'   r
   r(   r*   r"   r+   r+      s      4 G r!   c                 s*    V '       d   \         # \        # rc   )_stderr_console_stdout_console)re   s   $r"   get_consolerh      s     r!   c                   sx   a a ] tR t^t o. tV3R lV 3R lltV3R lR ltV3R lV 3R lltV3R ltRt	Vt
V ;t# )	RichPipStreamHandlerc                $   < V ^8  d   QhRS[ RR/# )r#   rY   r&   N)r
   r>   r@   r"   r+   !RichPipStreamHandler.__annotate__   s     
 
 
D 
r!   c                s@   < \         SV `  VR R R \        4       R7       R# )F)rY   Z	show_timeZ
show_levelZ	show_pathZhighlighterN)rB   rC   r   )rD   rY   rE      &&r"   rC   ZRichPipStreamHandler.__init__   s'    ') 	 	
r!   c                8   < V ^8  d   QhRS[ P                  RR/# r#   rP   r&   NrJ   rQ   r>   r@   r"   r+   rk      s!     % %7,, % %r!   c                s   R p\        VRR4      '       d%   VP                  w  p\        V\        4       R7      pMV P	                  V4      pV P                  W4      pVP                  eX   VP                  \        P                  8  d   \        RR7      pM+VP                  \        P                  8  d   \        RR7      p V P                  P                  VRRVR7       R #   \         d    T P                  T4        R # i ; i)	NZrichF)r]   Zred)ZcolorZyellowZignore)ZoverflowZcropstyle)r9   r<   rX   r2   r)   Zrender_messagerG   rJ   rL   r   rK   rY   Zprint	ExceptionhandleError)rD   rP   rp   Zrich_renderabler\   Zmessages   &&    r"   emitZRichPipStreamHandler.emit   s    !% 665))!'_
 *<(9*J kk&)G,,V=J~~)>>W]]2!.E^^w6!1E	%LLzH5PUV 	%V$	%s   C# #DDc                rm   rn   ro   r>   r@   r"   r+   rk      s!     + +'"3"3 + +r!   c                s  < \         P                  ! 4       R,          w  r#V'       dL   V'       dD   V P                  P                  \         P                  J d   \        W#4      '       d   \        4       h\        SV `!  V4      # )z1Called when logging is unable to log some output.:Nr#   N)	sysZexc_inforY   filestdoutr/   r   rB   rr   )rD   rP   r$   r%   rE   s   &&  r"   rr   Z RichPipStreamHandler.handleError   sY     +	 !!SZZ/%i55*,,w"6**r!   c                sV   < V ^8  d   Qh/ S[ S[S[S[,          ,          ,          ;R&   # )r#   KEYWORDS)r   r   r   rH   r>   r@   r"   r+   rk      s     xS	*+0 r!   r   )r   r   r   r   rw   rC   rs   rr   r_   r    rT   rU   rV   rW   r"   ri   ri      s0     .0H
 
% %8+ +S  r!   ri   c                   s>   a a ] tR t^t oV3R lV 3R lltRtVtV ;t# )BetterRotatingFileHandlerc                s    < V ^8  d   QhRS[ /# r7   r   r>   r@   r"   r+   Z&BetterRotatingFileHandler.__annotate__   s      } r!   c                s   < \        \        P                  P                  V P                  4      4       \
        SV `  4       # rc   )r   osZpathZdirnameZbaseFilenamerB   _open)rD   rE   s   &r"   rz   ZBetterRotatingFileHandler._open   s*    277??4#4#456w}r!   r   )r   r   r   r   rz   r    rT   rU   rV   rW   r"   rx   rx      s       r!   rx   c                   sD   a  ] tR t^t o V 3R lR ltV 3R lR ltRtV tR# )MaxLevelFilterc                rj   )r#   levelr&   Nr8   r>   r@   r"   r+   MaxLevelFilter.__annotate__   s      c d r!   c                s    Wn         R # rc   r|   )rD   r|   r.   r"   rC   ZMaxLevelFilter.__init__   s    
r!   c                rN   rO   rJ   rQ   r'   r>   r@   r"   r+   r}      s!     + +W.. +4 +r!   c                s4    VP                   V P                  8  # rc   )rG   r|   )rD   rP   r.   r"   filterZMaxLevelFilter.filter   s    ~~

**r!   r~   N)r   r   r   r   rC   r   r    rT   r`   ra   r"   r{   r{      s      + +r!   r{   c                   sB   a a ] tR t^t oRtV3R lV 3R lltRtVtV ;t# )ExcludeLoggerFilterzI
A logging Filter that excludes records from a logger (or its children).
c                rN   rO   r   r>   r@   r"   r+   Z ExcludeLoggerFilter.__annotate__   s!     * *W.. *4 *r!   c                s,   < \         SV `  V4      '       * # rc   )rB   r   )rD   rP   rE   rl   r"   r   ZExcludeLoggerFilter.filter   s     7>&)))r!   r   )	r   r   r   r   r   r   r    rT   rU   rV   rW   r"   r   r      s     * * *r!   r   c                s^    V ^8  d   QhR\         R\        R\        \        ,          R\         /# )r#   	verbosityno_coloruser_log_filer&   )r1   r'   r   rH   r(   r*   r"   r+   r+      s3     v vS vD v# vSV vr!   c                s   V ^8  d   \         P                  pMfV ^8X  d   \        pMXV R,8X  d   \         P                  pM@V R-8X  d   \         P                  pM(V R.8:  d   \         P
                  pM\         P                  p\         P                  ! V4      pVRJpV'       d   TpRpMRpTpVR/9   d   RMRpRRRR/p	. R0OV'       d   R.M. ,           p
\        \        P                  VRR7      s\        \        P                  VRR7      p\         P                  P                  R^RRRRRRR\         P                  /RRRR\        P                   /RRRR\        P                   //RRR\"        RR/R R\"        RRR!R//R"R	RVR#V	R,          R	\        RRR.R$R/R
RRR#V	R,          R	VRR.R$R/RRVR#V	R,          R	VRR.R$R/RRRR#V	R,          R%VR&R'R(RR$R //R)RVR"V
/R*R+RV///4       V# )1zfConfigures and sets up all of the logging

Returns the requested logging level, as its integer value.
NDEBUGz	/dev/nullrK   Zstreamz0pip._internal.utils.logging.RichPipStreamHandlerru   z5pip._internal.utils.logging.BetterRotatingFileHandlerrY   console_errorsconsole_subprocessZuser_logT)ru   r   Z	soft_wrapZversionZdisable_existing_loggersFZfiltersZexclude_warningsz()z*pip._internal.utils.logging.MaxLevelFilterr|   Zrestrict_to_subprocesszlogging.FilternameZexclude_subprocessz/pip._internal.utils.logging.ExcludeLoggerFilterZ
formattersr]   r)   z%(message)sZindent_with_timestampr;   handlersZclassZ	formatterZfilenameZencodingzutf-8ZdelayZrootZloggerszpip._vendoriii)INFOrL   )rY   r   r   )rJ   r   r   rK   rL   ZCRITICALr   ZgetLevelNamerb   rt   rv   rg   re   ZconfigZ
dictConfigsubprocess_loggerr   r:   )r   r   r   Zlevel_numberr|   Zinclude_user_logZadditional_log_fileZ
root_levelZvendored_log_levelZhandler_classesr   rf   s   &&&         r"   setup_loggingr      s    A~}}	a	b	b}}	b''||  .E %D0+
)
 ',/@&@g 	DGO C(bH !cjj8tTO cjj8tTONNq&"FW__% )*-22+ %K-22' ,m (,m#T*
 U_X6 46HI !Y_X6 45# %U_X6 89' W_V4 3T!81 B H 1C'DECB	
DL r!   )r#   )BZ
contextlibr-   rJ   Zlogging.handlersry   rt   Z	threadingZdataclassesr    Zior   r   Ztypingr   r   r   r   r   r	   Zpip._vendor.rich.consoler
   r   r   r   r   r   Zpip._vendor.rich.highlighterr   Zpip._vendor.rich.loggingr   Zpip._vendor.rich.segmentr   Zpip._vendor.rich.styler   Zpip._internal.utils._logr   r   Zpip._internal.utils.compatr   Zpip._internal.utils.deprecationr   Zpip._internal.utils.miscr   Zlocalr3   rg   rf   r   rq   r   r/   Zcontextmanagerr6   r2   Z	Formatterr:   rX   rb   rh   ri   r   ZRotatingFileHandlerrx   r{   r   r   r   r!   r"   <module>r      s'       	 
  !   A A  9 0 , ( 7 . B /__
01 y 
Q & &10** 0f      * *% 9+; 9+x 0 0 D D +V +*& *vr!   