Your IP : 3.144.83.68
�
\�bg� � �� � d Z ddlZddlZddlmZmZ ddlmZ ddlm Z ddlm
Z
n# e$ r
ded ed
dfd�Z
Y nw xY w ed� � Z
d
� Zdede
f deded
e
fd�Zdefd�Zd� ZdS )z2Convenience layer on top of stdlib's shutil and os� N)�Callable�TypeVar� )�py311)�log)�chmod�args�kwargs�returnc � � d S �N� )r r
s �c/builddir/build/BUILD/cloudlinux-venv-1.0.7/venv/lib/python3.11/site-packages/setuptools/_shutil.pyr r s � ��� �_Tc � � t j d| |� � t | |� � d S # t $ r }t j d|� � Y d }~d S d }~ww xY w)Nzchanging mode of %s to %ozchmod failed: %s)r �debugr �OSError)�path�mode�es r �attempt_chmod_verboser sv � ��I�)�4��6�6�6�)�
�d�D�������� )� )� )�� �$�a�(�(�(�(�(�(�(�(�(�����)���s �* �
A�A�A�func.�arg�excc � � | t j t j fv r5t j dk r%t |t
j � � | |� � S |�)zIshutils onexc callback to automatically call chmod for certain functions.�nt)�os�unlink�remove�namer �stat�S_IWRITE)r r r s r �_auto_chmodr$ sG � �
�� �2�9�%�%�%�"�'�T�/�/��c�4�=�1�1�1��t�C�y�y��
�Ir Fc �. � t j | ||� � S )zx
Similar to ``shutil.rmtree`` but automatically executes ``chmod``
for well know Windows failure scenarios.
)r �
shutil_rmtree)r �
ignore_errors�onexcs r �rmtreer) + s � �
��t�]�E�:�:�:r c �b � t j � | � � rt | fi |�� d S d S r
)r r �isdirr) )r �optss r �rmdirr- 3 s>