add-determinism 0.7.3

RPM buildroot helper to strip nondeterministic bits in files
Documentation
�

�Wc�$��&�	ddlZddlZddlZddgZdZej
eed��d�Zejd�jZ
Gd	�d
e�Zd�Z
d�Zd
�Zd�Zd�Zd�Zddgfd�Zdd�Zgfd�Zd�Zd�Zd�Zedkr
e�dSdS)�N�getcaps�	findmatchztThe {name} module is deprecated and will be removed in Python {remove}. See the mimetypes module for an alternative.)��
)�removec�"�d|vr
d|dfSdS)N�linenor)�r�)�entrys � /usr/lib64/python3.12/mailcap.py�lineno_sort_keyrs!���5����%��/�!�!��t�z[^\xa1-\U0010FFFF\w@+=:,./-]c��eZdZdS)�UnsafeMailcapInputN)�__name__�
__module__�__qualname__rrr
rrs������3�3rrc� �	i}d}t�D]^}	t|d�}|5t||�\}}ddd�j	�D]\}}||vr|||<�|||z||<��`|S#t$rY�nwxYw#1swY�LxYw)Nr�r)�listmailcapfiles�open�OSError�_readmailcapfile�items)�capsr	�mailcap�fp�morecaps�key�values       r
rrs����D�
�F�#�%�.�.��	��g�s�#�B��	<�	<�/��F�;��H�f�	<�	<�	<�	<�	<�"�.�.�*�	.�	.�J�C���$�;�;�!��S�	�	� ��I��-��S�	�	�		.�
�K���	�	�	��H�	����	<�	<�	<�	<�	<�	<�	<�	<�	<���s�A4�B�4
B�B�B
	c��	dtjvr:tjd}|jtj�}|Sdtjvrtjd}nd}|dzdddg}|S)N�MAILCAPS�HOME�.z	/.mailcapz/etc/mailcapz/usr/etc/mailcapz/usr/local/etc/mailcap)�os�environ�split�pathsep)�pathstr�mailcaps�homes   r
rr9s��A��R�Z�Z����*�*�Z�(���=�=����,���O��R�Z�Z����:�:�f�%�D�D��D��;�&��"�$<�>���Orc�f�	tjdtd�t|d�\}}|S)Nz2readmailcapfile is deprecated, use getcaps instead�)�warnings�warn�DeprecationWarningr)rr�_s   r
�readmailcapfiler3Ks3��I��M�M�F�$�a�)�)��r�4�(�G�D�!��Krc�@�	i}	|j�}|s	||fS|ddks|j�dkr�;|}|dddkr'|j�}|sd}|dd|z}|dddkr�'t|�\}}|r|s��|�
||d<|dz
}|jd	�}t	t|��D]}||j�||<�d	j
|�j�}||vr||j|�n|g||<��)
Nr
r�#������z\
�
r	�/)	�readline�strip�	parseliner(�range�len�join�lower�append)	rr	r�line�nextliner �fields�types�js	         r
rrSsU����D�
��{�{�}���t�U�6��<��3��7�c�>�>�T�Z�Z�\�R�/�/�����r�s�m�v�%�%��{�{�}�H��8��X����9�x�'�D��r�s�m�v�%�%��
 ��o���V��������%�F�8���a�K�F��	�	�#����s�5�z�"�	(�	(�A��Q�x�~�~�'�E�!�H�H��h�h�u�o�#�#�%���$�;�;���I���V�$�$�$���D��I�9rc��	g}dt|�}}||kr0t|||�\}}|j|�|dz}||kr�0t|�dkrdS|d|d|dd}}}d|i}|D]T}|jd�}|dkr|}d}	n+|d|j	�}||dzdj	�}	||vr�P|	||<�V||fS)Nrr
r.�NN�view�=r6)r>�
parsefieldrA�findr;)
rBrD�i�n�fieldr rI�rest�fkey�fvalues
          r
r<r<|s���
�F��c�$�i�q�A�
�a�%�%��d�A�q�)���q��
�
�e���
�a�C���a�%�%���6�{�Q����z��Q�i����F�1�2�J�t��C��d�^�F��"�"���J�J�s�O���q�5�5��D��F�F���!�9�?�?�$�D��1�Q�3�4�[�&�&�(�F��6�>�>��!�F�4�L�L���;�rc��	|}||kr'||}|dkrn|dkr|dz}n|dz}||kr�'|||j�|fS)N�;�\r.r
)r;)rBrMrN�start�cs     r
rKrK�sm��9�
�E�
�a�%�%���G����8�8��
�$�Y�Y��!��A�A��!��A��a�%�%����a�=��� �!�#�#rrIz	/dev/nullc�F�	t|�r%d|�d�}tj|t�dSt	|||�}|D]Z}d|vr6t|d||�}|��|rt
j|�dkr�=t|||||�}	|	��V|	|fcSdS)Nz&Refusing to use mailcap with filename z . Use a safe temporary filename.rH�testr)�_find_unsafer/r0r�lookup�substr&�system)
r�MIMEtyper �filename�plist�msg�entries�erY�commands
          r
rr�s�����H����\d�\d�\d�f���
�
�c�-�.�.��z��T�8�S�)�G�
�	�	���Q�;�;���6��H�e�4�D��|���t��	�	�$��1�,�,����#���(�E�:������A�:�����:rc����g}||vr|||z}|jd�}|ddz}||vr|||z}���fd�|D�}t|t��}|S)Nr9rz/*c� ��g|]	}�|vs�|��Srr)�.0rcr s  �r
�
<listcomp>zlookup.<locals>.<listcomp>�s ���2�2�2�������1�1�1�2r)r )r(�sortedr)rr^r rb�	MIMEtypess  `  r
r[r[�s�����G��4����D��N�*�����s�#�I���|�d�"�H��4����D��N�*��
��2�2�2�2�g�2�2���W�/�2�2�G��Nrc�~�d}dt|�}}||k�r$||}|dz}|dkr|dkr
|||dz}|dz}||z}n�||}|dz}|dkr||z}n�|dkr||z}n�|dkr8t|�r%d|�d	�}tj|t�dS||z}n�|d
kr|}	||kr$||dkr|dz}||kr
||dkr�||	|}
|dz}t|
|�}t|�r(d|�d
|
�d�}tj|t�dS||z}n|dz|z}||kr��$|S)Nr6rr
�%rU�s�tz!Refusing to substitute MIME type z into a shell command.�{�}z!Refusing to substitute parameter z (z) into a shell command)r>rZr/r0r�	findparam)rOr^r_r`�resrMrNrWrarV�name�params            r
r\r\�s���
�C��c�%�j�q�A�
�a�%�%��!�H��!�A�#�a���8�8��D�y�y��!�A�a�C�L��a��c�!���'�C�C��a��A�a��c�!��C�x�x��A�g����c����H�n����c�����)�)�)�Ya�Ya�Ya�c�C��M�M�#�'9�:�:��4��H�n����c������!�e�e��a��C����!��A��!�e�e��a��C�����U�1�~���a�C��!�$��.����&�&�&�]b�]b�]b�dh�dh�dh�i�C��M�M�#�'9�:�:��4��E�k���
�C�i�!�m��E�a�%�%��F�Jrc��|j�dz}t|�}|D]!}|d|j�|ks�||dcSdS)NrJr6)r@r>)rsr`rN�ps    r
rqrq�sV���:�:�<�#��D��D�	�A�
�����R�a�5�;�;�=�D� � ���Q�R�5�L�L�L�
�2rc�$�ddl}t�}|jddst|�dSt	dt|j�d�D]�}|j||dz}t|�dkrt
d�dS|d}|d}t||d|�\}}|st
dt��ot
d|�tj|�}tj|�}|s��t
d|���dS)	Nrr
r.z"usage: mailcap [MIMEtype file] ...rIzNo viewer found forz
Executing:zExit status:)�sysr�argv�showr=r>�printr�typer&r]�waitstatus_to_exitcode)	rxrrM�argsr^�filerdrc�stss	         r
rYrYs	���J�J�J��9�D��8�8�A�B�<�<��T�
�
���
�1�c�#�(�(�m�Q�
'�+�+���x�x��!�A�#����t�9�q�=�=��6�7�7��F�F���7���A�w���t�X�v�t�<�
����w��'��.�.�.��,��(�(��)�)�G�$�C��+�+�C�0�C��s���n�c�*�*�*�+�+rc��td�t�D]}td|z��t�|st�}td�t�t|�}|D]S}t|�||}|D]8}t|�}|D]}td|z||��t��:�UdS)NzMailcap files:�	zMailcap entries:z  %-15s)r{rrri)r�fn�ckeysr|rbrc�keys�ks        r
rzrzs���	�
���� �2�2��%��r�	�"2�"2�"2�	�G�G��4��	��	�
���	�G�G��4�L�E�����
�d����t�*���	�	�A��!�9�D��
+�
+���i�!�m�Q�q�T�*�*�*��G�G�G�		��r�__main__)N)r&r/�re�__all__�_DEPRECATION_MSG�_deprecatedrr�compile�searchrZ�Warningrrrr3rr<rKrr[r\rqrYrzrrr
�<module>r�s���+�	�	�	�	�����	�	�	�	��[�
!��#������X�/��@�@�@�����r�z�z�9�:�A�A��4�4�4�4�4��4�4����4���$���'�'�'�R���>$�$�$� #)�;�b�����6����,.�'�'�'�'�R���+�+�+�.���"�z����D�F�F�F�F��r