o
    8)i                     @  s   d Z ddlm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
 eeddd Zd	e_G d
d dejZdddZe Zee ejfdddZee  ejdddZejefdddZdS )z%
logging helpers, supports vendoring
    )annotationsN)IO)Iterator)Mapping.   Fc                      s<   e Zd Zd
 fddZedddZejdd	dZ  ZS )AlwaysStdErrHandlerreturnNonec                   s   t  tj d S N)super__init__sysstderrself	__class__ N/home/app/PyTorch/.pytorch/lib/python3.10/site-packages/setuptools_scm/_log.pyr      s   zAlwaysStdErrHandler.__init__IO[str]c                 C  s   t jS r   r   r   r   r   r   r   stream   s   zAlwaysStdErrHandler.streamvaluec                 C  s   |t ju sJ d S r   r   )r   r   r   r   r   r      s   )r	   r
   )r	   r   )r   r   r	   r
   )__name__
__module____qualname__r   propertyr   setter__classcell__r   r   r   r   r      s    r   r	   logging.Handlerc                  C  sX   zddl m}  | dd}ddlm} ||dW S  ty+   tj}|d us'J | Y S w )Nr   )ConsoleT)r   )RichHandler)console)Zrich.consoler!   Zrich.loggingr"   ImportErrorlogging
lastResort)r!   r#   r"   Zlast_resortr   r   r   make_default_handler!   s   
r'   _envMapping[str, str]intc                 C  s   |  d}|d u rtjS tjS )NZSETUPTOOLS_SCM_DEBUG)getr%   WARNINGDEBUG)r(   valr   r   r   _default_log_level4   s   
r/   Iterator[None]c               	   c  sh    dt _t j} t tj t t zd V  W t t dt _t |  d S t t dt _t |  w )NTF)	log	propagatelevelsetLevelr%   NOTSETremoveHandler_default_handler
addHandler)	old_levelr   r   r   defer_to_pytest<   s   


r:   handlerc              	   c  s    t |  t j}t tj | j}| tj zd V  W t | | | | tur2t |  d S d S t | | | | turHt |  w w r   )r1   r8   r3   r4   r%   r-   r7   r6   )r;   r9   Zold_handler_levelr   r   r   enable_debugJ   s$   




r<   )r	   r    )r(   r)   r	   r*   )r	   r0   )r;   r    r	   r0   )__doc__
__future__r   
contextlibr%   osr   typingr   r   r   	getLoggerr   rsplitr1   r2   StreamHandlerr   r'   r7   r8   environr/   r4   contextmanagerr:   r<   r   r   r   r   <module>   s*    

