Viewing File: /opt/hc_python/lib/python3.12/site-packages/pre_commit/languages/__pycache__/ruby.cpython-312.pyc

�

i0i���ddlmZddlZddlZddlZddlZddlZddl	Z	ddl
mZddl
mZddl
mZddlmZddlmZddlmZddlmZdd	lmZdd
lmZddlmZddlmZd
Zej<Zej@Z!dd�Z"ejFd��dd��Z$						dd�Z%ejLdd��Z'dd�Z(						dd�Z)						dd�Z*								dd�Z+y)�)�annotationsN)�	Generator)�Sequence)�IO)�	lang_base)�
envcontext)�PatchesT)�UNSET)�Var)�Prefix)�CalledProcessError�rbenvc��tjjd�}|j|�j	d�S)Nzpre_commit.resources�rb)�	importlib�	resources�files�joinpath�open)�filenamers  �H/opt/hc_python/lib/python3.12/site-packages/pre_commit/languages/ruby.py�_resource_bytesiors3�����%�%�&<�=�E��>�>�(�#�(�(��.�.��)�maxsizec�H�td�dD��rytjS)Nc3�FK�|]}tj|����y�w�N)r�
exe_exists)�.0�exes  r�	<genexpr>z&get_default_version.<locals>.<genexpr>"s����
@���9����$��s�!)�ruby�gem�system)�all�C�DEFAULT�rr�get_default_versionr* s��
�
@��
@�@���y�y�rc�B�dtjj|d�fdtfdf}|dk(rB|dtjj|dd�tjtd�fffz
}n�|d|fdtjj|dd�tjtjj|d	�tjtjj|d�tjtd�fffz
}|d
vr|d|ffz
}|S)N�GEM_HOME�gems�GEM_PATH)�BUNDLE_IGNORE_CONFIG�1r%�PATH�bin�
RBENV_ROOT�shims>r%�default�
RBENV_VERSION)�os�path�joinr
�pathsepr)�venv�language_version�patchess   r�
get_env_patchr>(s
��

�R�W�W�\�\�$��/�0�	�U��%��G�
�8�#����G�G�L�L��v�u�5�r�z�z���K��
�
�	
��	�
�4� ���G�G�L�L��v�u�5�r�z�z��G�G�L�L��w�/�����G�G�L�L��u�-�r�z�z�3�v�;��
�	
�		
���4�4��_�&6�7�9�9���Nrc#�K�tj|t|�}tt	||��5d��ddd�y#1swYyxYw�wr)r�environment_dir�ENVIRONMENT_DIRrr>)�prefix�version�envdirs   r�in_envrEKs7����
�
&�
&�v���
H�F�	�M�&�'�2�	3�
�
4�	3�	3�s�1A
�A�	A
�A
�A
c��t|�5}tj|��5}|j|�ddd�ddd�y#1swY�xYw#1swYyxYw)N)�fileobj)r�tarfiler�
extractall)r�dest�bio�tfs    r�_extract_resourcerMRsC��	�8�	$��
�\�\�#�
&�"��M�M�$��'�
%�	$�
&�
&��
%�	$�s!�A�A�A�A	�A�Ac�R�tj|t|�}td|j	d��tj|j	d�|�|tjk7r9tjj|d�}td|�td|�yy)Nzrbenv.tar.gz�.r�pluginszruby-download.tar.gzzruby-build.tar.gz)rr@rArMr8�shutil�mover'r(r7r9)rBrCrD�plugins_dirs    r�_install_rbenvrTXs���
&�
&�v���
H�F��n�f�k�k�#�&6�7�
�K�K����G�$�f�-��!�)�)���g�g�l�l�6�9�5���0�+�>��-�{�;�rc��	tj|dd|f�y#t$rtj|dd|f�YywxYw)Nr�download�install)r�	setup_cmdr
)rBrCs  r�
_install_rubyrYhsG��C����F�W�j�'�$B�C���C����F�W�i��$A�B�C�s��"A�Ac��tj|t|�}|dk7rlt||�t	||�5tj
|d�|tjk7rt||�tj
|d�ddd�t	||�5tj
|ddg|jd����tj
|dddd	d
dtjj|d�d
tjj|dd�g	|jd��|���ddd�y#1swY��xYw#1swYyxYw)Nr%)r�init�-)r�rehashr$�buildz.gemspecrWz
--no-documentz--no-format-executablez--no-user-installz
--install-dirr-z--bindirr2z.gem)
rr@rArTrErXr'r(rY�starr7r8r9)rBrC�additional_dependenciesrDs    r�install_environmentrass,���
&�
&�v���
H�F��(���v�w�'�
�F�G�
$�
����(>�?��!�)�)�#��f�g�.�����(;�<�%�
���	 �����U�G�>�f�k�k�*�&=�>�	
�	�����y��!9�#�������f�f�!=��B�G�G�L�L����?�
����V�$�

�(?�

�
	
�	
!�	 �%�
$��
!�	 �s�AD=�BE	�=E�	E)r�str�returnz	IO[bytes])rcrb)r;rbr<rbrcr	)rBrrCrbrczGenerator[None])rrbrJrbrc�None)rBrrCrbrcrd)rBrrCrbr`z
Sequence[str]rcrd),�
__future__r�
contextlib�	functools�importlib.resourcesr�os.pathr7rQrH�collections.abcrr�typingr�pre_commit.constants�	constantsr'�
pre_commitr�pre_commit.envcontextrr	r
r�pre_commit.prefixr�pre_commit.utilr
rA�basic_health_check�health_check�basic_run_hook�run_hookr�	lru_cacher*r>�contextmanagerrErMrTrYrar)rr�<module>rxs"��"�����
��%�$�� � �,�*�'�%�$�.����+�+���#�#��/�
����Q��� �� �� �� �� �F������ �
<��
<��
<�
�
<� C��C��C�
�C�
��
�!$�
�?L�
�	�
r
Back to Directory File Manager