hyb
2026-01-30 44480e71b27aa9d4cb8441f50c873f1b110e9691
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
Ë
ñúh3ãóÄ—dZddlmZddlZddlmZddlmZddlm    Z    ddl
m Z ddl m Z dd    lmZdd
lmZdd lmZdd lmZmZdd lmZddlmZddlmZddlmZddlmZddl m!Z!ddl"m#Z#ddl$m%Z%m&Z&m'Z'm(Z(ddl)m*Z*ddl+m,Z,ddl-m.Z.ddl/m0Z0ddl1m2Z2m3Z3m4Z4ejje6«Z7e4jpe4jre4jtgZ;dd„Z<Gd„de«Z=y)zðContains the RequirementCommand base class.
 
This class is in a separate module so the commands that do not always
need PackageFinder capability don't unnecessarily import the
PackageFinder machinery and all its vendored dependencies, etc.
é)Ú annotationsN)Úpartial)ÚValues)ÚAny)Ú#SubprocessBuildEnvironmentInstaller)Ú
WheelCache)Ú
cmdoptions)ÚIndexGroupCommand)ÚSessionCommandMixin)Ú CommandErrorÚPreviousBuildDirError)Ú LinkCollector)Ú PackageFinder)ÚSelectionPreferences)Ú TargetPython)Ú
PipSession)Ú BuildTracker)ÚRequirementPreparer)Úinstall_req_from_editableÚinstall_req_from_lineÚ#install_req_from_parsed_requirementÚinstall_req_from_req_string)Úparse_dependency_groups)Úparse_requirements)ÚInstallRequirement)Ú BaseResolver)Ú TempDirectoryÚTempDirectoryTypeRegistryÚ tempdir_kindscó0‡‡—dd„Š                                dˆˆfd„ }|S)zNDecorator for common logic related to managing temporary
    directories.
    có>—tD]}|j|d«Œy)NF)ÚKEEPABLE_TEMPDIR_TYPESÚ
set_delete)ÚregistryÚts  úPH:\Change_password\venv_build\Lib\site-packages\pip/_internal/cli/req_command.pyÚconfigure_tempdir_registryz0with_cleanup.<locals>.configure_tempdir_registry;s!€Ü'ò    *ˆAØ × Ñ   5Õ )ñ    *óc󲕗|j€J‚|jr‰|j«    ‰|||«S#t$r‰|j«‚wxYw©N)Útempdir_registryÚno_cleanr )ÚselfÚoptionsÚargsr'Úfuncs   €€r&Úwrapperzwith_cleanup.<locals>.wrapper?sdø€ð×$Ñ$Ð0Ð0Ð0Ø × Ò Ù & t×'<Ñ'<Ô =ð    Ù˜˜g tÓ,Ð ,øÜ$ò    ñ ' t×'<Ñ'<Ô =Ø ð     ús    ¯    9¹A)r$rÚreturnÚNone)r-ÚRequirementCommandr.rr/z    list[Any]r2z
int | None©)r0r1r's` @r&Ú with_cleanupr66s4ù€ó
*ðØ ðØ+1ðØ9Bðà    öð  €Nr(có ‡—eZdZdˆfd„ Zed    d„«Ze        d
                                                                    d d„«Ze                                d                                                                                             d d„«Z                                        dd„Z    edd„«Z
        d                                    dd„Z ˆxZ S)r4cóؕ—t‰||i|¤Ž|jjt    j
««|jjt    j ««yr*)ÚsuperÚ__init__Úcmd_optsÚ
add_optionr    Údependency_groupsr,)r-r/ÚkwÚ    __class__s   €r&r:zRequirementCommand.__init__SsKø€Ü ‰Ñ˜$Ð% "Ò%à  ‰ × Ñ ¤×!=Ñ!=Ó!?Ô@Ø  ‰ × Ñ ¤×!4Ñ!4Ó!6Õ7r(có"—d|jvryy)zEDetermines which resolver should be used, based on the given options.zlegacy-resolverÚlegacyÚ
resolvelib)Údeprecated_features_enabled©r.s r&Údetermine_resolver_variantz-RequirementCommand.determine_resolver_variantYs€ð  × CÑ CÑ CØàr(c    óè—|j}    |    €J‚d}
|j|«} | dk(r&d|jv} | r=tj    d«n'd}
d} d|jvrtj    d«t did|    “d|j “d    |“d
|j“d t|«“d |j“d |“d|“d|j“d|“d|j“d|“d| “d|“d|
“d|j“ŽS)zQ
        Create a RequirementPreparer instance for the given parameters.
        FrBz    fast-depszÊpip is using lazily downloaded wheels using HTTP range requests to obtain dependency information. This experimental feature is enabled through --use-feature=fast-deps and it is not ready for production.Tz;fast-deps has no effect when used with the legacy resolver.Ú    build_dirÚsrc_dirÚ download_dirÚbuild_isolationÚbuild_isolation_installerÚcheck_build_depsÚ build_trackerÚsessionÚ progress_barÚfinderÚrequire_hashesÚ use_user_siteÚ
