
    wi=
                        d dl m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 d dlmZ d dlmZ d dlmZ d d	lmZ ddZej        dd            ZdS )    )annotationsN)	Generator)IO)output)
FatalError)Store)cmd_output_b)force_bytesmsgstrret_codeintexcBaseException	formattedreturnNonec                   |  dt          |          j         d                                t          |          z   }t	          j        |           t          ddd          \  }}}|                    d                                          }t                      j
        }t          j                            |d          }	t          j                    5 }
t          j        |t          j                  r;t	          j        d	|	            |
                    t)          |	d
                    }n(t	          j        d|	            t*          j        j        }t1          j        t          j        |          }t1          j        t          j        |          } |d            |              |d            |dt4          j                     |d|             |d           t*          j                                        D ]} |d|             |dt*          j                     |dt          j                     |dt*          j                      |d            |              |d            |              |d            ||            |d            |              |d            ||                                            |d           d d d            n# 1 swxY w Y   tC          |          )Nz: gitz	--versionF)checkbackslashreplace)errorszpre-commit.logzCheck the log at wbzFailed to write to log at )streamz### version informationz```zpre-commit version: zgit --version: zsys.version:z    zsys.executable: z	os.name: zsys.platform: z### error information)"type__name__encoder
   r   write_line_br	   decoderstripr   	directoryospathjoin
contextlib	ExitStackaccessW_OK
write_lineenter_contextopensysstdoutbuffer	functoolspartialCVERSIONversion
splitlines
executablenameplatform
SystemExit)r   r   r   r   	error_msg_git_version_bgit_versionstoredirlog_pathctxlog	_log_line_log_line_blines                  h/root/.openclaw/workspace/chatterbox_venv_py311/lib/python3.11/site-packages/pre_commit/error_handler.py_log_and_exitrE      sh    00$s)),0007799K<L<LLI
	"""&ukGGGA}a&&.@&AAHHJJKww Hw||H&677H				 !39Xrw'' 	$<(<<=== ..tHd/C/CDDCCE8EEFFF*#C%f&7DDD	'(;CHHH	+,,,		%	444555	1K11222	.!!!K**,, 	% 	%DImTmm$$$$	5S^55666	'bg''(((	13<11222	%		)***		%I	%		%	)""$$%%%	%C! ! ! ! ! ! ! ! ! ! ! ! ! ! !D X

s   HK44K8;K8Generator[None]c               #    K   	 d V  d S # t           t          f$ ri} t          | t                    rd\  }}n t          | t                    rd\  }}nd\  }}t	          ||| t          j                               Y d } ~ d S d } ~ ww xY w)N)zAn error has occurred   )zInterrupted (^C)   )z An unexpected error has occurred   )	ExceptionKeyboardInterrupt
isinstancer   rE   	traceback
format_exc)er   r   s      rD   error_handlerrQ   F   s      	@() @ @ @a$$ 	B6MC,-- 	B3MCAMCc8Q	(<(>(>?????????@s   
 BAA??B)
r   r   r   r   r   r   r   r   r   r   )r   rF   )
__future__r   r%   r/   os.pathr"   r,   rN   collections.abcr   typingr   pre_commit.constants	constantsr1   
pre_commitr   pre_commit.errorsr   pre_commit.storer   pre_commit.utilr	   r
   rE   contextmanagerrQ        rD   <module>r_      s&   " " " " " "          



     % % % % % %                         ( ( ( ( ( ( " " " " " " ( ( ( ( ( ( ' ' ' ' ' '0 0 0 0f 
@ 
@ 
@ 
@ 
@ 
@r^   