
    ji	,                     <   S r SSKrSSKrSSKJrJr  SSKJr  SSKJ	r	J
r
JrJr  SSKJr  SSKJr  SS	KJrJr   S4SSS\S
.S\\   S\\   S\\   S\\   S\	\   S\4S jjjr\" SS\S9S\S\S\4S j5       r\" SS9S 5       r\" SSS9S 5       r\" SS9S 5       r\" SS S9S! 5       r\" S"S S9S# 5       r\" S$SS9S5S% j5       r \" SS9S& 5       r!\" SS9S' 5       r"\" SS9S( 5       r#\" SS9S6S) j5       r$\" SS9S7S* j5       r%\" SS9S+ 5       r&\" SS9S, 5       r'\" \RP                  S-SS9r(\" \RR                  S.SS9r)\" \RT                  S/SS9r*\" \RV                  S0SS9r+\" \RX                  S1SS9r,\" \RZ                  S2SS9r-\" \R\                  S3SS9r.g)8zA
Contains all deprecated functions.

.. autofunction: deprecated
    N)partialwraps)	FrameType)TypeCallableOptionalcast   )cli)Version)	DecoratorFreplaceversionremovecategoryfuncr   r   r   r   returnc                   ^ ^^^^ T c  [        [        TTTTS9$ [        T 5      S[        S[        4   4UU UUU4S jj5       nU$ )a&  
Decorates a function to output a deprecation warning.

:param func: the function to decorate
:param replace: the function to replace (use the full qualified
    name like ``semver.version.Version.bump_major``.
:param version: the first version when this function was deprecated.
:param category: allow you to specify the deprecation warning class
    of your choice. By default, it's  :class:`DeprecationWarning`, but
    you can choose :class:`PendingDeprecationWarning` or a custom class.
:return: decorated function which is marked as deprecated
r   r   .c                    > S/nT(       a  UR                  S5        T	(       d  UR                  S5        OUR                  [        T	5      5        T
(       a  UR                  S5        OUR                  S5        [        [        T5      R                  nT
=(       d    Un[        [
        [        [
        [        R                  " 5       5      R                  5      nSR                  U5      n[        R                  " UR                  X4TS9T[        R                  " UR                  5      UR                  S9  AT" U 0 UD6$ )	Nz$Function 'semver.{f}' is deprecated.zDeprecated since version {v}. z*This function will be removed in semver 3.zUse {r!r} instead.z0Use the respective 'semver.Version.{r}' instead. )frv)r   filenamelineno)appendstrr	   r   __qualname__r   inspectcurrentframef_backjoinwarningswarn_explicitformatgetfilef_codef_lineno)argskwargsmsg_listr   r   framemsgr   r   r   r   r   s          2lib/python3.13/site-packages/semver/_deprecated.pywrapperdeprecated.<locals>.wrapper0   s    :;OO<=OOHIOOCK(OO01OONODM&&LqYY0D0D0F G N NOhhx JJ7J+__U\\2>>		
 T$V$$    )r   
deprecatedr   r   r   )r   r   r   r   r   r1   s   ````` r0   r4   r4      s[    * |
 	
 4[ %HS!V$4  %  %  %D Nr3   z3.0.0z$Still under investigation, see #258.)r   r   r   ver1ver2c                 L    [         R                  " U 5      R                  U5      $ )a  
Compare two versions strings.

.. deprecated:: 3.0.0
   The situation of this function is unclear and it might
   disappear in the future.
   If possible, use :meth:`semver.version.Version.compare`.
   See :gh:`258` for details.

:param ver1: first version string
:param ver2: second version string
:return: The return value is negative if ver1 < ver2,
         zero if ver1 == ver2 and strictly positive if ver1 > ver2

>>> semver.compare("1.0.0", "2.0.0")
-1
>>> semver.compare("2.0.0", "1.0.0")
1
>>> semver.compare("2.0.0", "2.0.0")
0
)r   parsecomparer5   r6   s     r0   r9   r9   V   s    6 ==&&t,,r3   z2.10.0r   c                 J    [         R                  " U 5      R                  5       $ )a   
Parse version to major, minor, patch, pre-release, build parts.

.. deprecated:: 2.10.0
   Use :meth:`~semver.version.Version.parse` instead.

:param version: version string
:return: dictionary with the keys 'build', 'major', 'minor', 'patch',
         and 'prerelease'. The prerelease or build keys can be None
         if not provided
:rtype: dict

>>> ver = semver.parse('3.4.5-pre.2+build.4')
>>> ver['major']
3
>>> ver['minor']
4
>>> ver['patch']
5
>>> ver['prerelease']
'pre.2'
>>> ver['build']
'build.4'
)r   r8   to_dictr;   s    r0   r8   r8   t   s    4 ==!))++r3   zsemver.version.Version.parse)r   r   c                 .    [         R                  " U 5      $ )a  
Parse version string to a Version instance.

.. deprecated:: 2.10.0
   Use :meth:`~semver.version.Version.parse` instead.
.. versionadded:: 2.7.2
   Added :func:`semver.parse_version_info`

:param version: version string
:return: a :class:`VersionInfo` instance

>>> version_info = semver.Version.parse("3.4.5-pre.2+build.4")
>>> version_info.major
3
>>> version_info.minor
4
>>> version_info.patch
5
>>> version_info.prerelease
'pre.2'
>>> version_info.build
'build.4'
)r   r8   r;   s    r0   parse_version_infor?      s    2 ==!!r3   c                 P    [         R                  " U 5      nUR                  U5      $ )a"  
Compare two versions strings through a comparison.

.. deprecated:: 2.10.0
   Use :meth:`~semver.version.Version.match` instead.

:param str version: a version string
:param str match_expr: operator and version; valid operators are
      <   smaller than
      >   greater than
      >=  greator or equal than
      <=  smaller or equal than
      ==  equal
      !=  not equal
:return: True if the expression matches the version, otherwise False
:rtype: bool

>>> semver.match("2.0.0", ">=1.0.0")
True
>>> semver.match("1.0.0", ">1.0.0")
False
)r   r8   match)r   
match_exprvers      r0   rA   rA      s!    0 --
 C99Z  r3   maxz2.10.2c                 D    [        [        X[        R                  S95      $ )a  
Returns the greater version of two versions strings.

.. deprecated:: 2.10.2
   Use :func:`max` instead.

:param ver1: version string 1
:param ver2: version string 2
:return: the greater version of the two
:rtype: :class:`Version`

>>> semver.max_ver("1.0.0", "2.0.0")
'2.0.0'
key)r   rD   r   r8   r:   s     r0   max_verrH            s47==122r3   minc                 D    [        [        X[        R                  S95      $ )a  
Returns the smaller version of two versions strings.

.. deprecated:: 2.10.2
   Use Use :func:`min` instead.

:param ver1: version string 1
:param ver2: version string 2
:return: the smaller version of the two
:rtype: :class:`Version`

>>> semver.min_ver("1.0.0", "2.0.0")
'1.0.0'
rF   )r   rJ   r   r8   r:   s     r0   min_verrL      rI   r3   zstr(versionobject)c           	      .    [        [        XX#U5      5      $ )a$  
Format a version string according to the Semantic Versioning specification.

.. deprecated:: 2.10.0
   Use ``str(Version(VERSION)`` instead.

:param int major: the required major part of a version
:param int minor: the required minor part of a version
:param int patch: the required patch part of a version
:param str prerelease: the optional prerelease part of a version
:param str build: the optional build part of a version
:return: the formatted string
:rtype: str

>>> semver.format_version(3, 4, 5, 'pre.2', 'build.4')
'3.4.5-pre.2+build.4'
)r   r   )majorminorpatch
prereleasebuilds        r0   format_versionrS      s    & wuU>??r3   c                 \    [        [        R                  " U 5      R                  5       5      $ )z
Raise the major part of the version string.

.. deprecated:: 2.10.0
   Use :meth:`~semver.version.Version.bump_major` instead.

:param: version string
:return: the raised version string
:rtype: str

>>> semver.bump_major("3.4.5")
'4.0.0'
)r   r   r8   
bump_majorr;   s    r0   rU   rU     !     w}}W%00233r3   c                 \    [        [        R                  " U 5      R                  5       5      $ )z
Raise the minor part of the version string.

.. deprecated:: 2.10.0
   Use :meth:`~semver.version.Version.bump_minor` instead.

:param: version string
:return: the raised version string
:rtype: str

>>> semver.bump_minor("3.4.5")
'3.5.0'
)r   r   r8   
bump_minorr;   s    r0   rX   rX     rV   r3   c                 \    [        [        R                  " U 5      R                  5       5      $ )z
Raise the patch part of the version string.

.. deprecated:: 2.10.0
   Use :meth:`~semver.version.Version.bump_patch` instead.

:param: version string
:return: the raised version string
:rtype: str

>>> semver.bump_patch("3.4.5")
'3.4.6'
)r   r   r8   
bump_patchr;   s    r0   rZ   rZ   )  rV   r3   c                 ^    [        [        R                  " U 5      R                  U5      5      $ )a2  
Raise the prerelease part of the version string.

.. deprecated:: 2.10.0
   Use :meth:`~semver.version.Version.bump_prerelease` instead.

:param version: version string
:param token: defaults to 'rc'
:return: the raised version string
:rtype: str

>>> semver.bump_prerelease('3.4.5', 'dev')
'3.4.5-dev.1'
)r   r   r8   bump_prereleaser   tokens     r0   r\   r\   ;  s#      w}}W%55e<==r3   c                 ^    [        [        R                  " U 5      R                  U5      5      $ )a4  
Raise the build part of the version string.

.. deprecated:: 2.10.0
   Use :meth:`~semver.version.Version.bump_build` instead.

:param version: version string
:param token: defaults to 'build'
:return: the raised version string
:rtype: str

>>> semver.bump_build('3.4.5-rc.1+build.9')
'3.4.5-rc.1+build.10'
)r   r   r8   
bump_buildr]   s     r0   r`   r`   N  s#      w}}W%00788r3   c                 `    [         R                  " U 5      n[        UR                  5       5      $ )a\  
Remove any prerelease and build metadata from the version string.

.. deprecated:: 2.10.0
   Use :meth:`~semver.version.Version.finalize_version` instead.

.. versionadded:: 2.7.9
   Added :func:`finalize_version`

:param version: version string
:return: the finalized version string
:rtype: str

>>> semver.finalize_version('1.2.3-rc.5')
'1.2.3'
)r   r8   r   finalize_version)r   verinfos     r0   rb   rb   a  s&    $ mmG$Gw'')**r3   c                 `    [        [        R                  " U 5      R                  " S0 UD65      $ )a  
Replace one or more parts of a version and return the new string.

.. deprecated:: 2.10.0
   Use :meth:`~semver.version.Version.replace` instead.
.. versionadded:: 2.9.0
   Added :func:`replace`

:param version: the version string to replace
:param parts: the parts to be updated. Valid keys are:
  ``major``, ``minor``, ``patch``, ``prerelease``, or ``build``
:return: the replaced version string
:raises TypeError: if ``parts`` contains invalid keys

>>> import semver
>>> semver.replace("1.2.3", major=2, patch=10)
'2.2.10'
 )r   r   r8   r   )r   partss     r0   r   r   w  s&    ( w}}W%--6677r3   zsemver.cli.cmd_bumpzsemver.cli.cmd_checkzsemver.cli.cmd_comparezsemver.cli.cmd_nextverzsemver.cli.createparserzsemver.cli.processzsemver.cli.main)N)NN)rc)rR   )/__doc__r!   r%   	functoolsr   r   typesr   typingr   r   r   r	    r   r   r   _typesr   r   DeprecationWarningr   Warningr4   PendingDeprecationWarningintr9   r8   r?   rA   rH   rL   rS   rU   rX   rZ   r\   r`   rb   r   cmd_bump	cmd_checkcmd_comparecmd_nextvercreateparserprocessmainre   r3   r0   <module>ry      s     $  1 1     A "! 0A
1+A c]A c]	A
 SMA 7mA AH 1&
-# -S -S -
-2 H, ,8 2HE" F"6 H! !6 E8,3 -3$ E8,3 -3$ ((;@ <@* H4 4" H4 4" H4 4" H> >$ H9 9$ H+ +* H8 8. cll,A7Ss}}.DgV	OO5w OO5w 7 S[[*>
P#(($5wGr3   