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: //usr/lib/python3/dist-packages/pip/_internal/utils/__pycache__/entrypoints.cpython-312.pyc
�

��h����ddlZddlZddlZddlZddlmZmZddlmZddl	m
Z
ddejj��dejj�dejj��gZe
r4ddhZej ee�D�cgc]}dj#|���c}Zdd	eeed
efd�Zd
efd�Zd
efd
�Zycc}w)�N)�List�Optional)�main)�WINDOWS�pip�.�z.exe�args�returnc�V�tjjd�t|�S)a�Central wrapper for all old entrypoints.

    Historically pip has had several entrypoints defined. Because of issues
    arising from PATH, sys.path, multiple Pythons, their interactions, and most
    of them having a pip installed, users suffer every time an entrypoint gets
    moved.

    To alleviate this pain, and provide a mechanism for warning users and
    directing them to an appropriate place for help, we now define all of
    our old entrypoints as wrappers for the current one.
    aWARNING: pip is being invoked by an old script wrapper. This will fail in a future version of pip.
Please see https://github.com/pypa/pip/issues/5599 for advice on fixing the underlying issue.
To avoid this problem you can invoke Python with '-m pip' instead of running pip directly.
)�sys�stderr�writer)r
s �A/usr/lib/python3/dist-packages/pip/_internal/utils/entrypoints.py�_wrapperrs'���J�J���	"����:��c��trdnd}tjjtj
|�}tjj
tjjdd��jtj�}tjj
|�|v}|r�tD]~}tj|�}tjj||�}|s�;tjj|�s�[tjj||�s�||cSt!��d�S)zHTry to figure out the best way to invoke pip in the current environment.�Scripts�bin�PATHr	z -m pip)r�os�path�joinr
�prefix�normcase�environ�get�split�pathsep�_EXECUTABLE_NAMES�shutil�which�exists�samefile�#get_best_invocation_for_this_python)�binary_directory�
binary_prefix�
path_parts�exe_are_in_PATH�exe_name�found_executable�binary_executables       r� get_best_invocation_for_this_pipr-.s���$+�y����G�G�L�L����-=�>�M����!�!�"�*�*�.�.���"<�=�C�C�B�J�J�O�J��g�g�&�&�}�5��C�O��)�	 �H�%�|�|�H�5�� "�����]�H� E�� ��G�G�N�N�#4�5��G�G�$�$�$�%��
 ��	 �2�3�
4�G�<�<rc���tj}tjj	|�}tj|�}|r"tjj||�r|S|S)z<Try to figure out the best way to invoke the current Python.)r
�
executablerr�basenamer!r"r$)�exer*r+s   rr%r%IsS��

�.�.�C��w�w����$�H��|�|�H�-���B�G�G�,�,�-=�s�C����Jr)N)�	itertoolsrr!r
�typingrr�pip._internal.cli.mainr�pip._internal.utils.compatr�version_info�major�minorr �_allowed_extensions�productr�str�intrr-r%)�partss0r�<module>r>s����	�
�
�!�'�.�
�	�#�
�
�
 �
 �	!�"�	�#�
�
�
 �
 �	!��3�#3�#3�#9�#9�":�;���
��v�,��'�Y�&�&�'8�:M�N���	��������8�D��I�&��#��.=�#�=�6�S���qs�
C