h) dZddlZddlZddlZddlZddlZddlZddlmZddl m Z ddl m Z m Z mZmZmZmZmZmZddlmZddlmZddlmZdd lmZmZmZdd lm Z m!Z!dd l"m#Z#dd l$m%Z%dd l&m'Z'ddl(m)Z)m*Z*e rddl+m,Z,ej-e.Z/de0de0deee0ee0e0fffdZ1GddZ2de0fdZ3dee0fdZ4GddZ5Gdde5Z6dS)z;Build Environment used for isolation during sdist building N) OrderedDict) TracebackType) TYPE_CHECKINGIterableListOptionalSetTupleTypeUnion)Version)__file__) open_spinner) get_platlib get_purelib get_scheme)get_default_environmentget_environment)VERBOSE)get_requirement)call_subprocess) TempDirectory tempdir_kinds) PackageFinderabreturnc||kr||fn|fSN)rrs w/builddir/build/BUILD/imunify360-venv-2.5.2/opt/imunify360/venv/lib/python3.11/site-packages/pip/_internal/build_env.py_dedupr"s!VVAq66!%ceZdZdeddfdZdS)_PrefixpathrNc||_d|_td|}|j|_t |j|j|_dS)NF)prefix) r&setuprscriptsbin_dirr"purelibplatliblib_dirs)selfr&schemes r!__init__z_Prefix.__init__$sD  Bt,,,~ v~v~>> r#)__name__ __module__ __qualname__strr2r r#r!r%r%#s6?S?T??????r#r%ctjtj}|st |Stj|dz S)zGet a file to pass to a Python executable, to run the currently-running pip. This is used to run a pip subprocess, for installing requirements into the build environment. z__pip-runner__.py) pathlibPath pip_locationresolveparentis_dirr6osfsdecode)sources r!get_runnable_piprA,sV \, ' ' / / 1 1 8F ==??6{{ ;v 33 4 44r#cttdrtj}ntt g}d|DS)zGet system site packages Usually from site.getsitepackages, but fallback on `get_purelib()/get_platlib()` if unavailable (e.g. in a virtualenv created by virtualenv<20) Returns normalized set of strings. getsitepackagescLh|]!}tj|"Sr )r>r&normcase).0r&s r! z+_get_system_sitepackages..Ms( < < r&join)rFnametemp_dirs r! z,BuildEnvironment.__init__..VsV% % 727<< t<<== >% % % % % % r#)normaloverlayrIzsitecustomize.pywzutf-8)encodinga import os, site, sys # First, drop system-sites related paths. original_sys_path = sys.path[:] known_paths = set() for path in {system_sites!r}: site.addsitedir(path, known_paths=known_paths) system_paths = set( os.path.normcase(path) for path in sys.path[len(original_sys_path):] ) original_sys_path = [ path for path in original_sys_path if os.path.normcase(path) not in system_paths ] sys.path = original_sys_path # Second, add lib directories. # ensuring .pth file are processed. for path in {lib_dirs!r}: assert not path in sys.path site.addsitedir(path) )rJr/)rr BUILD_ENVr _prefixes _bin_dirs _lib_dirsreversedlistvaluesappendr,extendr/rKr>r&rR _site_direxistsmkdiropenwritetextwrapdedentformat)r0r)rJfprTs @r!r2zBuildEnvironment.__init__Ss m&=PTUUU$% % % % -% % %    %'$&tDN$9$9$;$;<<== 3 3F N ! !&. 1 1 1 N ! !&/ 2 2 2 2 011 hmV<<w~~dn-- % HT^ $ $ $  GLL); < environget)rFrSs r! z.BuildEnvironment.__enter__..s:    "*..t,,   r#)PATHPYTHONNOUSERSITE PYTHONPATHrq1) _save_envr\rbsplitr>pathseprcrnupdaterR)r0r&old_path pythonpaths r! __enter__zBuildEnvironment.__enter__s  B    ~aaa >&)  4 KKrz22 3 3 3n%   --$' jooj99       r#exc_typeexc_valexc_tbc|jD]7\}}|!tj|d(|tj|<8dSr)ruitemsr>rnpop)r0r|r}r~varname old_values r!__exit__zBuildEnvironment.__exit__s^ #'."6"6"8"8 0 0 GY  w----&/ 7##  0 0r#reqscjt}t}|rt|drt|jn t }|D]}t |}|j|jddis5||j }|s| |gt|j tr|j d|j }n|j d|j }|j|j ds| ||f||fS) zReturn 2 sets: - conflicting requirements: set of (installed, wanted) reqs tuples - missing requirements: set of reqs r]Nextrar(z==z===T) prereleases)setrHrr]rrmarkerevaluateget_distributionrSadd isinstanceversionr specifiercontains) r0rmissing conflictingenvreq_strreqdistinstalled_req_strs r!check_requirementsz#BuildEnvironment.check_requirementssU%%ee  B4--////,..    B B%g..:)#*2E2EwPRm2T2T)++CH55KK(((dlG44G+.8(E(Et|(E(E%%+.8(F(F (F(F%}--dl-MMBOO%6$@AAAG##r#finderr requirementsprefix_as_stringrOc|j|}|jrJd|_|sdS|t||||dS)NT)rO)r[r*_install_requirementsrA)r0rrrrOr)s r!install_requirementsz%BuildEnvironment.install_requirementsso 01<   F ""       #     r# pip_runnabler)c Vtj|dddd|jddddg }tt jkr|d n7ttkr|d d D]h}t|j |}| d | d dzd t|pdhfi|j}|rB| d|dg|ddD]} | d| gn|d|jD]} | d| g|jr| d|jg|jD]} | d| g|jr| d|jg|jr| d|jg|jr|d|jr|d|d | |t/d|5} t1|d|| ddddS#1swxYwYdS) Ninstallz--ignore-installedz --no-userz--prefixz--no-warn-script-locationz--disable-pip-version-checkz--targetr(z-vvz-v) no_binary only_binaryz--_-,z:none:z-irz--extra-index-urlz --no-indexz --find-linksz--proxyz--trusted-hostz--certz --client-certz--prez--prefer-binaryz Installing zpip subprocess to install ) command_descspinner)sys executabler&loggergetEffectiveLevelloggingDEBUGrargetattrformat_controlrbreplacerRsorted index_urls find_linksproxy trusted_hosts custom_cert client_certallow_all_prereleases prefer_binaryrr) rrrr)rOargsrformatsr extra_indexlinkhostrs r!rz&BuildEnvironment._install_requirementssB N     K ' )     # # % % 6 6 KK      % % ' '7 2 2 KK   :  Nf3^DDG KK>11#s;;;HHVG$9z::;;    &  & KKz!}- . . .)!""~ @ @  0+>???? @ KK % % %% 0 0D KK. / / / / < 3 KKFL1 2 2 2( 2 2D KK)40 1 1 1 1   8 KK6#56 7 7 7   ? KK&*<= > > >  ' ! KK   + KK) * * * D L!!! ... / / 7 @$@@                      s;JJ"%J"rN)r3r4r5__doc__r2r{rr BaseExceptionrrrr6r r rr staticmethodr%rr r#r!rMrMPsKK4444l    * 04 ./ 0-( 0' 0  0 0 0 0 $SM $ s5c?#SX- . $ $ $ $D  sm          *AAAsmA A  A AAA\AAAr#rMc eZdZdZddZddZdeeedeedee ddfd Z dd Z d d d e e de de ddf dZdS)NoOpBuildEnvironmentz0A no-op drop-in replacement for BuildEnvironmentrNcdSrr r0s r!r2zNoOpBuildEnvironment.__init__) r#cdSrr rs r!r{zNoOpBuildEnvironment.__enter__,rr#r|r}r~cdSrr )r0r|r}r~s r!rzNoOpBuildEnvironment.__exit__/s r#cdSrr rs r!cleanupzNoOpBuildEnvironment.cleanup7rr#rrrrrOctr)NotImplementedError)r0rrrrOs r!rz)NoOpBuildEnvironment.install_requirements:s"###r#r)r3r4r5rr2r{rr rrrrrr6rr r#r!rr&s::         4 ./ -( '           $$sm$ $  $ $$$$$$r#r)7rrr>r8rIrrh collectionsrtypesrtypingrrrrr r r r pip._vendor.packaging.versionr piprr:pip._internal.cli.spinnersrpip._internal.locationsrrrpip._internal.metadatarrpip._internal.utils.loggingrpip._internal.utils.packagingrpip._internal.utils.subprocessrpip._internal.utils.temp_dirrr"pip._internal.index.package_finderr getLoggerr3rr6r"r%rArKrMrr r#r!rs  ######SSSSSSSSSSSSSSSSSSSS111111((((((333333HHHHHHHHHHKKKKKKKK//////999999::::::EEEEEEEEA@@@@@@  8 $ $&c&c&eE#Jc3h$?@&&&&???????? 5# 5 5 5 5 =#c(====(SSSSSSSSl$$$$$+$$$$$r#