HEX
Server: nginx/1.24.0
System: Linux webserver 6.8.0-87-generic #88-Ubuntu SMP PREEMPT_DYNAMIC Sat Oct 11 09:28:41 UTC 2025 x86_64
User: wpuser (1002)
PHP: 8.3.6
Disabled: NONE
Upload Files
File: //lib/python3/dist-packages/pip/_internal/commands/__pycache__/download.cpython-312.pyc
�

��h�����ddlZddlZddlmZddlmZddlmZddlm	Z	ddl
mZmZddl
mZddlmZdd	lmZdd
lmZmZmZddlmZej2e�ZGd�d
e�Zy)�N)�Values)�List)�
cmdoptions)�make_target_python)�RequirementCommand�with_cleanup)�SUCCESS)�get_build_tracker)�check_legacy_setup_py_options)�
ensure_dir�normalize_path�write_output)�
TempDirectoryc�@�eZdZdZdZd	d�Zededee	de
fd��Zy)
�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
�$�|jjtj��|jjtj��|jjtj
��|jjtj��|jjtj��|jjtj��|jjtj��|jjtj��|jjtj��|jjtj��|jjtj��|jjtj��|jjtj��|jjtj ��|jjtj"��|jjtj$��|jjddddddt&j(d��tj*|j�tj,tj.|j0�}|j0j3d	|�|j0j3d	|j�y)
Nz-dz--destz--destination-dirz--destination-directory�download_dir�dirzDownload packages into <dir>.)�dest�metavar�default�helpr)�cmd_opts�
add_optionr�constraints�requirements�no_deps�global_options�	no_binary�only_binary�
prefer_binary�src�pre�require_hashes�progress_bar�no_build_isolation�
use_pep517�
no_use_pep517�check_build_deps�ignore_requires_python�os�curdir�add_target_python_options�make_option_group�index_group�parser�insert_option_group)�self�
index_optss  �A/usr/lib/python3/dist-packages/pip/_internal/commands/download.py�add_optionszDownloadCommand.add_options&sC���
�
� � ��!7�!7�!9�:��
�
� � ��!8�!8�!:�;��
�
� � ��!3�!3�!5�6��
�
� � ��!:�!:�!<�=��
�
� � ��!5�!5�!7�8��
�
� � ��!7�!7�!9�:��
�
� � ��!9�!9�!;�<��
�
� � ����!1�2��
�
� � ����!1�2��
�
� � ��!:�!:�!<�=��
�
� � ��!8�!8�!:�;��
�
� � ��!>�!>�!@�A��
�
� � ��!6�!6�!8�9��
�
� � ��!9�!9�!;�<��
�
� � ��!<�!<�!>�?��
�
� � ��!B�!B�!D�E��
�
� � ����%����I�I�0�	!�		
�	�,�,�T�]�]�;��1�1��"�"��K�K�
�
�
	
���'�'��:�6����'�'��4�=�=�9��options�argsc
�T�d|_g|_tj|�t	|j
�|_t
|j
�|j|�}t|�}|j||||j��}|jt��}t|jdd��}|j||||�}t!||�|j#||||||j
d|j$��}	|j'|	|||j|j(|j*��}
|j-|�|
j/|d��}g}|j0j3�D]I}
|
j4��|
j6�J�|	j9|
�|j;|
j6��K|	j=|j0j3��|j?�|rtAd	d
jC|��tDS)NT)r8�session�
target_pythonr+�download)�delete�kind�globally_managedF)�temp_build_dirr8�
build_trackerr;�finderr�
use_user_site�	verbosity)�preparerrCr8r+r(�py_version_info)�check_supported_wheelszSuccessfully downloaded %s� )#�ignore_installed�	editablesr�check_dist_restrictionr
rr�get_default_sessionr�_build_package_finderr+�
enter_contextr
r�no_clean�get_requirementsr�make_requirement_preparerrE�
make_resolverr(�python_version�trace_basic_info�resolver�values�satisfied_by�name�save_linked_requirement�append� prepare_linked_requirements_more�#warn_legacy_versions_and_specifiersr�joinr	)r3r8r9r;r<rCrB�	directory�reqsrF�resolver�requirement_set�
downloaded�reqs              r5�runzDownloadCommand.runMs��#'�� �����)�)�'�2�-�g�.B�.B�C����7�'�'�(��*�*�7�3��*�7�3�
��+�+���'�#*�#A�#A�	,�
���*�*�+<�+>�?�
�!��'�'�'��!�
�	��$�$�T�7�F�G�D��%�g�t�4��1�1�$��'��� �-�-���n�n�2�	
���%�%����#*�#A�#A��)�)�#�2�2�
&�
��	
���f�%�"�*�*�4��*�M�� "�
�"�/�/�6�6�8�	,�C����'��x�x�+�+�+��0�0��5��!�!�#�(�(�+�		,�	�1�1�/�2N�2N�2U�2U�2W�X��;�;�=���5�s�x�x�
�7K�L��r7)rN)�__name__�
__module__�__qualname__�__doc__�usager6rrr�str�intre�r7r5rrsF��
�
0�E�%:�N�E�6�E��c��E�s�E��Er7r)�loggingr,�optparser�typingr�pip._internal.clir�pip._internal.cli.cmdoptionsr�pip._internal.cli.req_commandrr�pip._internal.cli.status_codesr	�,pip._internal.operations.build.build_trackerr
�pip._internal.req.req_installr�pip._internal.utils.miscrr
r�pip._internal.utils.temp_dirr�	getLoggerrf�loggerrrmr7r5�<module>r{sM���	���(�;�J�2�J�G�M�M�6�	��	�	�8�	$��A�(�Ar7