o
    !§Ñht  ã                   @   sf   d dl Z d dlmZ e jrd dlZd dlmZ ddd„Z		dd
ddedede j	dgdf fdd„Z
dS )é    N)Ú_utils)ÚRetryCallStateÚretry_stater   Úreturnc                 C   s   dS )z'Before call strategy that does nothing.N© )r   r   r   úC/usr/lib/python3/dist-packages/pip/_vendor/tenacity/before_sleep.pyÚbefore_sleep_nothing   s    r   FÚloggerzlogging.LoggerÚ	log_levelÚexc_infoc                    s   d‡ ‡‡fdd„}|S )z:Before call strategy that logs to some logger the attempt.r   r   r   Nc                    sŽ   | j jr | j  ¡ }d|jj› d|› �}}ˆ r| j  ¡ }nd}n
d| j  ¡ }}d}ˆjˆdt | j	¡› d| j
j› d|› d|› d	�	|d
� d S )NÚraisedz: FÚreturnedz	Retrying z in z seconds as it ú Ú.)r   )ÚoutcomeÚfailedÚ	exceptionÚ	__class__Ú__name__ÚresultÚlogr   Úget_callback_nameÚfnÚnext_actionÚsleep)r   ÚexÚverbÚvalueÚlocal_exc_info©r   r
   r	   r   r   Úlog_it&   s&   
ÿÿÿ
üz before_sleep_log.<locals>.log_it©r   r   r   Nr   )r	   r
   r   r    r   r   r   Úbefore_sleep_log   s   r"   r!   )F)ÚtypingÚpip._vendor.tenacityr   ÚTYPE_CHECKINGÚloggingr   r   ÚintÚboolÚCallabler"   r   r   r   r   Ú<module>   s    
ýÿþýü