add-determinism 0.7.3

RPM buildroot helper to strip nondeterministic bits in files
Documentation
B

���^xc@s�ddlZddlZddlZddlZddlZddlZddlZddlZddddgZ	Gdd�de
�ZGdd�dej�Z
dd	�Zddd�Zdd
d�Zedkr�e�e��dS)�N�compile�main�PyCompileError�PycInvalidationModec@seZdZddd�Zdd�ZdS)r�cCst|j}|tkr2d�t�||��}|�dd|�}nd||f}t�||pJ||||�||_||_	||_
|pl||_dS)NrzFile "<string>"z	File "%s"z
Sorry: %s: %s)�__name__ZSyntaxErrorZjoin�	tracebackZformat_exception_onlyZreplace�	Exception�__init__�
exc_type_name�	exc_value�file�msg)�selfZexc_typerrr
r
ZtbtextZerrmsg�r�"/usr/lib64/python3.7/py_compile.pyr	.s
zPyCompileError.__init__cCs|jS�N)r
)rrrr�__str__>szPyCompileError.__str__N)r)r�
__module__�__qualname__r	rrrrrrs
c@seZdZdZdZdZdS)r�iiN)rrr�	TIMESTAMP�CHECKED_HASHZUNCHECKED_HASHrrrrrBscCs(tj�d�rtj�d�stjStjSdS)NZSOURCE_DATE_EPOCHZRPM_BUILD_ROOT)�osZenvironZgetrrrrrrr�_get_default_invalidation_modeHsrF�����c
Cs�|dkrt�}|dkrL|dkr@|dkr*|nd}tjj||d�}ntj�|�}tj�|�rld}t|�|���n*tj�	|�r�tj�
|�s�d}t|�|���tj�d|�}|�
|�}	y|j|	|p�||d�}
WnVtk
�r}z6t|j||p�|�}|r�|�ntj�|jd	�dSWdd}~XYnXy tj�|�}
|
�r<t�|
�Wntk
�rTYnX|tjk�r�|�|�}tj�|
|d
|d�}n"tj�|	�}tj�|
||tjk�}tj� |�}tj�!|||�|S)Nrrr)�optimizationzc{} is a symlink and will be changed into a regular file if import writes a byte-compiled file to itzk{} is a non-regular file and will be changed into a regular one if import writes a byte-compiled file to itz<py_compile>)Z	_optimize�
ZmtimeZsize)"r�	importlibZutilZcache_from_sourcerZpathZislinkZFileExistsErrorZformatZexistsZisfileZ	machineryZSourceFileLoaderZget_dataZsource_to_coderrZ	__class__�sys�stderr�writer
�dirnameZmakedirsrrZ
path_statsZ_bootstrap_externalZ_code_to_timestamp_pyc�source_hashZ_code_to_hash_pycrZ
_calc_modeZ
_write_atomic)rZcfileZdfile�doraiseZoptimizeZinvalidation_moderr
ZloaderZsource_bytesZcodeZerrZpy_excr!Zsource_statsZbytecoder"ZmoderrrrPsV+


cCs"|dkrtjdd�}d}|dgkr�x�tj��}|s6P|�d�}yt|dd�Wq&tk
r�}zd}tj�d|j	�Wdd}~XYq&t
k
r�}zd}tj�d|�Wdd}~XYq&Xq&WnZxX|D]P}yt|dd�Wq�tk
�r}zd}tj�d|j	�Wdd}~XYq�Xq�W|S)Nrrz-rT)r#z%s
)rZargvZstdinZreadlineZrstriprrrr r
ZOSError)ZargsZrvZfilenameZerrorrrrr�s0


"(
(Z__main__)NNFrNr)ZenumZimportlib._bootstrap_externalrZimportlib.machineryZimportlib.utilrZos.pathrrZ__all__rrZEnumrrrrrZexitrrrrZ<module>s 0
]
&