
    g	                    <    S r SSKJr  SrSr S	S jrS	S jrS
S jrg)z@The `version` module holds the version information for Pydantic.    )annotations)VERSIONversion_infoz2.10.6c                 P    SR                  [        R                  S5      SS 5      $ )zeReturn the `major.minor` part of Pydantic version.

It returns '2.1' if Pydantic version is '2.1.1'.
.N   )joinr   split     I/home/matz/Project1/venv/lib/python3.13/site-packages/pydantic/version.pyversion_shortr      s#    
 88GMM#&r*++r   c            	     Z   SSK Jn   SSKnSSKnSSKnSSKJn  SSKJn  SSK	J
n  1 Skn/ nU R                  5        H9  n	U	R                  S   n
X;   d  M  UR                  U
 SU	R                   35        M;     UR                  R                  UR                  R!                  UR                  R!                  ["        5      5      5      nUR%                  U5      (       a&  UR'                  5       (       a  UR)                  U5      OS	n[*        UR,                  [/        US
S5      =(       d    UR0                  U" ["        5      R3                  5       R4                  UR                  UR                  5       SR7                  U5      US.nSR7                  S UR9                  5        5       5      $ )zFReturn complete version information for Pydantic and its dependencies.r   N)Path   )_git>   mypyfastapipyrighttyping_extensionsemail-validatorpydantic-settingspydantic-extra-typesName-unknown
build_info )zpydantic versionzpydantic-core versionzpydantic-core buildzinstall pathzpython versionplatformzrelated packagescommit
c              3     #    U  H5  u  pS R                  US-   [        U5      R                  SS5      5      v   M7     g7f)z	{:>30} {}:r!   r   N)formatstrreplace).0kvs      r   	<genexpr>version_info.<locals>.<genexpr>?   s9     eXdPTPQ[''CQc1JK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      sJ   3.&M "002}}V$ ##tfAdll^$<= 3
 77??277??277??83L#MNL*-//,*G*GCLLNN&`i 
 $!$&sL$?T3CTCTX..077++%%'HH%56$	D 99eX\XbXbXdeeer   c                v    [        [        [        U R                  S5      S   R	                  S5      5      5      $ )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
   )r6   s    r   parse_mypy_versionrT   B   s1     S'++C0399#>?@@r   N)returnr%   )r6   r%   rU   ztuple[int, int, int])	__doc__
__future__r   _annotations__all__r   r   r   rT   r   r   r   <module>rZ      s*    F 2
#
 ,,f^Ar   