ReDddlZddlZddlZddlmZmZmZddl m Z m Z mZm Z mZmZmZmZmZmZddlmZmZddlmZmZmZGddeZeejejzZe d  Z!e d  Z"e d  Z#e d  Z$e d  Z%e d Z&e d Z'edZ(eee(ezzZ)e eee)zZ*e*dZ+e*Z,eddZ-e'e-zZ.e,ee%e,zzZ/e!ee/ze"zdZ0eej1ej2ej3zZ4eej1ej2ej3zZ5e4e5z Z6e e6ee%e6zzd ddZ7ee#e7ze$ze7zZ8e89dee8dZ:e:9deedZej9de&Z;e;ezZe+ee0ze>e=zzZ?ee?zezZ@e@AdGddZBdS) N)ListOptionalSet) CombineLiteralrParseExceptionRegexWord ZeroOrMoreoriginalTextFor stringEnd stringStart) MARKER_EXPRMarker)LegacySpecifier Specifier SpecifierSetceZdZdZdS)InvalidRequirementzJ An invalid requirement was found, users should refer to PEP 508. N)__name__ __module__ __qualname____doc__/builddir/build/BUILDROOT/alt-python311-pip-21.3.1-3.el8.x86_64/opt/alt/python311/lib/python3.11/site-packages/pip/_vendor/packaging/requirements.pyrrsrr[](),;@z-_.namez[^ ]+urlextrasF) joinStringadjacent _raw_specc|jpdS)N)r*slts rr1@s Q[->Br specifierc|dS)Nrrr-s rr1r1Cs AaDrmarkercDt||j|jS)N)r_original_start _original_endr-s rr1r1GsF1Q.@ABBrzx[]c:eZdZdZdeddfdZdefdZdefdZdS) RequirementzParse a requirement. Parse a given requirement string into its parts, such as name, specifier, URL, and extras. Raises InvalidRequirement on a badly-formed requirement string. requirement_stringreturnNc t|}nA#t$r4}td||j|jdzd|jd}~wwxYw|j|_|jrtj |j}|j dkr8tj ||jkrtdn3|j r|j r|j s|j std|j|j|_nd|_t|jr|jng|_t#|j|_|jr|jnd|_dS)NzParse error at "z": filezInvalid URL givenz Invalid URL: ) REQUIREMENT parseStringrrlocmsgr%r&urllibparseurlparsescheme urlunparsenetlocsetr'asListrr2r4)selfr:reqe parsed_urls r__init__zRequirement.__init__ds ))*<==CC   $W$6ququqy7H$IWWPQPUWW    7 ..sw77J F**<**:66#'AA,-@AAAB ' DJ,= D% D.8.? D))B)B)BCCC'*wDHHDH #3:$MCJ$5$5$7$7$72 N N '3CM'B'B7:z)Kt s A/AAc|jg}|jr@dt|j}|d|d|jr'|t |j|jr9|d|j|jr|d|jr|d|jd|S)Nr"rrz@  z; r,) r%r'joinsortedappendr2strr&r4)rKpartsformatted_extrass r__str__zRequirement.__str__}s I; ; 2"xxt{(;(;<<  LL0-000 1 1 1 > . LLT^,, - - - 8 " LLdh ) ) ){ " S!!! ; - LL+dk++ , , ,wwu~~rcd|dS)Nzr)rKs r__repr__zRequirement.__repr__s)))))r)rrrrrUrOrXrZrrrr9r9Ws|L3L4LLLL2(*#******rr9)Crestring urllib.parserCtypingrr TOptionalrpip._vendor.pyparsingrrLrr r r r r rmarkersrr specifiersrrr ValueErrorr ascii_lettersdigitsALPHANUMsuppressLBRACKETRBRACKETLPARENRPARENCOMMA SEMICOLONAT PUNCTUATIONIDENTIFIER_END IDENTIFIERNAMEEXTRAURIURL EXTRAS_LISTEXTRAS _regex_strVERBOSE IGNORECASEVERSION_PEP440VERSION_LEGACY VERSION_ONE VERSION_MANY _VERSION_SPECsetParseAction VERSION_SPECMARKER_SEPARATORMARKERVERSION_AND_MARKERURL_AND_MARKERNAMED_REQUIREMENTr?r@r9rrrrsj  3333333333                        )(((((((@@@@@@@@@@ 4$v}4 5 5 1S66??   1S66??   3   3   # AcFFOO   QsVV__d5kk ZZ 44x?@ WX > : :: ; ; z&eeHooe3hjj/// 5(XXk** *X 5x @ @y+RZ"--GHH12: 3MNN~- ww**U[0111cE  &</&8LHII >>???-}--k:: 00111,ookkmm,,X66  BB K '!HHV$4$44xx'''88F+++~@R/RS-- 9  ;*;*;*;*;*;*;*;*;*;*r