a Re(@sddlZddlZddlmZddlmZddlmZddlm Z ddl m Z m Z ddl mZddlmZdd lmZmZmZdd lmZeeZGd d d e ZdS) N)Values)List) cmdoptions)make_target_python)RequirementCommand with_cleanup)SUCCESS)get_requirement_tracker) ensure_dirnormalize_path write_output) TempDirectoryc@s<eZdZdZdZddddZeeee e ddd 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|jt|jt|jt|jt|jt|jt|jt |jt |jt |jt |jt |jt|jt|jt|jt|jjddddddtjddt|jttj|j}|jd ||jd |jdS) Nz-dz--destz--destination-dirz--destination-directory download_dirdirzDownload packages into .)destmetavardefaulthelpr)cmd_opts add_optionr constraints requirementsno_depsglobal_options no_binary only_binary prefer_binarysrcprerequire_hashes progress_barno_build_isolation use_pep517 no_use_pep517ignore_requires_pythonoscurdiradd_target_python_optionsmake_option_group index_groupparserinsert_option_group)self index_optsr0/builddir/build/BUILDROOT/alt-python39-pip-21.3.1-2.el8.x86_64/opt/alt/python39/lib/python3.9/site-packages/pip/_internal/commands/download.py add_options%s@ zDownloadCommand.add_options)optionsargsrc Cs&d|_g|_t|t|j|_t|j||}t|}|j ||||j d}| t }t |j ddd}|||||}|j||||||jdd} |j| |||j |jd} ||| j|dd} g} | jD]2} | jdur| jdusJ| | | | jq| r"td d | tS) NT)r3session target_pythonr&download)deletekindglobally_managedF)temp_build_dirr3 req_trackerr5finderr use_user_site)preparerr=r3r&py_version_info)check_supported_wheelszSuccessfully downloaded %s )ignore_installed editablesrcheck_dist_restrictionr rr get_default_sessionr_build_package_finderr& enter_contextr r no_cleanget_requirementsmake_requirement_preparer make_resolverpython_versiontrace_basic_inforesolvervalues satisfied_bynamesave_linked_requirementappendr joinr)r.r3r4r5r6r=r< directoryreqsr?resolverrequirement_set downloadedreqr0r0r1runKs^         zDownloadCommand.run) __name__ __module__ __qualname____doc__usager2rrrstrintr\r0r0r0r1rs  &r)loggingr'optparsertypingrZpip._internal.clirZpip._internal.cli.cmdoptionsrpip._internal.cli.req_commandrrpip._internal.cli.status_codesrpip._internal.req.req_trackerr pip._internal.utils.miscr r r pip._internal.utils.temp_dirr getLoggerr]loggerrr0r0r0r1s