Files
intellecton/venv/lib/python3.12/site-packages/packaging/__pycache__/version.cpython-312.pyc
T

458 lines
41 KiB
Plaintext
Raw Normal View History

Ë
KÀjá•ãód—dZddlmZddlZddlZddlZddlmZmZmZm Z m
Z
m Z m Z m
Z
ejrddlmZmZej$dk\rddlmZnejrddlmZn ddlZddlZd<d„Zd d
d d d d d d
œZgd¢Zd=d„Ze e
eefdfZe e eefdfZe eeeeeefZe
e ee edfefe ee edfeeffZeeege fZ!Gd„de d¬«Z"d>d„Z#d?d„Z$Gd„de%«Z&Gd„d«Z'dZ(e(jSdd«jSdd «Z*ejVjXd!k(rej$d"ks7ejVjXd#k(rej$d$ksej$d%kre*ne(Z- ej\d&ej^ej`z«Z1e2d'«Z3d@d(„Z4dAd)„Z5dBd*„Z6dCd+„Z7dDd,„Z8dEd-„Z9Gd.„d/e «Z:Gd0„de'«Z;Gd1„d2e;«Z< dFd3„Z=ej\d4«Z>dGd5„Z?dd6d7d8œZ@d9ZAd:ZBd9ZCeBdddd6dfZD dHd;„ZEy)IzZ
.. testsetup::
from packaging.version import parse, normalize_pre, Version, _cmpkey
é)Ú annotationsN)ÚAnyÚCallableÚLiteralÚ
NamedTupleÚ SupportsIntÚTupleÚ TypedDictÚUnion)ÚSelfÚUnpack)éé
)Ú
deprecatedcó‡—dˆfd„ }|S)NcóH•‡—tj‰«dˆˆfd„ «}|S)NcóL•—tj‰td¬«‰|i|¤ŽS)Né)ÚcategoryÚ
stacklevel)ÚwarningsÚwarnÚDeprecationWarning)ÚargsÚkwargsÚfuncÚmessages €€úT/home/antigravity/intellecton/venv/lib/python3.12/site-packages/packaging/version.pyÚwrapperz/_deprecated.<locals>.decorator.<locals>.wrapper's*ø€ä—
‘
ØÜ/Ø õñ
˜TÐ, VÑ,Ð,ó)rÚobjectrr!Úreturnr!)Ú functoolsÚwraps)rrrs` €rÚ decoratorz_deprecated.<locals>.decorator&s%ù€Ü
�_‰_˜TÓ
"õ
-ó#ð
-ðˆNr )rzCallable[[...], object]r"r!©)rr%s` rÚ _deprecatedr'%sø€õ
ðÐr ÚaÚbÚrcÚpost)ÚalphaÚbetaÚcÚpreÚpreviewÚrevÚr)ÚVERSION_PATTERNÚInvalidVersionÚVersionÚ
normalize_preÚparsecó—tS©N)Ú__all__r&r rÚ__dir__r;Bs€Ü €Nr .cóJ—eZdZUded<ded<ded<ded<ded<d ed
<y ) Ú_VersionReplaceú
int | NoneÚepochztuple[int, ...] | NoneÚreleaseútuple[str, int] | Noner/r+Údevú
str | NoneÚlocalN©Ú__name__Ú
__module__Ú __qualname__Ú__annotations__r&r rr=r=Qs%…Ø ÓØ
#Ó#Ø ÓØ
ÓØ ƒOØ Ôr r=F)ÚtotalcóN—|j«}tj||«S)a8Normalize the pre-release segment of a version string.
Returns a lowercase version of the string if not a known pre-release
identifier.
>>> normalize_pre('alpha')
'a'
>>> normalize_pre('BETA')
'b'
>>> normalize_pre('rc')
'rc'
:param letter:
.. versionadded:: 26.1
)ÚlowerÚ_LETTER_NORMALIZATIONÚget)Úletters rr6r6Zs"€ð"�\‰\‹^€FÜ × $Ñ $ V¨VÓ 4Ð4r r5có—t|«S)aParse the given version string.
This is identical to the :class:`Version` constructor.
>>> parse('1.0.dev1')
<Version('1.0.dev1')>
:param version: The version string to parse.
:raises InvalidVersion: When the version string is not a valid version.
)r5)Úversions rr7r7os€ô �7Ó Ðr có—eZdZdZy)r4zÉRaised when a version string is not a valid version.
>>> Version("invalid")
Traceback (most recent call last):
...
packaging.version.InvalidVersion: Invalid version: 'invalid'
N)rFrGrHÚ__doc__r&r rr4r4}s„òr r4cór—eZdZdZej
r ed d„«Zd d„Zd
d„Z d
d„Z
dd„Z d
d„Z d
d„Z
dd „Zy
)Ú _BaseVersionr&có—yr9r&©Úselfs rÚ_keyz_BaseVersion._key�s€Ø+.r có,—t|j«Sr9)ÚhashrYrWs rÚ__hash__z_BaseVersion.__hash__’s€Ü�D—I‘I‹Ðr có`—t|t«stS|j|jkSr9©Ú
isinstancerUÚNotImplementedrY©rXÚothers rÚ__lt__z_BaseVersion.__lt__˜ó%€Ü˜%¤Ô.Ü!Ð !à�y‰y˜5Ÿ:™:Ñ%Ð%r có`—t|t«stS|j|jkSr9r^ras rÚ__le__z_BaseVersion.__le__žó%€Ü˜%¤Ô.Ü!Ð !à�y‰y˜EŸJ™JÑ&Ð&r có`—t|t«stS|j|jk(Sr9r^ras rÚ__eq__z_BaseVersion.__eq__¤rgr có`—t|t«stS|j|jk\Sr9r^ras rÚ__ge__z_BaseVersion.__ge__ªrgr có`—t|t«stS|j|jkDSr9r^ras rÚ__gt__z_BaseVersion.__gt__°rdr có`—t|t«stS|j|jk7Sr9r^ras rÚ__ne__z_BaseVersion.__ne__¶rgr N)r"ztuple[Any, ...]©r"Úint©rbrUr"Úbool©rbr!r"rs)rFrGrHÚ __slots__ÚtypingÚ
TYPE_CHECKINGÚpropertyrYr\rcrfrirkrmror&r rrUrU‡sC„Ø€Ið
×Òà Ú.ó
Ø.óó &ó 'ó 'ó 'ó &ô 'r rUa3
v?+ # optional leading v
(?a:
(?:(?P<epoch>[0-9]+)!)?+ # epoch
(?P<release>[0-9]+(?:\.[0-9]+)*+) # release segment
(?P<pre> # pre-release
[._-]?+
(?P<pre_l>alpha|a|beta|b|preview|pre|c|rc)
[._-]?+
(?P<pre_n>[0-9]+)?
)?+
(?P<post> # post release
(?:-(?P<post_n1>[0-9]+))
|
(?:
[._-]?
(?P<post_l>post|rev|r)
[._-]?
(?P<post_n2>[0-9]+)?
)
)?+
(?P<dev> # dev release
[._-]?+
(?P<dev_l>dev)
[._-]?+
(?P<dev_n>[0-9]+)?
)?+
)
(?a:\+
(?P<local> # local version
[a-z0-9]+
(?:[._-][a-z0-9]+)*+
)
)?+
z*+Ú*z?+ú?Úcpython)ré éÚpypy)rr|r)rr|z[a-z0-9]+(?:[._-][a-z0-9]+)*z .0123456789có\—|xsd}t|t«r|dk\r|Sd|›�}t|«‚)Nrz(epoch must be non-negative integer, got ©r_rqr4)Úvaluer?Úmsgs rÚ_validate_epochrƒ
s7€Ø ŠJ�Q€EÜ�%œÔ %¨1¢*؈ Ø 4°U°GÐ
<€CÜ
˜Ó
Ðr có’—|€dn|}t|t«r"t|«dkDrtd„|D««r|Sd|›�}t |«‚)N)rrc3óJK—|]}t|t«xr|dk\–—Œy­w)rN)r_rq)Ú.0Úis rú <genexpr>z$_validate_release.<locals>.<genexpr>s#èø€Ò?°!”
˜1œcÓ"Ò- q¨A¡vÓ-Ñ?ùs‚!#z@release must be a non-empty tuple of non-negative integers, got )r_ÚtupleÚlenÚallr4)r�r@r‚s rÚ_validate_releaserŒsM€Ø�m‰d¨€Gä�7œEÔ"Ü �‹L˜1Ò Ü Ñ?°wÔ?Ô ?àˆØ LÈWÈIÐ
V€CÜ
˜Ó
Ðr cóÀ—|€|St|t«r;t|«dk(r-|\}}t|«}|dvrt|t«r |dk\r||fSd|›�}t |«‚)Nr>r(r)r*rz=pre must be a tuple of ('a'|'b'|'rc', non-negative int), got )r_r‰rŠr6rqr4)r�rOÚnumberr‚s rÚ
_validate_prer�sn€Ø €}؈ Ü�%œÔ¤C¨£J°!¢O؉ˆ�ܘvÓ&ˆØ Ð%Ñ %¬*°V¼SÔ*AÀfÐPQÂkà˜FÐ#Ð #Ø IÈ%ÈÐ
Q€CÜ
˜Ó
Ðr có\—|€|St|t«r |dk\rd|fSd|›�}t|«‚)Nrr+z'post must be non-negative integer, got r€©r�r‚s rÚ_validate_postr’+s=€Ø €}؈ Ü�%œÔ %¨1¢*ؘˆÐØ 3°E°7Ð
;€CÜ
˜Ó
Ðr có\—|€|St|t«r |dk\rd|fSd|›�}t|«‚)NrrBz&dev must be non-negative integer, got r€r‘s rÚ
_validate_devr”4s=€Ø €}؈ Ü�%œÔ %¨1¢*Ø�uˆ~ÐØ 2°5°'Ð
:€CÜ
˜Ó
Ðr cóŠ—|€|St|t«r tj|«r t |«Sd|›�}t |«‚)Nz*local must be a valid version string, got )r_ÚstrÚ_LOCAL_PATTERNÚ fullmatchÚ_parse_local_versionr4r‘s rÚ_validate_localrš=sE€Ø €}؈ Ü�%œÔ¤.×":Ñ":¸5Ô"AÜ# EÓ*Ð*Ø 6°u°iÐ
@€CÜ
˜Ó
Ðr cóJ—eZdZUded<ded<ded<ded<d ed
<d ed <y
)Ú_Versionrqr?útuple[int, ...]r@ú!tuple[Literal['dev'], int] | NonerBú*tuple[Literal['a', 'b', 'rc'], int] | Noner/ú"tuple[Literal['post'], int] | Noner+úLocalType | NonerDNrEr&r rrœrœGs%…Ø ƒJØ
ÓØ *Ó*Ø 3Ó3Ø
,Ó,Ø Ôr rœcó‡—eZdZUdZdZdZ ejdezdzejejz«Z de d<de d<d e d
<d e d <d
e d<de d<de d<de d<d9d„Z
eddddddœ d:d„«Zd;d„Zed<d„«Zd=d„Zd>ˆfd„ Zd>ˆfd„ Zd?ˆfd„ Zd>ˆfd „ Zd>ˆfd!„ Zd?ˆfd"„ Z d@d#„ZdAd$„Zeed%«dBd&„««Zej<ed%«dCd'„««ZdDd(„ZdDd)„Z edDd*„«Z!ed=d+„«Z"edEd,„«Z#edFd-„«Z$edGd.„«Z%edGd/„«Z&edHd0„«Z'edDd1„«Z(edDd2„«Z)edId3„«Z*edId4„«Z+edId5„«Z,ed=d6„«Z-ed=d7„«Z.ed=d8„«Z/ˆxZ0S)Jr5aÄThis class abstracts handling of a project's versions.
A :class:`Version` instance is comparison aware and can be compared and
sorted using the standard Python interfaces.
>>> v1 = Version("1.0a5")
>>> v2 = Version("1.0")
>>> v1
<Version('1.0a5')>
>>> v2
<Version('1.0')>
>>> v1 < v2
True
>>> v1 == v2
False
>>> v1 > v2
False
>>> v1 >= v2
False
>>> v1 <= v2
True
:class:`Version` is immutable; use :meth:`__replace__` to change
part of a version.
Instances are safe to serialize with :mod:`pickle`. They use a stable
format so the same pickle can be loaded in future packaging releases.
.. versionchanged:: 26.2
Added a stable pickle format. Pickles created with packaging 26.2+ can
be unpickled with future releases. Backward compatibility with pickles
from packaging < 26.2 is supported but may be removed in a future
release.
)Ú_devÚ_epochÚ _hash_cacheÚ
_key_cacheÚ_localÚ_postÚ_preÚ_release)Ú_strz\s*rqr¤r�rªržr£rŸr©r r¨r¡r§r>r¥z
CmpKey | Noner¦có—tj|«r` ttt|j d«««|_d|_ d|_
d|_ d|_ d|_
d|_d|_y|j j#|«}|std|›�«‚|j%d«rt |j%d««nd|_ ttt|j%d«j d«««|_t'|j%d«|j%d ««|_
t'|j%d
«|j%d «xs|j%d ««|_ t'|j%d
«|j%d««|_ t)|j%d««|_
d|_d|_y#t$r$d|j d«vrtd|›�«d‚‚wxYw)aCInitialize a Version object.
:param version:
The string representation of a version which will be parsed and normalized
before use.
:raises InvalidVersion:
If the ``version`` does not conform to PEP 440 in any way then this
exception will be raised.
ú.ÚzInvalid version: Nrr?r@Úpre_lÚpre_nÚpost_lÚpost_n1Úpost_n2Údev_lÚdev_nrD)Ú_SIMPLE_VERSION_INDICATORSÚ
issupersetr‰ÚmaprqÚsplitrªÚ
ValueErrorr4r¤r©r¨r£r§r¦r¥Ú_regexr˜ÚgroupÚ_parse_letter_versionr™)rXrQÚmatchs rÚ__init__zVersion.__init__”s·€ô &× 0Ñ 0°Ô 9ð
Ü %¤c¬#¨w¯}©}¸SÓ/AÓ&BÓ C�”
ðˆDŒK؈DŒI؈DŒJ؈DŒI؈DŒKØ"ˆDŒOØ#ˆDÔ Ø ð— ‘ ×%Ñ% gÓ.ˆÙÜ Ð#4°W°KÐ!@ÓAÐ AØ38·;±;¸wÔ3G”c˜%Ÿ+™+ gÓ.Ô/ÈQˆŒ Üœc¤# u§{¡{°9Ó'=×'CÑ'CÀCÓ'HÓIÓJˆŒ
ô*¨%¯+©+°gÓ*>ÀÇ Á ÈGÓ@TÓUˆŒ Ü*Ø �K‰K˜Ó ! 5§;¡;¨yÓ#9Ò#S¸U¿[¹[ÈÓ=Só
ˆŒ
ô*¨%¯+©+°gÓ*>ÀÇ Á ÈGÓ@TÓUˆŒ Ü*¨5¯;©;°wÓ+?Ó@ˆŒ ðˆŒØˆÕøôGò
𘟙 sÓ+Ñ+Ü(Ð+<¸W¸KÐ)HÓIÈtÐSàð
ús —-GÇ-H
rN)r?r/r+rBrDcó<—t|«}t|«}|� t|«nd} |� t|«nd}
|� t |«nd} |� t |«nd} |j
|«}
d|
_d|
_||
_ ||
_
| |
_ |
|
_ | |
_
| |
_|
S)a(
Return a new version composed of the various parts.
This allows you to build a version without going though a string and
running a regular expression. It normalizes pre-release strings. The
``release=`` keyword argument is required.
>>> Version.from_parts(release=(1,2,3))
<Version('1.2.3')>
>>> Version.from_parts(release=(0,1,0), pre=("b", 1))
<Version('0.1.0b1')>
:param epoch:
:param release: This version tuple is required
.. versionadded:: 26.1
N)rƒrŒr�r’r”ršÚ__new__r¦r¥r¤rªr©r¨r£r§)Úclsr?r@r/r+rBrDr¤rªr©r¨r£r§Ú new_versions rÚ
from_partszVersion.from_partsÆs®€ô8! Ó'ˆÜ$ WÓ-ˆØ%( _Œ}˜SÔ!¸$ˆØ(,Ð(8”˜tÔ$¸dˆØ%( _Œ}˜SÔ!¸$ˆØ+0Ð+<” Ô'À$ˆà—k‘k #Ó&ˆ Ø!%ˆ ÔØ"&ˆ ÔØ#ˆ ÔØ'ˆ ÔØˆ ÔØ!ˆ ÔØˆ ÔØ#ˆ ÔàÐr c óà—d|vrt|d«n |j}d|vrt|d«n |j}d|vrt |d«n |j
}d|vrt
|d«n |j}d|vrt|d«n |j}d|vrt|d«n |j}||jk(rM||jk(r>||j
k(r/||jk(r ||jk(r||jk(r|S|jj|j«}d|_d|_||_||_||_||_||_ ||_ |S)aß
__replace__(*, epoch=..., release=..., pre=..., post=..., dev=..., local=...)
Return a new version with parts replaced.
This returns a new version (unless no parts were changed). The
pre-release is normalized. Setting a value to ``None`` clears it.
>>> v = Version("1.2.3")
>>> v.__replace__(pre=("a", 1))
<Version('1.2.3a1')>
:param int | None epoch:
:param tuple[int, ...] | None release:
:param tuple[str, int] | None pre:
:param int | None post:
:param int | None dev:
:param str | None local:
.. versionadded:: 26.0
.. versionchanged:: 26.1
The pre-release portion is now normalized.
r?r@r/r+rBrDN)rƒr¤rŒrªr�r©r’r¨r”r£ršr§Ú __class__rÁr¦r¥) rXrr?r@r/r+rBrDrÃs rÚ __replace__zVersion.__replace__õs]€ð25<¸vÑ4E”  w¡Ô0È4Ï;É;ˆð˜FÑ"ô
˜f YÑ/Ô 0à—‘ð ð
/4°v©oŒm˜F 5™MÔ*À4Ç9Á9ˆØ17¸6Ñ1AŒ~˜f V™nÔ-ÀtÇzÁzˆØ.3°v©oŒm˜F 5™MÔ*À4Ç9Á9ˆØ4;¸vÑ4E”  w¡Ô0È4Ï;É;ˆð
�T—[‘[Ò Ø˜4Ÿ=™=Ò(Ø�t—y‘yÒ Ø˜Ÿ
™
Ò"Ø�t—y‘yÒ Ø˜Ÿ™Ò$àˆKà—n‘n×,Ñ,¨T¯^©^Ó<ˆ Ø!%ˆ ÔØ"&ˆ ÔØ"ˆ ÔØ&ˆ ÔØˆ ÔØ ˆ ÔØˆ ÔØ"ˆ ÔàÐr cóÔ—|j€Qt|j|j|j|j
|j |j«|_|jSr9)r¦Ú_cmpkeyr¤rªr©r¨r£r§rWs rrYz Version._key/sN€à �?‰?Ð "Ü%Ø— ‘ Ø—
‘
Ø— ‘ Ø—
‘
Ø— ‘ Ø— ‘ ó
ˆDŒOð�‰Ðr có —|jx}�|S|jx}€St|j|j|j
|j |j|j«x|_}t|«x|_}|Sr9)
r¥r¦rÉr¤rªr©r¨r£r§r[)rXÚ cached_hashÚkeys rr\zVersion.__hash__>s~€Ø×+Ñ+Ð +ˆKÐ 8ØÐ à—?‘?Ð "ˆCÐ +Ü$+Ø— ‘ Ø—
‘
Ø— ‘ Ø—
‘
Ø— ‘ Ø— ‘ ó
%ð
ˆDŒO˜cô*.¨c«Ð2ˆÔ˜;ØÐr có•—t|t«rÓ|j€Qt|j|j
|j |j|j|j«|_|j€Qt|j|j
|j |j|j|j«|_|j|jkSt|t«stSt‰|�5|«Sr9)r_r5r¦rÉr¤rªr©r¨r£r§rUr`Úsuperrc©rXrbrÆs €rrczVersion.__lt__PóÈø€Ü �eœWÔ %Ø�‰Ð&Ü")Ø—K‘KØ—M‘MØ—I‘IØ—J‘JØ—I‘IØ—K‘Kó
#�”ð×ÑÐ'Ü#*Ø—L‘LØ—N‘NØ—J‘JØ—K‘KØ—J‘JØ—L‘Ló
$�Ô ð—?‘? U×%5Ñ%5Ñ5Ð 5ä˜%¤Ô.Ü!Ð !ä‰w‰~˜eÓ$Ð$r có•—t|t«rÓ|j€Qt|j|j
|j |j|j|j«|_|j€Qt|j|j
|j |j|j|j«|_|j|jkSt|t«stSt‰|�5|«Sr9)r_r5r¦rÉr¤rªr©r¨r£r§rUr`rÎrfrÏs €rrfzVersion.__le__kóÈø€Ü �eœWÔ %Ø�‰Ð&Ü")Ø—K‘KØ—M‘MØ—I‘IØ—J‘JØ—I‘IØ—K‘Kó
#�”ð×ÑÐ'Ü#*Ø—L‘LØ—N‘NØ—J‘JØ—K‘KØ—J‘JØ—L‘Ló
$�Ô ð—?‘? e×&6Ñ&6Ñ6Ð 6ä˜%¤Ô.Ü!Ð !ä‰w‰~˜eÓ$Ð$r có•—t|t«rÓ|j€Qt|j|j
|j |j|j|j«|_|j€Qt|j|j
|j |j|j|j«|_|j|jk(St|t«stSt‰|�5|«Sr9)r_r5r¦rÉr¤rªr©r¨r£r§rUr`rÎrirÏs €rrizVersion.__eq__†rÒr có•—t|t«rÓ|j€Qt|j|j
|j |j|j|j«|_|j€Qt|j|j
|j |j|j|j«|_|j|jk\St|t«stSt‰|�5|«Sr9)r_r5r¦rÉr¤rªr©r¨r£r§rUr`rÎrkrÏs €rrkzVersion.__ge__¡rÒr có•—t|t«rÓ|j€Qt|j|j
|j |j|j|j«|_|j€Qt|j|j
|j |j|j|j«|_|j|jkDSt|t«stSt‰|�5|«Sr9)r_r5r¦rÉr¤rªr©r¨r£r§rUr`rÎrmrÏs €rrmzVersion.__gt__¼rÐr có•—t|t«rÓ|j€Qt|j|j
|j |j|j|j«|_|j€Qt|j|j
|j |j|j|j«|_|j|jk7St|t«stSt‰|�5|«Sr9)r_r5r¦rÉr¤rªr©r¨r£r§rUr`rÎrorÏs €rrozVersion.__ne__×rÒr cóŠ—|j|j|j|j|j|j
fSr9)r¤rªr©r¨r£r§rWs rÚ __getstate__zVersion.__getstate__òs8€ð
�K‰KØ �M‰MØ �I‰IØ �J‰JØ �I‰IØ �K‰Kð

ð
r cóú—d|_d|_t|t«rÆt |«dk(r(|\|_|_|_|_|_ |_
yt |«dk(r‚|\}}t|t«rm|d|_|d|_|jd«|_|jd«|_|jd«|_ |jd«|_
yt|t«rz|jd «}|�g|j|_|j|_|j|_|j |_|j"|_ |j$|_
yt'd
|›�«‚) Nérr¤rªr©r¨r£r§Ú_versionzCannot restore Version from )r¦r¥r_r‰rŠr¤rªr©r¨r£r§ÚdictrNr?r@r/r+rBrDÚ TypeError)rXÚstateÚ_Ú slot_dictÚ
version_nts rÚ __setstate__zVersion.__setstate__sJ€ðˆŒØˆÔä �eœUÔ #Ü�5‹z˜QŠðñØ”KØ”MØ”IØ”JØ”IØ”KàÜ�5‹z˜QŠà$‘ ��9ܘi¬Ô.Ø"+¨HÑ"5�D”KØ$-¨jÑ$9�D”MØ )§
¡
¨fÓ 5�D”IØ!*§¡¨wÓ!7�D”JØ )§
¡
¨fÓ 5�D”IØ"+§-¡-°Ó"9�D”KØÜ �eœTÔ "🙠:Ó.ˆJØÐ%Ø(×.Ñ.�” Ø *× 2Ñ 2�”
Ø&ŸN™N�” Ø'Ÿ_™_�”
Ø&ŸN™N�” Ø(×.Ñ.�” ØäÐ6°u°iÐ@ÓAÐAr z4Version._version is private and will be removed sooncóš—t|j|j|j|j|j
|j «Sr9)rœr¤rªr£r©r¨r§rWs rrÛzVersion._version5s6€ôØ �K‰K˜Ÿ™¨¯ © °4·9±9¸d¿j¹jÈ$Ï+É+ó
ð
r cóì—|j|_|j|_|j|_|j |_|j|_ |j|_ d|_ d|_
yr9)r?r¤r@rªrBr£r/r©r+r¨rDr§r¦r¥)rXr�s rrÛzVersion._version<sU€ð—k‘kˆŒ ØŸ
™
ˆŒ
Ø—I‘IˆŒ Ø—I‘IˆŒ Ø—Z‘ZˆŒ
Ø—k‘kˆŒ ؈ŒØˆÕr cóN—d|jj›dt|«›d�S)z€A representation of the Version that shows all internal state.
>>> Version('1.0.0')
<Version('1.0.0')>
ú<ú(z)>)rÆrFr–rWs rÚ__repr__zVersion.__repr__Hs(€ð �4—>‘>×*Ñ*Ð+¨1¬S°«Y¨M¸Ð<Ð<r có¶—djtt|j««}|jr|j›d|›�}|j
�,|djtt|j
««z
}|j �|d|j ›�z
}|j�|d|j›�z
}|j�|d|j›�z
}|S)z}A string representation of the version that can be round-tripped.
>>> str(Version("1.0a5"))
'1.0a5'
r­ú!r®z.postz.devú+) Újoinr¸r–r@r?r/r+rBrD)rXrQs rÚ__str__zVersion.__str__PsÌ€ð—(‘(œ3œs D§L¡LÓ1Ó2ˆð �:Š:ØŸ™˜  A g YÐ/ˆGð �8‰8Ð Ø �r—w‘wœs¤3¨¯©Ó1Ó2Ñ 2ˆGð �9‰9Ð Ø ˜˜tŸy™y˜kÐ*Ñ *ˆGð �8‰8Ð Ø ˜˜dŸh™h˜ZÐ(Ñ (ˆGð �:‰:Ð !Ø ˜˜4Ÿ:™:˜,Ð'Ñ 'ˆGàˆr có—t|«S)z Internal property for match_args©r–rWs rr«z Version._stros€ô�4‹yÐr có—|jS)zThe epoch of the version.
>>> Version("2.0.0").epoch
0
>>> Version("1!2.0.0").epoch
1
)r¤rWs rr?z
Version.epochts€ð�{‰{Ðr có—|jS)adThe components of the "release" segment of the version.
>>> Version("1.2.3").release
(1, 2, 3)
>>> Version("2.0.0").release
(2, 0, 0)
>>> Version("1!2.0.0.post0").release
(2, 0, 0)
Includes trailing zeroes but not the epoch or any pre-release / development /
post-release suffixes.
)rªrWs rr@zVersion.releases€ð�}‰}Ðr có—|jS)aThe pre-release segment of the version.
>>> print(Version("1.2.3").pre)
None
>>> Version("1.2.3a1").pre
('a', 1)
>>> Version("1.2.3b1").pre
('b', 1)
>>> Version("1.2.3rc1").pre
('rc', 1)
)r©rWs rr/z Version.pre�s€ð�y‰yÐr có<—|jr|jdSdS)z™The post-release number of the version.
>>> print(Version("1.2.3").post)
None
>>> Version("1.2.3.post1").post
1
éN)r¨rWs rr+z Version.postžs€ð!%§
¢
ˆt�z‰z˜!‰}Ð4°Ð4r có<—|jr|jdSdS)z•The development number of the version.
>>> print(Version("1.2.3").dev)
None
>>> Version("1.2.3.dev1").dev
1
rôN)r£rWs rrBz Version.dev©s€ð $Ÿyšyˆt�y‰y˜‰|Ð2¨dÐ2r có`—|jr"djd„|jD««Sy)zŸThe local version segment of the version.
>>> print(Version("1.2.3").local)
None
>>> Version("1.2.3+abc").local
'abc'
r­c3ó2K—|]}t|«–—Œy­wr9rï)r†Úxs rrˆz Version.local.<locals>.<genexpr>¾sèø€Ò8 qœC ŸFÑ8ùs‚N)r§rìrWs rrDz
Version.local´s'€ð �;Š;Ø—8‘8Ñ8¨D¯K©KÔ8Ó8Ð 8àr có>—t|«jdd«dS)aqThe public portion of the version.
This returns a string. If you want a :class:`Version` again and care
about performance, use ``v.__replace__(local=None)`` instead.
>>> Version("1.2.3").public
'1.2.3'
>>> Version("1.2.3+abc").public
'1.2.3'
>>> Version("1!1.2.3dev1+abc").public
'1!1.2.3.dev1'
rërôr)r–r¹rWs rÚpubliczVersion.publicÂs€ô�4‹y�‰˜s AÓ& qÑ)Ð)r có’—djtt|j««}|jr|j›d|›�S|S)aThe "base version" of the version.
This returns a string. If you want a :class:`Version` again and care
about performance, use
``v.__replace__(pre=None, post=None, dev=None, local=None)`` instead.
>>> Version("1.2.3").base_version
'1.2.3'
>>> Version("1.2.3+abc").base_version
'1.2.3'
>>> Version("1!1.2.3dev1+abc").base_version
'1!1.2.3'
The "base version" is the public version of the project without any pre or post
release markers.
r­rê)rìr¸r–r@r?)rXÚrelease_segments rÚ base_versionzVersion.base_versionÒs>€ð$Ÿ(™(¤3¤s¨D¯L©LÓ#9Ó:ˆØ48·J²J�$—*‘*�˜Q˜Ð/Ð0ÐSÀOÐSr có>—|jduxs|jduS)aTWhether this version is a pre-release.
>>> Version("1.2.3").is_prerelease
False
>>> Version("1.2.3a1").is_prerelease
True
>>> Version("1.2.3b1").is_prerelease
True
>>> Version("1.2.3rc1").is_prerelease
True
>>> Version("1.2.3dev1").is_prerelease
True
N)rBr/rWs rÚ
is_prereleasezVersion.is_prereleaseçs!€ð�x‰x˜tÐ#Ò; t§x¡x°tÐ';Ð;r có—|jduS)zªWhether this version is a post-release.
>>> Version("1.2.3").is_postrelease
False
>>> Version("1.2.3.post1").is_postrelease
True
N)r+rWs rÚis_postreleasezVersion.is_postreleaseøs€ð�y‰y Ð$Ð$r có—|jduS)z®Whether this version is a development release.
>>> Version("1.2.3").is_devrelease
False
>>> Version("1.2.3.dev1").is_devrelease
True
N)rBrWs rÚ
is_devreleasezVersion.is_devreleases€ð�x‰x˜tÐ#Ð#r cóT—t|j«dk\r|jdSdS)zqThe first item of :attr:`release` or ``0`` if unavailable.
>>> Version("1.2.3").major
1
rôr©rŠr@rWs rÚmajorz
Version.majors'€ô#& d§l¡lÓ"3°qÒ"8ˆt�|‰|˜A‰Ð?¸aÐ?r cóT—t|j«dk\r|jdSdS)z›The second item of :attr:`release` or ``0`` if unavailable.
>>> Version("1.2.3").minor
2
>>> Version("1").minor
0
rrôrrrWs rÚminorz
Version.minoró'€ô#& d§l¡lÓ"3°qÒ"8ˆt�|‰|˜A‰Ð?¸aÐ?r cóT—t|j«dk\r|jdSdS)zšThe third item of :attr:`release` or ``0`` if unavailable.
>>> Version("1.2.3").micro
3
>>> Version("1").micro
0
rrrrrWs rÚmicroz
Version.micro"r r )rQr–r"ÚNone)r?rqr@r�r/rAr+r>rBr>rDrCr"r )rzUnpack[_VersionReplace]r"r )r"ÚCmpKeyrprrrt)r"zutuple[int, tuple[int, ...], tuple[str, int] | None, tuple[str, int] | None, tuple[str, int] | None, LocalType | None])rÞr!r"r )r"rœ)r�rœr"r )r"r–©r"r�)r"rŸ)r"r>)r"rC)r"rs)1rFrGrHrSruÚ__match_args__ÚreÚcompiler3ÚVERBOSEÚ
IGNORECASEr»rIr¿Ú classmethodrÄrÇrxrYr\rcrfrirkrmrorØrâr'rÛÚsetterrèrír«r?r@r/r+rBrDrúrýrÿrrrrr Ú
__classcell__©rÆs@rr5r5PsÃø…ñ"ðH €Ið€NððˆR�Z‰Z˜ Ñ0°6Ñ9¸2¿:¹:ÈÏ
É
Ñ;UÓ
V€Fà ƒKØÓØ
+Ó+Ø
4Ó4Ø -Ó-Ø ÓàÓØÓó0 ðdðà&*ØØØ ñ,ðð,ð!ð ,ð
$ð ,ð ð
,ðð,ðð,ð