Sindbad~EG File Manager
�
Mٜg� �
�x � d dl mZ d dlZd dlZd dlmZ d dlZd dlmZ d dl m
Z
erd dlZi dd�dd�d d
�dd�d
d�dd�dd�dd�dd�dd�dd�dd�dd�dd�d d!�d"d#�d$d%�i d&d'�d(d)�d*d+�d,d-�d.d/�d0d1�d2d3�d4d�d5d6�d7d�d8d9�d:d;�d<d=�d>d?�d@d�dAdB�dCdD��d)dEdFdGdH��ZdIdJdKdLd$dMd4dNdOdP� Z
dSdQ�Z dT dUdR�Zy)V� )�annotationsN)�
TYPE_CHECKING)�find_stack_level)�Versionzadbc-driver-postgresqlz0.8.0zadbc-driver-sqlite�bs4z4.11.2�bloscz1.21.3�
bottleneckz1.3.6zdataframe-api-compatz0.1.7�fastparquetz 2022.12.0�fsspecz 2022.11.0�html5libz1.1�
hypothesisz6.46.1�gcsfs�jinja2z3.1.2�
lxml.etreez4.9.2�
matplotlibz3.6.3�numbaz0.56.4�numexprz2.8.4�odfpyz1.4.1�openpyxlz3.1.0�
pandas_gbqz0.19.0�psycopg2z2.9.6�pymysqlz1.0.2�pyarrowz10.0.1�
pyreadstatz1.2.0�pytestz7.3.2zpython-calamine�pyxlsbz1.0.10�s3fs�scipyz1.10.0�
sqlalchemyz2.0.0�tablesz3.8.0�tabulatez0.9.0�xarray�xlrdz2.0.1�
xlsxwriterz3.0.5z2022.7z2.3.0z5.15.9)� zstandard�tzdata�qtpy�pyqt5�beautifulsoup4�
Bottleneck�Jinja2�lxmlz
pandas-gbq�
SQLAlchemy�pytables) r r r r �odfr �python_calaminer r c � � t | dd � }|�t d| j � �� �| j dk( r|j � d }|S )N�__version__zCan't determine version for r r )�getattr�ImportError�__name__�split)�module�versions �B/usr/local/lib/python3.12/site-packages/pandas/compat/_optional.py�get_versionr: J sN � ��f�m�T�2�G����8����8I�J�K�K�
���*�$��-�-�/�!�$���N� c �8 � |dv sJ �t j | � }|�|n| }d|� d|� d|� d�} t j | � }| j d� d }|| k7 r|}t j | } n|} |�|nt j |� }
|
rkt | � }|r^t |� t |
� k rGd |
� d
|� d|� d�}|d
k( r%t j |t t � �� y|dk( rt |� �y|S # t $ r |dk( rt |� �Y yw xY w)aI
Import an optional dependency.
By default, if a dependency is missing an ImportError with a nice
message will be raised. If a dependency is present, but too old,
we raise.
Parameters
----------
name : str
The module name.
extra : str
Additional text to include in the ImportError message.
errors : str {'raise', 'warn', 'ignore'}
What to do when a dependency is not found or its version is too old.
* raise : Raise an ImportError
* warn : Only applicable when a module's version is to old.
Warns that the version is too old and returns None
* ignore: If the module is not installed, return None, otherwise,
return the module, even if the version is too old.
It's expected that users validate the version locally when
using ``errors="ignore"`` (see. ``io/html.py``)
min_version : str, default None
Specify a minimum version that is different from the global pandas
minimum version required.
Returns
-------
maybe_module : Optional[ModuleType]
The imported module, when found and the version is correct.
None is returned when the package is not found and `errors`
is False, or when the package's version is too old and `errors`
is ``'warn'`` or ``'ignore'``.
> �warn�raise�ignoreNzMissing optional dependency 'z'. z Use pip or conda to install �.r>