Files
cms-website/.deps_siteforge_v812/packaging/__pycache__/version.cpython-312.pyc
T

271 lines
20 KiB
Plaintext
Raw Normal View History

Ë
êÅÙj$Aã
óê—dZddlmZddlZddlZddlmZmZmZm Z m
Z
m Z ddl m
Z
mZmZmZgd¢Ze
e eefdfZe eee
eeffZe ee
e e
eefe
ee eefffdffZe
ee
edfeeeefZeeegefZGd „d
e«Zdd „ZGd
„de«ZGd„d«ZdZeZ Gd„d e«Z!Gd„de!«Z" dd„Z#ejHd«Z%dd„Z& dd„Z'y)zB
.. testsetup::
from packaging.version import parse, Version
é)Ú annotationsN)ÚAnyÚCallableÚ
NamedTupleÚ SupportsIntÚTupleÚUnioné)ÚInfinityÚ InfinityTypeÚNegativeInfinityÚNegativeInfinityType)ÚVERSION_PATTERNÚInvalidVersionÚVersionÚparse.cóJ—eZdZUded<ded<ded<ded<ded<d ed
<y ) Ú_VersionÚintÚepochútuple[int, ...]Úreleaseútuple[str, int] | NoneÚdevÚpreÚpostúLocalType | NoneÚlocalN)Ú__name__Ú
__module__Ú __qualname__Ú__annotations__©óúUC:\Users\30997\AppData\Local\Temp\pip-target-6g32zz5s\lib\python\packaging/version.pyrr&s%…Ø ƒJØ
ÓØ ÓØ ÓØ
Ó Ø Ôr$rrcó—t|«S)z×Parse the given version string.
>>> 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.
)r)Úversions r%rr/s€ô �7Ó Ðr$có—eZdZdZy)rzÉRaised when a version string is not a valid version.
>>> Version("invalid")
Traceback (most recent call last):
...
packaging.version.InvalidVersion: Invalid version: 'invalid'
N)rr r!Ú__doc__r#r$r%rr;s„òr$rcóP—eZdZUded<d d„Zd d„Zd d„Zd
d„Zd d„Zd d„Z d
d „Z
y
)Ú _BaseVersionztuple[Any, ...]Ú_keycó,—t|j«S©N)Úhashr,©Úselfs r%Ú__hash__z_BaseVersion.__hash__Hs€Ü�D—I‘I‹Ðr$có`—t|t«stS|j|jkSr.©Ú
isinstancer+ÚNotImplementedr,©r1Úothers r%Ú__lt__z_BaseVersion.__lt__Nó%€Ü˜%¤Ô.Ü!Ð !à�y‰y˜5Ÿ:™:Ñ%Ð%r$có`—t|t«stS|j|jkSr.r4r7s r%Ú__le__z_BaseVersion.__le__Tó%€Ü˜%¤Ô.Ü!Ð !à�y‰y˜EŸJ™JÑ&Ð&r$có`—t|t«stS|j|jk(Sr.r4r7s r%Ú__eq__z_BaseVersion.__eq__Zr=r$có`—t|t«stS|j|jk\Sr.r4r7s r%Ú__ge__z_BaseVersion.__ge__`r=r$có`—t|t«stS|j|jkDSr.r4r7s r%Ú__gt__z_BaseVersion.__gt__fr:r$có`—t|t«stS|j|jk7Sr.r4r7s r%Ú__ne__z_BaseVersion.__ne__lr=r$N©Úreturnr)r8r+rGÚbool)r8ÚobjectrGrH) rr r!r"r2r9r<r?rArCrEr#r$r%r+r+Es+…Ø
Óóó &ó 'ó 'ó 'ó &ô 'r$r+a•
v?
(?:
(?:(?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]+)?
)?
)
(?:\+(?P<local>[a-z0-9]+(?:[-_\.][a-z0-9]+)*))? # local version
có�—eZdZUdZej
dezdzejejz«Z de
d<dd„Z dd„Z dd„Z
edd „«Zedd
„«Zedd „«Zedd „«Zedd
„«Zedd„«Zedd„«Zedd„«Zedd„«Zedd„«Zedd„«Zedd„«Zedd„«Zedd„«Zy) ra¹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
z^\s*z\s*$ÚCmpKeyr,c ó˜—|jj|«}|std|›�«‚t|j d«rt |j d««ndt
d„|j d«jd«D««t|j d«|j d««t|j d «|j d
«xs|j d ««t|j d «|j d
««t|j d««¬«|_
t|jj|jj|jj|jj|jj |jj"«|_y)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: rrc3ó2K—|]}t|«–—Œy­wr.)r©Ú.0Úis r%Ú <genexpr>z#Version.__init__.<locals>.<genexpr>Ïsèø€ÐLÑ*K Qœ#˜aŸ&Ñ*Kùó‚rÚ.Úpre_lÚpre_nÚpost_lÚpost_n1Úpost_n2Údev_lÚdev_nr)rrrrrrN)Ú_regexÚsearchrrÚgrouprÚtupleÚsplitÚ_parse_letter_versionÚ_parse_local_versionÚ_versionÚ_cmpkeyrrrrrrr,)r1r'Úmatchs r%Ú__init__zVersion.__init__¼sP€ð— ‘ ×"Ñ" 7Ó+ˆÙÜ Ð#4°W°KÐ!@ÓAÐ Aô!Ø/4¯{©{¸7Ô/C”#�e—k‘k 'Ó*Ô+ÈÜÑL¨%¯+©+°iÓ*@×*FÑ*FÀsÔ*KÓLÓLÜ% e§k¡k°'Ó&:¸E¿K¹KÈÓ<PÓQÜ&Ø— ‘ ˜HÓ% u§{¡{°9Ó'=Ò'WÀÇÁÈYÓAWóô& e§k¡k°'Ó&:¸E¿K¹KÈÓ<PÓQÜ& u§{¡{°7Ó';Ó<ô 
ˆŒ
ôØ �M‰M× Ñ Ø �M‰M× !Ñ !Ø �M‰M× Ñ Ø �M‰M× Ñ Ø �M‰M× Ñ Ø �M‰M× Ñ ó

ˆ� r$có—d|›d�S)z€A representation of the Version that shows all internal state.
>>> Version('1.0.0')
<Version('1.0.0')>
z
<Version('z')>r#r0s r%Ú__repr__zVersion.__repr__âs€ð ˜D˜6 Ð%Ð%r$cóZ—g}|jdk7r|j|j›d�«|jdjd„|jD«««|j�1|jdjd„|jD«««|j
�|jd|j
›�«|j �|jd|j ›�«|j�|jd |j›�«dj|«S)
z}A string representation of the version that can be round-tripped.
>>> str(Version("1.0a5"))
'1.0a5'
rÚ!rSc3ó2K—|]}t|«–—Œy­wr.©Ústr©rOÚxs r%rQz"Version.__str__.<locals>.<genexpr>÷óèø€Ð;©l¨œc !Ÿf©lùrRÚc3ó2K—|]}t|«–—Œy­wr.rkrms r%rQz"Version.__str__.<locals>.<genexpr>ûsèø€Ð :±¨A¤ Q§±ùrRz.postz.devÚ+)rÚappendÚjoinrrrrr©r1Úpartss r%Ú__str__zVersion.__str__êsð€ð ˆð �:‰:˜Š?Ø �L‰L˜DŸJ™J˜< qÐ)Ô *ð � ‰ �S—X‘XÑ;¨d¯lªlÓ;Ó;Ô<ð �8‰8Ð Ø �L‰L˜Ÿ™Ñ :°·²Ó :Ó:Ô ;ð �9‰9Ð Ø �L‰L˜5 §¡  Ð,Ô -ð �8‰8Ð Ø �L‰L˜4 §¡˜zÐ*Ô +ð �:‰:Ð !Ø �L‰L˜1˜TŸZ™Z˜LÐ)Ô *à�w‰w�u‹~Ðr$có.—|jjS)zThe epoch of the version.
>>> Version("2.0.0").epoch
0
>>> Version("1!2.0.0").epoch
1
)rbrr0s r%rz
Version.epoch s€ð�}‰}×"Ñ"Ð"r$có.—|jjS)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.
)rbrr0s r%rzVersion.releases€ð�}‰}×$Ñ$Ð$r$có.—|jjS)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)
)rbrr0s r%rz Version.pre&s€ð�}‰}× Ñ Ð r$cód—|jjr|jjdSdS)z™The post-release number of the version.
>>> print(Version("1.2.3").post)
None
>>> Version("1.2.3.post1").post
1
r
N)rbrr0s r%rz Version.post5s*€ð)-¯
©
×(:Ò(:ˆt�}‰}×!Ñ! !Ñ$ÐDÀÐDr$cód—|jjr|jjdSdS)z•The development number of the version.
>>> print(Version("1.2.3").dev)
None
>>> Version("1.2.3.dev1").dev
1
r
N)rbrr0s r%rz Version.dev@s*€ð(,§}¡}×'8Ò'8ˆt�}‰}× Ñ  Ñ#ÐB¸dÐBr$cóˆ—|jjr,djd„|jjD««Sy)zŸThe local version segment of the version.
>>> print(Version("1.2.3").local)
None
>>> Version("1.2.3+abc").local
'abc'
rSc3ó2K—|]}t|«–—Œy­wr.rkrms r%rQz Version.local.<locals>.<genexpr>Usèø€Ð@Ñ,? qœC ŸFÑ,?ùrRN)rbrrtr0s r%rz
Version.localKs3€ð �=‰=× Ò Ø—8‘8Ñ@¨D¯M©M×,?Ò,?Ó@Ó@Ð @àr$có>—t|«jdd«dS)zÝThe public portion of the version.
>>> 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'
rrr
r)rlr_r0s r%ÚpubliczVersion.publicYs€ô�4‹y�‰˜s AÓ& qÑ)Ð)r$cóä—g}|jdk7r|j|j›d�«|jdjd„|jD«««dj|«S)a\The "base version" of the version.
>>> 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.
rrirSc3ó2K—|]}t|«–—Œy­wr.rkrms r%rQz'Version.base_version.<locals>.<genexpr>{rorRrp)rrsrtrrus r%Ú base_versionzVersion.base_versionfs\€ðˆð �:‰:˜Š?Ø �L‰L˜DŸJ™J˜< qÐ)Ô *ð � ‰ �S—X‘XÑ;¨d¯lªlÓ;Ó;Ô<à�w‰w�u‹~Ðr$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)rrr0s r%Ú
is_prereleasezVersion.is_prereleases!€ð�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)rr0s 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)rr0s r%Ú
is_devreleasezVersion.is_devrelease›s€ð�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©Úlenrr0s r%Úmajorz
Version.major¦s'€ô#& 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
ér
rr‹r0s 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
ér�rr‹r0s r%Úmicroz
Version.microºr‘r$N)r'rlrGÚNone)rGrlrF©rGr)rGr)rGz
int | None)rGú
str | None)rGrH)rr r!r)ÚreÚcompilerÚVERBOSEÚ
IGNORECASEr[r"rergrwÚpropertyrrrrrrr€rƒr…r‡r‰r�r�r”r#r$r%rr¡sj…ñð.ˆR�Z‰Z˜ /Ñ1°GÑ;¸R¿Z¹ZÈ"Ï-É-Ñ=WÓ
X€FØ
ƒLó$
óL&óðBò#óð#ðò
%óð
%ðò !óð !ðòEóðEðòCóðCðò óð ðò
*óð
*ðòóðð0ò<óð<ð ò%óð%ðò$óð$ðò@óð@ðò@óð@ðò@óñ@r$có*‡—eZdZedˆfd„ «ZˆxZS)Ú_TrimmedReleasecóf•—t‰|�}d„t|«D«}t|d¬«}|d|dzS)z°
Release segment without any trailing zeros.
>>> _TrimmedRelease('1.0.0').release
(1,)
>>> _TrimmedRelease('0.0').release
(0,)
c3ó,K—|] \}}|sŒ |–—Œy­wr.r#)rOÚindexÚvals r%rQz*_TrimmedRelease.release.<locals>.<genexpr>Òsèø€ÐB©N™j˜e Sºc”E©Nùs‚
�r)ÚdefaultNr
)ÚsuperrÚ enumerateÚmax)r1ÚrelÚnonzerosÚ last_nonzeroÚ __class__s €r%rz_TrimmedRelease.releaseÇs;ø€ô‰g‰oˆÙB¬I°c¬NÓBˆÜ˜8¨QÔ/ˆ ØÐ%�\ AÑ%Ð&Ð&r$r–)rr r!rœrÚ
__classcell__)rªs@r%ržržÆsø„Ø
ô 'óô 'r$ržcó®—|r>|€d}|j«}|dk(rd}n|dk(rd}n
|dvrd}n|dvrd }|t|«fS|rJ‚|rd }|t|«fSy)
NrÚalphaÚaÚbetaÚb)ÚcrÚpreviewÚrc)ÚrevÚrr)Úlowerr)ÚletterÚnumbers r%r`r`×sŠ€ñð ˆ>؈Fð—‘“ˆð
�WÒ Ø‰FØ
�vÒ
؉FØ