a [›ýf(ã@s¦ddlZddlZddlmZddlmZddlmZddlm Z ddl m Z m Z ddl mZddlmZdd lmZmZmZdd lmZe e¡ZGd d „d e ƒZdS) éN)ÚValues)ÚList)Ú cmdoptions)Úmake_target_python)ÚRequirementCommandÚ with_cleanup)ÚSUCCESS)Úget_requirement_tracker)Ú ensure_dirÚnormalize_pathÚ write_output)Ú TempDirectoryc@s<eZdZdZdZddœdd„Zeeee e dœdd „ƒZ dS) Ú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] [package-index-options] ... %prog [options] -r [package-index-options] ... %prog [options] ... %prog [options] ... %prog [options] ...N)Úreturnc CsL|j t ¡¡|j t ¡¡|j t ¡¡|j t ¡¡|j t ¡¡|j t ¡¡|j t  ¡¡|j t  ¡¡|j t  ¡¡|j t  ¡¡|j t  ¡¡|j t ¡¡|j t ¡¡|j t ¡¡|j t ¡¡|jjddddddtjddt |j¡t tj|j¡}|j d |¡|j d |j¡dS) Nz-dz--destz--destination-dirz--destination-directoryÚ download_dirÚdirzDownload packages into .)ÚdestÚmetavarÚdefaultÚhelpr)Zcmd_optsZ add_optionrÚ constraintsÚ requirementsZno_depsZglobal_optionsZ no_binaryZ only_binaryZ prefer_binaryÚsrcZpreZrequire_hashesZ progress_barZno_build_isolationZ use_pep517Z no_use_pep517Úignore_requires_pythonÚosÚcurdirZadd_target_python_optionsZmake_option_groupZ index_groupÚparserZinsert_option_group)ÚselfZ index_opts©rúC/usr/lib/python3.9/site-packages/pip/_internal/commands/download.pyÚ add_options%s@ø þzDownloadCommand.add_options)ÚoptionsÚargsrc Cs&d|_g|_t |¡t|jƒ|_t|jƒ| |¡}t|ƒ}|j ||||j d}|  t ƒ¡}t |j ddd}| ||||¡}|j||||||jdd} |j| |||j |jd} | |¡| j|dd} g} | j ¡D]2} | jdurØ| jdusôJ‚|  | ¡|  | j¡qØ| r"td d  | ¡ƒtS) NT)r!ÚsessionÚ target_pythonrZdownload)ÚdeleteÚkindZglobally_managedF)Ztemp_build_dirr!Ú req_trackerr#ÚfinderrZ use_user_site)Úpreparerr(r!rZpy_version_info)Zcheck_supported_wheelszSuccessfully downloaded %sú )Zignore_installedZ editablesrZcheck_dist_restrictionr rr Zget_default_sessionrZ_build_package_finderrÚ enter_contextr r Zno_cleanZget_requirementsZmake_requirement_preparerZ make_resolverZpython_versionZtrace_basic_infoÚresolverÚvaluesZ satisfied_byÚnameZsave_linked_requirementÚappendr Újoinr)rr!r"r#r$r(r'Z directoryZreqsr)ZresolverZrequirement_setZ downloadedZreqrrrÚrunKs^    ü ýù û   zDownloadCommand.run) Ú__name__Ú __module__Ú __qualname__Ú__doc__Úusager rrrÚstrÚintr1rrrrrs  &r)ZloggingrZoptparserÚtypingrZpip._internal.clirZpip._internal.cli.cmdoptionsrZpip._internal.cli.req_commandrrZpip._internal.cli.status_codesrZpip._internal.req.req_trackerr Zpip._internal.utils.miscr r r Zpip._internal.utils.temp_dirr Z getLoggerr2ÚloggerrrrrrÚs