lazy_wheelÚ    verbosityÚlegacy_resolverÚresume_retriesr5) ÚpathrEÚfeatures_enabledÚloggerÚwarningrrHrJrrLrOrQrV) ÚclsÚtemp_build_dirr.rMrNrPrRrIrTÚtemp_build_dir_pathrUÚresolver_variantrSs              r&Úmake_requirement_preparerz,RequirementCommand.make_requirement_preparerasZ€ð-×1Ñ1ÐØ"Ð.Ð.Ð.؈à×9Ñ9¸'ÓBÐØ ˜|Ò +Ø$¨×(@Ñ(@Ð@ˆJÙÜ—‘ð"õð#ˆO؈Jؘg×6Ñ6Ñ6Ü—‘ØQôô#ò
Ù)ð
à—O’Oð
ñ&ð
ð$×3Ò3ð    
ô
'JÈ&Ô&Qð 
ð %×5Ò5ð 
ñ(ð
ñð
ð!×-Ò-ð
ñð
ð#×1Ò1ð
ñ(ð
ñ"ð
ñ ð
ñ,ð
ð #×1Ò1ð!
ð    
r(c ó®—tt|j|
¬«} |j|«} | dk(rRddl}|j
j jjj|||| ||j||||    | ¬« Sddl }|j
j jjj|||| ||j||||    | ¬« S)zF
        Create a Resolver instance for the given parameters.
        )ÚisolatedÚ
