a
    1$e                     @   sH   d Z ddlZddlZddlZdd Zdd Zdd Zd	d
 Zdd Z	dS )z
Utility methods to print system info for debugging

adapted from :func:`sklearn.utils._show_versions`
which was adapted from :func:`pandas.show_versions`
    Nc                  C   s.   dt jddfdt jfdt fg} t| S )zoSystem information
    Return
    ------
    sys_info : dict
        system and Python version information
    python
 
executablemachine)sysversionreplacer   platformdict)blob r   Q/var/www/html/django/DPS/env/lib/python3.9/site-packages/pyproj/_show_versions.py_get_sys_info   s
    
r   c                  C   s   ddl } ddlm} ddlm} z| j }W n |yD   d}Y n0 d| jfd| jfd|fd| j	 fd	|d
fd|d d|d fd|d d|d dfd|d d|d dfd|d d|d dfg	}t
|S )zlInformation on system PROJ

    Returns
    -------
    proj_info: dict
        system PROJ information
    r   N)get_database_metadata)DataDirErrorpyprojZPROJzdata diruser_data_dirzPROJ DATA (recommended version)zPROJ_DATA.VERSIONzPROJ DatabasezDATABASE.LAYOUT.VERSION.MAJOR.zDATABASE.LAYOUT.VERSION.MINORzEPSG DatabasezEPSG.VERSIONz [z	EPSG.DATE]zESRI DatabasezESRI.VERSIONz	ESRI.DATEzIGNF DatabasezIGNF.VERSIONz	IGNF.DATE)r   Zpyproj.databaser   Zpyproj.exceptionsr   ZdatadirZget_data_dir__version__Z__proj_version__Zget_user_data_dirr   )r   r   r   data_dirr   r   r   r   _get_proj_info   sD    	





r   c                     s"   g d} dd   fdd| D S )zOverview of the installed version of main dependencies
    Returns
    -------
    deps_info: dict
        version information on relevant Python libraries
    )certifiCython
setuptoolspipc                 S   s,   zt j| W S  t jjy&   Y d S 0 d S )N)	importlibmetadatar   ZPackageNotFoundError)moduler   r   r   get_versionV   s    z#_get_deps_info.<locals>.get_versionc                    s   i | ]}| |qS r   r   ).0depr    r   r   
<dictcomp>\       z"_get_deps_info.<locals>.<dictcomp>r   )depsr   r#   r   _get_deps_infoM   s    r'   c                 C   s*   |   D ]\}}t|dd|  qdS )z Print the information dictionaryz>10z: N)itemsprint)Z	info_dictkeystatr   r   r   _print_info_dict_   s    r,   c                   C   s:   t d tt  t d tt  t d tt  dS )z
    .. versionadded:: 2.2.1

    Print useful debugging information

    Example
    -------
    > python -c "import pyproj; pyproj.show_versions()"

    zpyproj info:z
System:z
Python deps:N)r)   r,   r   r   r'   r   r   r   r   show_versionse   s    

r-   )
__doc__importlib.metadatar   r
   r   r   r   r'   r,   r-   r   r   r   r   <module>   s   1