
    {Kg	                     N    d Z ddlZddlZddlmZ ddlmZ ddlmZ d Z	d	 Z
d
 Zy)z_
Utility methods to print system info for debugging

adapted from :func:`pandas.show_versions`
    N)threadpool_info   )__version__   )_openmp_parallelism_enabledc                      t         j                  j                  dd      } d| fdt         j                  fdt	        j                         fg}t        |      S )zsSystem information

    Returns
    -------
    sys_info : dict
        system and Python version information

    
 python
executablemachine)sysversionreplacer   platformdict)r   blobs     `/home/alanp/www/video.onchill/myenv/lib/python3.12/site-packages/sklearn/utils/_show_versions.py_get_sys_infor      sT     [[  s+F 
6	s~~&	H%%'(D :    c                  t    g d} dt         i}ddlm}m} | D ]  }	  ||      ||<    |S # |$ r d||<   Y w xY w)a,  Overview of the installed version of main dependencies

    This function does not import the modules to collect the version numbers
    but instead relies on standard Python package metadata.

    Returns
    -------
    deps_info: dict
        version information on relevant Python libraries

    )	pip
setuptoolsnumpyscipyCythonpandas
matplotlibjoblibthreadpoolctlsklearnr   )PackageNotFoundErrorr   N)r   importlib.metadatar"   r   )deps	deps_infor"   r   modnames        r   _get_deps_infor'   &   s^    
D 	;I A	&!(!1Ig 
  $ 	&!%Ig	&s   *
77c                  d   t               } t               }t        d       | j                         D ]!  \  }}t        dj	                  ||             # t        d       |j                         D ]!  \  }}t        dj	                  ||             # t        dj	                  dt                            t               }|rnt                t        d       t        |      D ]J  \  }}|j                         D ]  \  }}t        |d	d
|         |t        |      dz
  k7  sAt                L yy)zPrint useful debugging information"

    .. versionadded:: 0.20

    Examples
    --------
    >>> from sklearn import show_versions
    >>> show_versions()  # doctest: +SKIP
    z
System:z{k:>10}: {stat})kstatz
Python dependencies:z{k:>13}: {stat}z
{k}: {stat}zBuilt with OpenMPzthreadpoolctl info:z>15z: r   N)	r   r'   printitemsformatr   r   	enumeratelen)	sys_infor%   r)   r*   threadpool_resultsiresultkeyvals	            r   show_versionsr6   L   s    H I	+>>#4&&&67 $ 

"#??$4&&&67 % 
!(C(E 	 	
 )*#$"#56IAv"LLNSS	C5)* +C*+a//	 7	 r   )__doc__r   r   r    r    r   _openmp_helpersr   r   r'   r6    r   r   <module>r;      s+     
 )  8(#L&r   