
    VPi:                         d dl 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	m
Z
 d dlmZ d dlmZ d dlmZmZmZ d d	lmZ  e j        e          Z G d
 de	          ZdS )    N)Values)
cmdoptions)make_target_python)RequirementCommandwith_cleanup)SUCCESS)get_build_tracker)
ensure_dirnormalize_pathwrite_output)TempDirectoryc                   N    e Zd ZdZdZd	dZededee	         de
fd            ZdS )
DownloadCommandaL  
    Download packages from:

    - PyPI (and other indexes) using requirement specifiers.
    - VCS project urls.
    - Local project directories.
    - Local or remote source archives.

    pip also supports downloading from "requirements files", which provide
    an easy way to specify a whole environment to be downloaded.
    a  
      %prog [options] <requirement specifier> [package-index-options] ...
      %prog [options] -r <requirements file> [package-index-options] ...
      %prog [options] <vcs project url> ...
      %prog [options] <local project path> ...
      %prog [options] <archive url/path> ...returnNc           
         | j                             t          j                               | j                             t          j                               | j                             t          j                               | j                             t          j                               | j                             t          j                               | j                             t          j                               | j                             t          j	                               | j                             t          j
                               | j                             t          j                               | j                             t          j                               | j                             t          j                               | j                             t          j                               | j                             ddddddt          j        d           t          j        | j                    t          j        t          j        | j                  }t          j        t          j        | j                  }| j                            d	|           | j                            d	|           | j                            d	| j                    d S )
Nz-dz--destz--destination-dirz--destination-directorydownload_dirdirzDownload packages into <dir>.)destmetavardefaulthelpr   )cmd_opts
add_optionr   constraintsbuild_constraintsrequirementsrequirements_from_scriptsno_depssrcrequire_hashesprogress_barno_build_isolation
use_pep517check_build_depsignore_requires_pythonoscurdiradd_target_python_optionsmake_option_groupindex_groupparserpackage_selection_groupinsert_option_group)self
index_optsselection_optss      s/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/pip/_internal/commands/download.pyadd_optionszDownloadCommand.add_options$   sQ     !7!9!9:::  !=!?!?@@@  !8!:!:;;;  !E!G!GHHH  !3!5!5666  !1!1222  !:!<!<===  !8!:!:;;;  !>!@!@AAA  !6!8!8999  !<!>!>???  !B!D!DEEE  %I0 	! 		
 		
 		
 	,T];;;1"K
 


 $5.K
 

 	'':666''>:::''4=99999    optionsargsc           
      n   d|_         g |_        t          j        |           t          j        |           t          j        |           t          |j                  |_        t          |j                   | 	                    |          }t          |          }|                     ||||j                  }|                     t                                }t          |j         dd          }|                     ||||          }|                     ||||||j        d| j                  }	|                     |	|||j        |j                  }
|                     |           |
                    |d          }|	                    |j                                                   g }|j                                        D ]A}|j        8|j        J |	                    |           |                    |j                   B|r#t?          d	d
                     |                     tB          S )NT)r4   sessiontarget_pythonr%   download)deletekindglobally_managedF)temp_build_dirr4   build_trackerr7   finderr   use_user_site	verbosity)preparerr?   r4   r%   py_version_info)check_supported_wheelszSuccessfully downloaded %s )"ignore_installed	editablesr   check_dist_restrictioncheck_build_constraintscheck_release_control_exclusiver   r   r
   get_default_sessionr   _build_package_finderr%   enter_contextr	   r   no_cleanget_requirementsmake_requirement_preparerrA   make_resolverpython_versiontrace_basic_inforesolve prepare_linked_requirements_morer   valuessatisfied_bynamesave_linked_requirementappendr   joinr   )r.   r4   r5   r7   r8   r?   r>   	directoryreqsrB   resolverrequirement_set
downloadedreqs                 r1   runzDownloadCommand.runM   sW   #'  )'222*733327;;;-g.BCC7'(((**733*733++'#*#A	 , 
 
 **+<+>+>??!''!
 
 
	 $$T7FGDD11$' -n 2 	
 	
 %%#*#A#2 & 
 
 	f%%%"**4*MM11/2N2U2U2W2WXXX "
"/6688 	, 	,C'x+++00555!!#(+++ 	M5sxx
7K7KLLLr3   )r   N)__name__
__module____qualname____doc__usager2   r   r   liststrintrb    r3   r1   r   r      s|        
 
0E': ': ': ':R D6 Dc Ds D D D \D D Dr3   r   )loggingr&   optparser   pip._internal.clir   pip._internal.cli.cmdoptionsr   pip._internal.cli.req_commandr   r   pip._internal.cli.status_codesr   ,pip._internal.operations.build.build_trackerr	   pip._internal.utils.miscr
   r   r   pip._internal.utils.temp_dirr   	getLoggerrc   loggerr   rk   r3   r1   <module>rw      s
    				       ( ( ( ( ( ( ; ; ; ; ; ; J J J J J J J J 2 2 2 2 2 2 J J J J J J M M M M M M M M M M 6 6 6 6 6 6		8	$	$B B B B B( B B B B Br3   