a
    !f                  	   @   s(  d Z ddlZddlZzddlZW n ey6   dZY n0 ddlZejfddZdd Z	e
dkr$ddlZejdd	Zejd
ddd ejdddd ejdedg ddd ejdeddejdeddejdddddgddejdejd ejg deddd gZe	ee  dS )!zP
This script is used to generate test data for joblib/test/test_numpy_pickle.py
    Nc                 C   s(   dd |  dD }ddd |D S )zNormalize joblib version by removing suffix.

    >>> get_joblib_version('0.8.4')
    '0.8.4'
    >>> get_joblib_version('0.8.4b1')
    '0.8.4'
    >>> get_joblib_version('0.9.dev0')
    '0.9'
    c                 S   s   g | ]}t d |qS )z(\d+).*)rematch).0Zeach r   e/var/www/html/python-backend/venv/lib/python3.9/site-packages/joblib/test/data/create_numpy_pickle.py
<listcomp>   s   z&get_joblib_version.<locals>.<listcomp>.c                 S   s   g | ]}|d ur| dqS )N   )group)r   mr   r   r   r          )splitjoin)joblib_versionmatchesr   r   r   get_joblib_version   s    
r   c              
   C   s  i }|j }|j}t }dtj}dtj	dd d }|rL|dkrLdnd}|r|dkrjd|d< d	}	n|d
f|d< d|}	|j
rd|d< |d7 }nd}	d|||||	}
ztj| |
fi | W n6 ty } ztd|
|| W Y d }~nd }~0 0 td|
 d S )Nz{0[0]}{0[1]} r      zlibZ_compressedTcompressz.gz   z.pkl.{}r   
cache_sizeZ_cache_sizez.pklzjoblib_{}{}_pickle_py{}_np{}{}zCError: cannot generate file '{}' with arguments '{}'. Error was: {}z!File '{}' generated successfully.)r   methodr   formatsysversion_infor   np__version__r   r   joblibdump	Exceptionprint)	to_pickleargskwargsr   r   r   
py_versionZnumpy_versionbody	extensionZpickle_filenameer   r   r   write_test_pickle!   s6    


r)   __main__zJoblib pickle data generator.)descriptionz--cache_size
store_truez;Force creation of companion numpy files for pickled arrays.)actionhelpz
--compresszGenerate compress pickles.z--methodr   )r   gzipbz2xzlzmaZlz4zSet compression method.)typedefaultchoicesr.      z<i8)dtypez<f8r	   abcr   )abO   )r   r	   r   u   C'est l'été !)__doc__r   r   numpyr   ImportErrorr   r   r   r)   __name__argparseArgumentParserparseradd_argumentstrZaranger7   arrayZuint8tobytesmatrixr"   
parse_argsr   r   r   r   <module>   s<   
%

	