add-determinism 0.7.3

RPM buildroot helper to strip nondeterministic bits in files
Documentation
�

��Vc\)cs|�ddlZddlZddlZddlZddlmZGd�d��Ze��Zdd�Ze�	de��d�Z
d	���D]Ze�	ee
���[d
�Z
d���D]Ze�	deze
���[d
�Ze�	de��d�Zd�Zd�Zd�Z			dd�Ze�ee��			dd�Ze�ejje��			dd�ZeeefD]Ze�ee���[dS)�N)�
quoprimimecs2�eZdZd�Zd�Zd�Zd�Zd�Zd�ZdS)�ContentManagercs"�i|_i|_dS�N)�get_handlers�set_handlers)�self� �-/usr/lib64/python3.11/email/contentmanager.py�__init__zContentManager.__init__	s����������c��||j|<dSr)r)r�key�handler�   r�add_get_handlerzContentManager.add_get_handler
s��!(���#���r
cs0�|���}||jvr|j||g|�Ri|��S|���}||jvr|j||g|�Ri|��Sd|jvr|jd|g|�Ri|��St|���)N�)Zget_content_typer�get_content_maintype�KeyError)r�msg�args�kwZcontent_type�maintype�      r�get_contentzContentManager.get_contents����+�+�-�-���4�,�,�	E�2�4�$�\�2�3�D��D�D�D��D�D�D��+�+�-�-���t�(�(�	A�.�4�$�X�.�s�@�T�@�@�@�R�@�@�@�
��"�"�	;�(�4�$�R�(��:�t�:�:�:�r�:�:�:��|�$�$�$r
crr)r)rZtypekeyr
rr�add_set_handlerzContentManager.add_set_handlers��%,���'�"�"�"r
cs��|���dkrtd���|�||��}|���|||g|�Ri|��dS)NZ	multipartz"set_content not valid on multipart)rZ	TypeError�_find_set_handlerZ
clear_content)rr�objrrr
rr�set_contentzContentManager.set_contents|���#�#�%�%��4�	B��@�A�A�A��(�(��c�2�2�����������S�&�4�&�&�&�2�&�&�&�&�&r
cs��d}t|��jD]�}||jvr|j|cS|j}t	|dd��}|rd�||f��n|}|�|}||jvr|j|cS||jvr|j|cS|j}||jvr|j|cS��d|jvr
|jdSt|���)N�
__module__rz.)ZtypeZ__mro__r�__qualname__Zgetattr�join�__name__r)	rrrZfull_path_for_error�typZqnameZmodnameZ	full_path�name�	         rrz ContentManager._find_set_handler's0��"����9�9�$�	/�	/�C��d�'�'�
.��(��-�-�-�-��$�E��c�<��4�4�G�6=�H����'�5�!1�2�2�2�5�I�"�
0�&/�#��D�-�-�
4��(��3�3�3�3���)�)�
0��(��/�/�/�/��<�D��t�(�(�
/��(��.�.�.�.�
/��4�$�$�	+��$�T�*�*��*�+�+�+r
N)	r rrr	rrrrr�r
rrrsn���������)�)�)�	%�	%�	%�-�-�-�'�'�'�,�,�,�,�,r
r�replacecs��|�d���}|�dd��}|�||���S)NT��decode�charsetZASCII)�errors)�get_payloadZ	get_paramr')rr)Zcontentr(s    r�get_text_contentr+@s>���o�o�T�o�*�*�G��m�m�I�w�/�/�G��>�>�'�&�>�1�1�1r
�textcs.�|�d���S)NTr&�r*�rrr�get_non_text_contentr/Gs���?�?�$�?�'�'�'r
zaudio image video applicationcs,�|�d��S�Nrr-r.rr�get_message_contentr1Ns���?�?�1���r
zrfc822 external-bodyzmessage/csF�t|�d����Sr0)�bytesr*r.rr�%get_and_fixup_unknown_message_contentr3Us�������#�#�$�$�$r
�messagecs���d�||f��|d<|r�t|dd��s|j��fd�|D��}	|D] }|jr
|jd�|||j<�!dS#t
jj$rA}td�	|�
|j�������|�d}~wwxYwdS)Nz/zContent-Typerr"csL��g|] }�j��|g�����!Sr$)Zheader_factoryZheader_source_parse)�.0�header�mps  �rz
<listcomp>z _prepare_set.<locals>.<listcomp>fsC���.�.�.�!�)�r�(�"�*@�*@�&��*J�*J�K�.�.�.r
zInvalid header: {})�policy)rZhasattrr8Zdefectsr"�emailr)ZHeaderDefect�
ValueError�formatZfold)rr�subtype�headersr6Zexcr7s      @r�_prepare_setr>as'����(�(�H�g�#6�7�7�C����J��w�q�z�6�*�*�	.���B�.�.�.�.�%,�.�.�.�G�	J�!�
*�
*���>�,� �.��+�+�#)��F�K� � �
*�
*���|�(�	J�	J�	J��1�8�8� &���3�:�� >� >�@�@�A�A�FI�
J�����	J����J�Js�
#A/�/C�<B?�?Ccs��|�|�d}|�||d<|�|�d|dd���|�||d<|�0|���D]\}}|�||���dSdS)NZ
attachmentzContent-Disposition�filenameT)r6r%z
Content-ID)�	set_paramZitems)r�dispositionr?�cid�paramsrZvalues       r�
_finalize_setrDrs����#�x�#�"���1�%0��!�"��$��
�
�j��2�"�	�	$�	$�	$�� ���L��
�&� �,�,�.�.�	&�	&�J�C���M�M�#�u�%�%�%�%�&�&�	&�	&r
cs�g}|dzdz}tdt|��|��D]I}||||z�}|�tj|���d�����Jd�|��S)Niir�asciir)Zrange�lenZappend�binascii�
b2a_base64r'r)�data�max_line_lengthZ
encoded_linesZunencoded_bytes_per_lineZiZthislinerr�_encode_base64rK�s����M�.�!�3�a�7��
�1�c�$�i�i�!9�
:�
:�L�L����!�4�4�4�5�����X�0��:�:�A�A�'�J�J�K�K�K�K�
�7�7�=�!�!�!r
csd��|�|�����}|j�d����fd�}d�}|��td�|D��d���|jkr]	d||���d��fS#t$rYnwxYw|jdkr!d||���dd	��fS||dd
���}tj	|�d��|j��}tj|��}	t|��t|	��krd}nd
}t|��d
kr||fS|dkr||���d��}
n�|dkr ||���dd	��}
n�|d
kr7tj	||���d��|j��}
nG|dkrt||��|j��}
n"td�|�����||
fS)NrEcs4����|���zSr�r)�lines�lineseps �r�
embedded_bodyz#_encode_text.<locals>.embedded_body�s���W�\�\�%�%8�%8�7�%B�Br
cs2�d�|��dzS)Ns
rL)rMrr�normal_bodyz!_encode_text.<locals>.normal_body�s��5�:�:�e�#4�#4�u�#<�<r
c3s4K�|]}t|��V��dSr)rF)r5Zxs  rz	<genexpr>z_encode_text.<locals>.<genexpr>�s(����&�&�1��A���&�&�&�&�&�&r
r)Zdefault�7bit�8bit�surrogateescapei
zlatin-1�base64�quoted-printablez$Unknown content transfer encoding {})ZencodeZ
splitlinesrNZmaxrJr'ZUnicodeDecodeErrorZcte_typerZbody_encoderGrHrFrKr:r;)�stringr(�cter8rMrOrPZsniffZsniff_qpZsniff_base64rIrNs           @r�_encode_textrX�s�����M�M�'�"�"�-�-�/�/�E��n�#�#�G�,�,�G�B�B�B�B�B�<�<�<�
�%��&�&��&�&�&��2�2�2�f�6L�L�	U�
��{�{�5�1�1�8�8��A�A�A�A��%�
�
�
���
������&�(�
U��{�{�5�1�1�8�8��BS�T�T�T�T��
�e�C�R�C�j�)�)���)�%�,�,�y�*A�*A�*0�*@�B�B���*�5�1�1���x�=�=�3�|�,�,�,�	%��C�C�$�C��5�z�z�R��
%��H�}�$�
�f�}�
M��{�5�!�!�(�(��1�1���	���M��{�5�!�!�(�(��2C�D�D���	�"�	"�M��%�k�k�%�&8�&8�&?�&?�	�&J�&J�&,�&<�>�>���	���M��m�m�E�2�2�F�4J�K�K����?�F�F�s�K�K�L�L�L���9�s�3B�
B �B �plain�utf-8c
s.�t|d||	��t||||j��\}}
|�|
��|�dt
jj�||��d���||d<t|||||��dS)Nr,r(T�r%�Content-Transfer-Encoding)
r>rXr8�set_payloadr@r9r(ZALIASESZgetrD)rrVr<r(rWrAr?rBrCr=Zpayloads           r�set_text_contentr^�s�����f�g�w�/�/�/�����c�j�A�A�L�C���O�O�G�����M�M�)��-�'�+�+�G�W�=�=��� � � �(+�C�#�$��#�{�H�c�6�:�:�:�:�:r
�rfc822c	s|�|dkrtd���|dkr-|dvr"td�|�����|�dn|}n3|dkr)|dvr"td	�|�����d
}n|�d
}t|d||��|�|g��||d<t	|||||��dS)
NZpartialz4message/partial is not supported for Message objectsr_)NrQrR�binaryz*message/rfc822 parts do not support cte={}rRz
external-body)NrQz1message/external-body parts do not support cte={}rQr4r\)r:r;r>r]rD)	rr4r<rWrAr?rBrCr=r#r�set_message_contentra�s���)��Q��O�P�P�P��(����6�6�	J��<�C�C�C�H�H�J�J�
J��,�f�f����	�O�	#�	��n�$�	Q��C�J�J�3�O�O�Q�Q�
Q����	������i��'�2�2�2��O�O�W�I����'*�C�#�$��#�{�H�c�6�:�:�:�:�:r
rTc
s��t||||	��|dkrt||jj���}nj|dkr.t	j|ddd���}|�d��}n6|dkr|�d��}n|d	vr|�dd
��}|�|��||d<t|||||��dS)NrT)rJrUFT)Zistextr6Z	quotetabsrErQ)rRr`rSr\)	r>rKr8rJrGZb2a_qpr'r]rD)
rrIrr<rWrAr?rBrCr=s
          r�set_bytes_contentrb�s�����h���1�1�1�
�h��7��d�C�J�4N�O�O�O���	�"�	"�	7���t�E�%�4�P�P�P���{�{�7�#�#���	���7��{�{�7�#�#���	�"�	"�7��{�{�7�$5�6�6���O�O�D����'*�C�#�$��#�{�H�c�6�:�:�:�:�:r
r[)rYrZNNNNNN)r_NNNNNN)rTNNNNN)rGZ
email.charsetr9Z
email.messageZemail.errorsrrZraw_data_managerr+rr/Zsplitrr1r<r3r>rDrKrXr^rZstrrar4ZMessagerbr2Z	bytearrayZ
memoryviewr!r$r
r�<module>rcs�������������������������3,�3,�3,�3,�3,�3,�3,�3,�l"�>�#�#��2�2�2�2�� � ��)9�:�:�:�(�(�(�/�5�5�7�7�E�E�H��$�$�X�/C�D�D�D�D�����%�+�+�-�-�N�N�G��$�$�Z��%7�9L�M�M�M�M��%�%�%�� � ��!F�H�H�H�J�J�J�"&�&�&�*"�"�"�$�$�$�NIM�:>�*.�
;�
;�
;�
;�� � ��&6�7�7�7�=A�<@�,0�;�;�;�;�<� � ���!6�8K�L�L�L�9A�:>�*.�;�;�;�;�&
�9�j�)�=�=�C��$�$�S�*;�<�<�<�<��C�Cr