
    df	                     P    d Z ddlmZ dZdZ	 defdZdefdZdedeed	f   fd
Z	y)z@The `version` module holds the version information for Pydantic.    )Tuple)VERSIONversion_infoz2.4.2returnc                  P    dj                  t        j                  d      dd       S )zmReturn the `major.minor` part of Pydantic version.

    It returns '2.1' if Pydantic version is '2.1.1'.
    .N   )joinr   split     I/home/api-vastappli/venv/lib/python3.12/site-packages/pydantic/version.pyversion_shortr   
   s#    
 88GMM#&r*++r   c            	      <   ddl } ddl}ddlm} ddlm} |j                  dk\  rddlm} nddl	}h d}g }|j                         D ]6  }|j                  d   }||v s|j                  | d|j                          8 t        |j                  t        |dd      xs |j                    |t"              j%                         j&                  |j                  | j                         d	j)                  |      d
}	dj)                  d |	j+                         D              S )zFReturn complete version information for Pydantic and its dependencies.r   N)Path)      >   email-validatorpydantic-settingspydantic-extra-typesmypyfastapipyrighttyping_extensionsName-
build_info )zpydantic versionzpydantic-core versionzpydantic-core buildzinstall pathzpython versionplatformzrelated packages
c              3   ~   K   | ]5  \  }}d j                  |dz   t        |      j                  dd             7 yw)z	{:>30} {}:r    r   N)formatstrreplace).0kvs      r   	<genexpr>zversion_info.<locals>.<genexpr>9   s7     ePTPQST[''CQc1JKes   ;=)r   syspathlibr   pydantic_core._pydantic_core_pydantic_corer   importlib.metadatametadataimportlib_metadatadistributionsappendversionr   __version__getattrbuild_profile__file__resolveparentr
   items)
r   r*   r   pdcr0   package_namesrelated_packagesdistnameinfos
             r   r   r      s    .
6!7!M "002 >}}V$= ##tfAdll^$<=> $!$&sL$?T3CTCTX..077++%%'HH%56D 99eX\XbXbXdeeer   r3   .c                 v    t        t        t        | j                  d      d   j	                  d                  S )a  Parse mypy string version to tuple of ints.

    This function is included here rather than the mypy plugin file because the mypy plugin file cannot be imported
    outside a mypy run.

    It parses normal version like `0.930` and dev version
    like `0.940+dev.04cac4b5d911c4f9529e6ce86a27b44f28846f5d.dirty`.

    Args:
        version: The mypy version string.

    Returns:
        A tuple of ints. e.g. (0, 930).
    +r   r   )tuplemapint	partitionr   )r3   s    r   parse_mypy_versionrG   <   s1     S'++C0399#>?@@r   N)
__doc__typingr   __all__r   r$   r   r   rE   rG   r   r   r   <module>rK      sQ    F 
#
 ,s ,'fc 'fTA Ac3h Ar   