use_pep517rBrN) ÚpreparerrPÚ wheel_cacheÚmake_install_reqrRÚignore_dependenciesÚignore_installedÚignore_requires_pythonÚforce_reinstallÚupgrade_strategyÚpy_version_info) rrÚ isolated_moderEÚ,pip._internal.resolution.resolvelib.resolverÚ    _internalÚ
resolutionrBÚresolverÚResolverrfÚ(pip._internal.resolution.legacy.resolverrA)r[rcrPr.rdrRrgrhrirjrbrkrer^Úpips               r&Ú make_resolverz RequirementCommand.make_resolveršsï€ô$#Ü 'Ø×*Ñ*Ø!ô
Ðð
×9Ñ9¸'ÓBÐð ˜|Ò +Û ?à—=‘=×+Ñ+×6Ñ6×?Ñ?×HÑHØ!ØØ'Ø!1Ø+Ø$+×$?Ñ$?Ø!1Ø'=Ø /Ø!1Ø /ðIó ð ó    8à}‰}×'Ñ'×.Ñ.×7Ñ7×@Ñ@ØØØ#Ø-Ø'Ø '× ;Ñ ;Ø-Ø#9Ø+Ø-Ø+ðAó 
ð     
r(c óö—g}|jD]@}t|d|||¬«D]+}t||jd¬«}|j    |«Œ-ŒB|D]C}    t |    d|j|j dt|dd«¬«}|j    |«ŒE|jrNt|j«D]6}    t|    |j|j d¬«}|j    |«Œ8|jD]B}    t|    d|j|j t|dd«¬    «}|j    |«ŒD|jD]r}t||||¬
«D]^}t||j|j d|jr|jjd«nd¬ «}|j    |«Œ`Œtt!d „|D««rd|_|s˜|jsŒ|js€|jstd |j$i}
|j&r?t)dj*dit-|
dj/|j&«¬«¤Ž«‚t)dj*di|
¤Ž«‚|S)zS
        Parse command-line arguments into the corresponding requirements.
        T)Ú
constraintrPr.rNF)raÚ user_suppliedNÚconfig_settings)Ú
comes_fromrarbrwrx)rarbrw)rwrarbrx)rPr.rN)rarbrwrxc3ó4K—|]}|j–—Œy­wr*)Úhas_hash_options)Ú.0Úreqs  r&ú    <genexpr>z6RequirementCommand.get_requirements.<locals>.<genexpr>!sèø€Ò<¨ˆs×#Õ#Ñ<ùs‚ÚnamezXYou must give at least one requirement to {name} (maybe you meant "pip {name} {links}"?)ú )ÚlinkszHYou must give at least one requirement to {name} (see "pip help {name}")r5)Ú constraintsrrrlÚappendrrbÚgetattrr=rrÚ    editablesrÚ requirementsr.ÚgetÚanyrQrÚ
find_linksr ÚformatÚdictÚjoin) r-r/r.rPrNr†ÚfilenameÚ
parsed_reqÚ
req_to_addr}Úoptss            r&Úget_requirementsz#RequirementCommand.get_requirementsÕs½€ð24ˆ Ø×+Ñ+ò     0ˆHÜ0ØØØØØô ò 0
ôAØØ$×2Ñ2Ø"'ô
ð
×#Ñ# JÕ/ñ 0ð     0ðò        ,ˆCÜ.ØØØ ×.Ñ.Ø"×-Ñ-Ø"Ü '¨Ð1BÀDÓ Iô ˆJð × Ñ  
Õ +ð        ,ð × $Ò $Ü.¨w×/HÑ/HÓIò 0Ü8ØØ$×2Ñ2Ø&×1Ñ1Ø"&ô    
ð ×#Ñ# JÕ/ð 0ð×$Ñ$ò    ,ˆCÜ2ØØ"Ø ×.Ñ.Ø"×-Ñ-Ü '¨Ð1BÀDÓ Iô ˆJð × Ñ  
Õ +ð    ,ð ×,Ñ,ò    0ˆHÜ0Ø °À'ôò 0
ôAØØ$×2Ñ2Ø&×1Ñ1Ø"&ð&×-Ò-ð#×*Ñ*×.Ñ.Ð/@ÔAà!ô

ð×#Ñ# JÕ/ñ 0ð    0ô$ Ñ<¨|Ô<Ô <Ø%)ˆGÔ "ñ Ø× Ò Ø×#Ò#Ø×(Ò(à˜DŸI™IÐ&ˆDØ×!Ò!Ü"ðEð>ß>D¹fñä˜t¨3¯8©8°G×4FÑ4FÓ+GÔHñóðô#ð5ð.ß.4©fñ=Ø7;ñ=óðð
Ðr(cól—|j}|j«}|rtj|«yy)zE
        Trace basic information about the provided objects.
        N)Ú search_scopeÚget_formatted_locationsrYÚinfo)rPr“Ú    locationss   r&Útrace_basic_infoz#RequirementCommand.trace_basic_info:s1€ð ×*Ñ*ˆ Ø ×8Ñ8Ó:ˆ    Ù Ü K‰K˜    Õ "ð r(có¼—tj||¬«}td|j|j|j
|¬«}t j|||¬«S)zÛ
        Create a package finder appropriate to this requirement command.
 
        :param ignore_requires_python: Whether to ignore incompatible
            "Requires-Python" values in links. Defaults to False.
        rDT)Ú allow_yankedÚformat_controlÚallow_all_prereleasesÚ prefer_binaryrh)Úlink_collectorÚselection_prefsÚ target_python)rÚcreaterršÚprerœr)r-r.rNrŸrhrržs       r&Ú_build_package_finderz(RequirementCommand._build_package_finderEs]€ô'×-Ñ-¨g¸wÔGˆÜ.ØØ"×1Ñ1Ø")§+¡+Ø!×/Ñ/Ø#9ô 
ˆô×#Ñ#Ø)Ø+Ø'ô
ð    
r()r/rr>rr2r3)r.rr2Ústr)Nr)r\rr.rrMrrNrrPrrRÚboolrIz
str | NonerTÚintr2r)NFTFFzto-satisfy-onlyNN)rcrrPrr.rrdzWheelCache | NonerRr¤rgr¤rhr¤rir¤rjr£rbú bool | Nonerkztuple[int, ...] | Noner2r)
r/z    list[str]r.rrPrrNrr2zlist[InstallRequirement])rPrr2r3)NN)
r.rrNrrŸzTargetPython | Nonerhr¦r2r) Ú__name__Ú
__module__Ú __qualname__r:Ú staticmethodrEÚ classmethodr_rtr‘r—r¢Ú __classcell__)r?s@r&r4r4RsÃø„õ8ð òóððð$(Øð6
à%ð6
ðð6
ð$ð    6
ð
ð 6
ð ð 6
ðð6
ð!ð6
ðð6
ð
ò6
óð6
ðpð *.Ø#Ø!%Ø',Ø %Ø 1Ø"&Ø26ð8
à%ð8
ðð8
ðð    8
ð
'ð 8
ð ð 8
ðð8
ð!%ð8
ðð8
ðð8
ð ð8
ð0ð8
ð
ò8
óð8
ðtcàðcððcðð    cð
ð cð
"ó cðJò#óð#ð.2Ø.2ð 
àð
ðð
ð+ð    
ð
!,ð 
ð
÷ 
r(r4)r0rr2r)>Ú__doc__Ú
__future__rÚloggingÚ    functoolsrÚoptparserÚtypingrÚpip._internal.build_envrÚpip._internal.cacherÚpip._internal.clir    Úpip._internal.cli.index_commandr
r Úpip._internal.exceptionsr r Úpip._internal.index.collectorrÚ"pip._internal.index.package_finderrÚ$pip._internal.models.selection_prefsrÚ"pip._internal.models.target_pythonrÚpip._internal.network.sessionrÚ,pip._internal.operations.build.build_trackerrÚ pip._internal.operations.preparerÚpip._internal.req.constructorsrrrrÚ&pip._internal.req.req_dependency_grouprÚpip._internal.req.req_filerÚpip._internal.req.req_installrÚpip._internal.resolution.baserÚpip._internal.utils.temp_dirrrrÚ    getLoggerr§rYÚ    BUILD_ENVÚEPHEM_WHEEL_CACHEÚ    REQ_BUILDr"r6r4r5r(r&ú<module>rÉs²ðñõ#ãÝÝÝåGÝ*Ý(Ý=ÝVßHÝ7Ý<ÝEÝ;Ý4ÝEÝ@÷óõ KÝ9Ý<Ý6÷ñð
ˆ×    Ñ    ˜8Ó    $€ð×ÑØ×#Ñ#Ø×ÑðÐóô8M
Ð*õM
r(