7f/dZddlZddlmZddlmZddlmZmZm Z m Z ddl m Z ddl mZddlmZdd lmZdd lmZmZdd lmZdd lmZdd lmZddlmZddlmZddlm Z ddl!m"Z"ddl#m$Z$m%Z%m&Z&m'Z'ddl(m)Z)ddl*m+Z+ddl,m-Z-ddl.m/Z/m0Z0m1Z1ej2e3Z4e1j5e1j6e1j7gZ8dedefdZ9GddeZ:dS)zContains 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. N)partial)Values)AnyListOptionalTuple) WheelCache) cmdoptions)IndexGroupCommand)SessionCommandMixin) CommandErrorPreviousBuildDirError) LinkCollector) PackageFinder)SelectionPreferences) TargetPython) PipSession) BuildTracker)RequirementPreparer)install_req_from_editableinstall_req_from_line#install_req_from_parsed_requirementinstall_req_from_req_string)parse_requirements)InstallRequirement) BaseResolver) TempDirectoryTempDirectoryTypeRegistry tempdir_kindsfuncreturnc dtddfddtdtdttdt t ffd }|S) zNDecorator for common logic related to managing temporary directories. registryr!NcFtD]}||ddS)NF)KEEPABLE_TEMPDIR_TYPES set_delete)r#ts }/builddir/build/BUILD/imunify360-venv-2.3.5/opt/imunify360/venv/lib/python3.11/site-packages/pip/_internal/cli/req_command.pyconfigure_tempdir_registryz0with_cleanup..configure_tempdir_registry7s4' * *A   5 ) ) ) ) * *selfoptionsargsc|jJ|jr|j |||S#t$r|jwxYwN)tempdir_registryno_cleanr)r+r,r-r)r s r(wrapperzwith_cleanup..wrapper;s$000   > & &t'< = = = 4gt,, ,$    ' &t'< = = =   s 0A )rRequirementCommandrrrrint)r r2r)s` @r( with_cleanupr52sy *-F*4**** +19=c # Nr*ceZdZdededdffd ZededefdZe d"d e ded e d e d e d edeededefdZe d#ded e dedeed edededededeedeeedfdefdZdeeded e d e deef dZed e ddfdZ d$ded e d eedeede f d!ZxZS)%r3r-kwr!Nctj|i||jt jdSr/)super__init__cmd_opts add_optionr r1)r+r-r7 __class__s r(r:zRequirementCommand.__init__OsD$%"%%%   !4!6!677777r*r,cd|jvrdSdS)zEDetermines which resolver should be used, based on the given options.zlegacy-resolverlegacy resolvelib)deprecated_features_enabledr,s r(determine_resolver_variantz-RequirementCommand.determine_resolver_variantTs  C C C8|r*rtemp_build_dir build_trackersessionfinder use_user_site download_dir verbosityc X|j} | Jd} ||} | dkr&d|jv} | rtdn'd} d} d|jvrtdt | |j||j|j|||j ||j || || S) zQ Create a RequirementPreparer instance for the given parameters. NFr@z fast-depszpip 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_dirsrc_dirrIbuild_isolationcheck_build_depsrErF progress_barrGrequire_hashesrH lazy_wheelrJlegacy_resolver) pathrCfeatures_enabledloggerwarningrrMrNrOrPrQ) clsrDr,rErFrGrHrIrJtemp_build_dir_pathrSresolver_variantrRs r(make_requirement_preparerz,RequirementCommand.make_requirement_preparer\s-1"...99'BB | + +$(@@J "#OJg666Q#)O%#3$5' -"1'!+    r*FTto-satisfy-onlypreparer wheel_cacheignore_installedignore_requires_pythonforce_reinstallupgrade_strategy use_pep517py_version_info.c dtt|j| } ||} | dkr=ddl}|jjjj |||| ||j |||| |  Sddl }|jjj j |||| ||j |||| |  S)zF Create a Resolver instance for the given parameters. )isolatedrcr@rN) r]rGr^make_install_reqrHignore_dependenciesr_r`rarbrd) rr isolated_moderC,pip._internal.resolution.resolvelib.resolver _internal resolutionr@resolverResolverrh(pip._internal.resolution.legacy.resolverr?)rXr]rGr,r^rHr_r`rarbrcrdrgrZpips r( make_resolverz RequirementCommand.make_resolvers$# '*!    99'BB | + + ? ? ? ?=+6?HH!'!1+$+$?!1'= /!1 /I    8777}'.7@@#-' ' ;-#9+-+A   r*c g}|jD]E}t|d|||D].}t||jd}||/F|D]E} t | d|j|jdt|dd}||F|jD]D} t| d|j|jt|dd}||E|j D]l}t|||| D]V}t||j|jd|j r|j dnd }||Wmtd |Drd|_|sy|jsr|j skd |ji} |jrAt#d jdit'| d|jt#djdi| |S)zS Parse command-line arguments into the corresponding requirements. T) constraintrGr,rFF)rf user_suppliedNconfig_settings) comes_fromrfrcrtru)rtrfrcru)rGr,rF)rfrcrtruc3$K|] }|jV dSr/)has_hash_options).0reqs r( z6RequirementCommand.get_requirements..s%<<s#<<<<<>Dt388G4F+G+GHHH#5..4==7;== r*cx|j}|}|rt|dSdS)zE Trace basic information about the provided objects. N) search_scopeget_formatted_locationsrVinfo)rGr locationss r(trace_basic_infoz#RequirementCommand.trace_basic_info$sG *  88::  # KK " " " " " # #r* target_pythonctj||}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. rBT) allow_yankedformat_controlallow_all_prereleases prefer_binaryr`)link_collectorselection_prefsr)rcreaterrprerr)r+r,rFrr`rrs r(_build_package_finderz(RequirementCommand._build_package_finder/si'-gwGGG."1")+!/#9    #)+'    r*)Nr)NFTFFr\NN)NN)__name__ __module__ __qualname__rr: staticmethodrstrrC classmethodrrrrboolrr4rr[r rrrqrrrrrr __classcell__)r=s@r(r3r3Ns8c88888888 Fs\'+4 4 %4 4 $ 4  4  4 4 sm4 4  4 4 4 [4 l -1#!%', % 1%)598 8 %8 8  8 j) 8  8 8 !%8 8 8 TN8 "%S/28  8 8 8 [8 tT3iTT T  T  ! TTTTl##4###\#1515      -  !)           r*r3);__doc__logging functoolsroptparsertypingrrrrpip._internal.cacher pip._internal.clir pip._internal.cli.index_commandr r pip._internal.exceptionsr rpip._internal.index.collectorr"pip._internal.index.package_finderr$pip._internal.models.selection_prefsr"pip._internal.models.target_pythonrpip._internal.network.sessionr,pip._internal.operations.build.build_trackerr pip._internal.operations.preparerpip._internal.req.constructorsrrrrpip._internal.req.req_filerpip._internal.req.req_installrpip._internal.resolution.baserpip._internal.utils.temp_dirrrr getLoggerrrV BUILD_ENVEPHEM_WHEEL_CACHE REQ_BUILDr%r5r3rr*r(rsw------------******((((((======VVVVVVHHHHHHHH777777<<<<<<EEEEEE;;;;;;444444EEEEEE@@@@@@ :99999<<<<<<666666  8 $ $#ss8{ { { { { *{ { { { { r*