
    wBf
                         d Z ddlZddlmZ ddlmZ ddlmZ ddl	m
Z
 ddlmZ ddlmZmZ dd	lmZ  ee      Zd
 Zd Zy)zPip-flavored installer.    N)	getLogger   )Utf8NamedTemporaryFile)context)Spinner)get_pip_installed_packagespip_subprocess)CONDA_SESSION_SCHEMESc                    |j                   j                  dd      d   }|t        v rd}nY	 t        j                  t        j
                  |j                               }t        j                  |t        j                        sd}d}	 t        ddd|d	      }|j                  d
j                  |             |j                          ddd|j                  dg}t        || |      \  }	}
|t        j                   |j                        ridt        j"                  vr*t        j$                  |j                         t+        |	      S t&        j)                  d|j                          t+        |	      S t+        |	      S # t        $ r d}Y w xY w# |ut        j                   |j                        rUdt        j"                  vr t        j$                  |j                         w t&        j)                  d|j                          w w w xY w)a  
    Installs the pip dependencies in specs using a temporary pip requirements file.

    Args
    ----
    prefix: string
      The path to the python and pip executables.

    specs: iterable of strings
      Each element should be a valid pip dependency.
      See: https://pip.pypa.io/en/stable/user_guide/#requirements-files
           https://pip.pypa.io/en/stable/reference/pip_install/#requirements-file-format
    z://   r   Nwz	condaenv.z.requirements.txtF)modeprefixsuffixdirdelete
installz-Uz-rz--exists-action=b)cwdCONDA_TEST_SAVE_TEMPSz8CONDA_TEST_SAVE_TEMPS :: retaining pip requirements.txt )filesplitr
   opdirnameabspathosaccessW_OKAttributeErrorr   writejoinclosenamer	   isfileenvironremovelogwarningr   )r   specsargs_kwargs
url_schemepip_workdirrequirementspip_cmdstdoutstderrs              8lib/python3.12/site-packages/conda/env/installers/pip.py_pip_install_via_requirementsr4      s    *1-J**	**RZZ		%:;K99["''2" L-&
 	499U+, dD,*;*;=PQ'[I #		,2C2C(D&bjj8		,++,
 &f-- N|O`O`Nab &f--%f--9  	K	* #		,2C2C(D&bjj8		,++,N|O`O`Nab	 )E#s    AE> A"F >FFA9H	c                      t        dt        j                   xr t        j                   t        j                        5  t        | i |cd d d        S # 1 sw Y   y xY w)NzInstalling pip dependencies)r   r   verbosequietjsonr4   )r*   r,   s     r3   r   r   G   sN    	%OO1GMM 1
 >
 -d=f=> > >s   AA)__doc__r   os.pathpathr   loggingr   auxlib.compatr   base.contextr   	common.ior   env.pip_utilr   r	   gateways.connection.sessionr
   __name__r'   r4   r        r3   <module>rE      s7     	   3 #   F @2.j>rD   