§ ·fÓ_R,…ãóh—ddlmZddlmZmZddlmZmZddlm Z eGd„d¦«¦«Z dS)é)Ú annotations)Ú dataclassÚfield)ÚNormalizedNameÚcanonicalize_name)Ú CommandErrorcó˜—eZdZUdZee¬¦«Zded<ee¬¦«Zded<ede dd¬¦«Z ded <dd„Z dd„Z dd„Z dS)ÚReleaseControlz9Helper for managing which release types can be installed.)Údefault_factoryúset[str]Ú all_releasesÚ only_finalF)Úinitr ÚcompareÚreprúlist[tuple[str, str]]Ú_orderÚvalueÚstrÚtargetÚotherÚ attr_nameÚreturnÚNonecóž—| d¦«rtd¦«‚| d¦«}d|vr~| ¦«| ¦«| d¦«|j |df¦«|d| d¦«dz…=d|vrdSd|v°~|D]Ž}|dkr1| ¦«|j |df¦«Œ9t|¦«}|  |¦«| |¦«|j ||f¦«ŒdS)aÈParse and apply release control option value. Processes comma-separated package names or special values `:all:` and `:none:`. When adding packages to target, they're removed from other to maintain mutual exclusivity between all_releases and only_final. All operations are tracked in order so that the original command-line argument sequence can be reconstructed when passing options to build subprocesses. ú-z9--all-releases / --only-final option requires 1 argument.ú,ú:all:Néz:none:) Ú startswithrÚsplitÚclearÚaddrÚappendÚindexrÚdiscard)ÚselfrrrrÚnewÚnames ú„/builddir/build/BUILD/imunify360-venv-2.6.2/opt/imunify360/venv/lib/python3.11/site-packages/pip/_internal/models/release_control.pyÚhandle_mutual_excludesz%ReleaseControl.handle_mutual_excludessl€ð × Ò ˜CÑ Ô ð ÝØKñôð ðkŠk˜#ÑԈؘˆnˆnØ KŠK‰MŒMˆMØ LŠL‰NŒNˆNØ JŠJwÑ Ô Ð à ŒK× Ò   ¨7Ð3Ñ 4Ô 4Ð 4ØÐ,c—i’i Ñ(Ô(¨1Ñ,Ð,Ð-à˜sÐ"Ð"Øð˜ˆnˆnðð 2ð 2ˆDØxÒÐØ— ’ ‘”à” ×"Ò" I¨xÐ#8Ñ9Ô9Ð9ØÝ$ TÑ*Ô*ˆDØ MŠM˜$Ñ Ô Ð Ø JŠJtÑ Ô Ð à ŒK× Ò   ¨4Ð0Ñ 1Ô 1Ð 1Ð 1ð 2ð 2ócó —|jdd…S)a¼ Get ordered list of (flag_name, value) tuples for reconstructing CLI args. Returns: List of tuples where each tuple is (attribute_name, value). The attribute_name is either 'all_releases' or 'only_final'. Example: [("all_releases", ":all:"), ("only_final", "simple")] would be reconstructed as: ["--all-releases", ":all:", "--only-final", "simple"] N)r)r's r*Úget_ordered_argszReleaseControl.get_ordered_args<s€ðŒ{˜1˜1˜1Œ~Ðr,Úcanonical_namerú bool | Nonecó^—||jvrdS||jvrdSd|jvrdSd|jvrdSdS)a  Determine if pre-releases are allowed for a package. Returns: True: Pre-releases are allowed (package in all_releases) False: Only final releases allowed (package in only_final) None: No specific setting, use default behavior TFrN)r r)r'r/s r*Úallows_prereleasesz!ReleaseControl.allows_prereleasesKsS€ð ˜TÔ.Ð .Ð .Ø4Ø ˜tœÐ .Ð .Ø5Ø ˜Ô)Ð )Ð )Ø4Ø ˜œÐ 'Ð 'Ø5؈tr,N) rrrr rr rrrr)rr)r/rrr0)Ú__name__Ú __module__Ú __qualname__Ú__doc__rÚsetr Ú__annotations__rÚlistrr+r.r2©r,r*r r sÈ€€€€€€àCÐCà"˜U°3Ð7Ñ7Ô7€LÐ7Ð7Ð7Ñ7Ø ˜5°Ð5Ñ5Ô5€JÐ5Ð5Ð5Ñ5Ø$) EØ  D°%¸eð%ñ%ô%€Fðððñð%2ð%2ð%2ð%2ðN ð ð ð ððððððr,r N) Ú __future__rÚ dataclassesrrÚpip._vendor.packaging.utilsrrÚpip._internal.exceptionsrr r:r,r*úr?s¡ðØ"Ð"Ð"Ð"Ð"Ð"à(Ð(Ð(Ð(Ð(Ð(Ð(Ð(àIÐIÐIÐIÐIÐIÐIÐIà1Ð1Ð1Ð1Ð1Ð1ð ðPðPðPðPðPñPôPñ „ðPðPðPr,