o
    in                     @   s,   d dl Z d dlZdd Zdd Zdd ZdS )    Nc                 C   s2   |  d}|ddg  dd }tdd |D S )z
        Take a string version and conver it to a tuple (for easier comparison), e.g.:

            "1.2.3" --> (1, 2, 3)
            "1.2" --> (1, 2, 0)
            "1" --> (1, 0, 0)
    .   0Nc                 s   s    | ]}t |V  qd S )N)int).0x r   Q/var/www/edux/Edux_v2/venv/lib/python3.10/site-packages/flask_sqlalchemy/utils.py	<genexpr>   s    z parse_version.<locals>.<genexpr>)splittuple)vpartsr   r   r	   parse_version   s   
r   c                 C   sp   t tj}t |}| dv sJ d| | dkr||k S | dkr$||kS | dkr,||kS | dkr4||kS ||kS )N)<><=>=z==zop {} not supportedr   r   r   r   )r   
sqlalchemy__version__format)opvalsa_ver
target_verr   r   r	   sqlalchemy_version   s   
r   c                 C   s*   | | d urt d|||t d S d S )NzpThe `{}` config option is deprecated and will be removed in v{}.  Use `SQLALCHEMY_ENGINE_OPTIONS['{}']` instead.)warningswarnr   DeprecationWarning)configversiondeprecated_config_keyengine_optionr   r   r	   engine_config_warning&   s   
r#   )r   r   r   r   r#   r   r   r   r	   <module>   s
    