
    4g	                    6    d Z ddlmZ dZdZ	 d	dZd	dZd
dZy)z@The `version` module holds the version information for Pydantic.    )annotations)VERSIONversion_infoz2.10.6c                 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     f/var/www/python.lazyprojects.co.uk/rdoDiscordBot/venv/lib/python3.12/site-packages/pydantic/version.pyversion_shortr      s#    
 88GMM#&r*++r   c            	     4   ddl m}  ddl}ddl}ddl}ddlm} ddlm} ddl	m
} h d}g }| j                         D ]6  }	|	j                  d   }
|
|v s|j                  |
 d|	j                          8 |j                  j                  |j                  j!                  |j                  j!                  t"                          }|j%                  |      r!|j'                         r|j)                  |      nd	}t*        |j,                  t/        |d
d      xs |j0                   |t"              j3                         j4                  |j                  |j                         dj7                  |      |d}dj7                  d |j9                         D              S )zFReturn complete version information for Pydantic and its dependencies.r   N)Path   )_git>   email-validatorpydantic-settingspydantic-extra-typesmypyfastapipyrighttyping_extensionsName-unknown
build_info )zpydantic versionzpydantic-core versionzpydantic-core buildzinstall pathzpython versionplatformzrelated packagescommit
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>?   s:     eXdPTPQST[''CQc1JKXds   ;=)importlib.metadatametadataosr   syspathlibr   pydantic_core._pydantic_core_pydantic_core	_internalr   distributionsappendversionpathabspathdirname__file__is_git_repohave_gitgit_revisionr   __version__getattrbuild_profileresolveparentr	   items)importlib_metadatar-   r   r.   r   pdcgitpackage_namesrelated_packagesdistnamepydantic_dirmost_recent_commitinfos                 r   r   r      sG   3.&M "002}}V$= ##tfAdll^$<= 3
 77??277??277??83L#MNL*-//,*GCLLN&`i 
 $!$&sL$?T3CTCTX..077++%%'HH%56$	D 99eX\XbXbXdeeer   c                v    t        t        t        | j                  d      d   j	                  d                  S )a>  Parse `mypy` string version to a 3-tuple of ints.

    It parses normal version like `1.11.0` and extra info followed by a `+` sign
    like `1.11.0+dev.d6d9d8cd4f27c52edac1f537e236ec48a01e54cb.dirty`.

    Args:
        version: The mypy version string.

    Returns:
        A triple of ints, e.g. `(1, 11, 0)`.
    +r   r   )tuplemapint	partitionr
   )r5   s    r   parse_mypy_versionrS   B   s1     S'++C0399#>?@@r   N)returnr%   )r5   r%   rT   ztuple[int, int, int])	__doc__
__future__r   _annotations__all__r   r   r   rS   r   r   r   <module>rY      s*    F 2
#
 ,,f^Ar   