403Webshell
Server IP : 217.160.0.135  /  Your IP : 216.73.217.85
Web Server : Apache
System : Linux www 6.18.52-i1-ampere #1203 SMP Mon Sep 14 18:29:59 CEST 2026 aarch64
User : sws1074145052 ( 1074145052)
PHP Version : 8.3.32
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /lib/python3/dist-packages/pip/_internal/resolution/resolvelib/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /lib/python3/dist-packages/pip/_internal/resolution/resolvelib/__pycache__/provider.cpython-311.pyc
�

�/�c�&�
�B�ddlZddlZddlmZmZmZmZmZmZm	Z	m
Z
ddlmZddl
mZmZmZddlmZddlmZer"ddlmZdd	lmZeeefZeeeefZneZe	d
��Ze	d��Zdeeefd
edede
eeffd�ZGd�de��ZdS)�N)�
TYPE_CHECKING�Dict�Iterable�Iterator�Mapping�Sequence�TypeVar�Union)�AbstractProvider�)�	Candidate�
Constraint�Requirement)�REQUIRES_PYTHON_IDENTIFIER)�Factory)�
Preference)�RequirementInformation�D�V�mapping�
identifier�default�returnc�l�||vr||S|�d��\}}}|r||vr||S|S)aiGet item from a package name lookup mapping with a resolver identifier.

    This extra logic is needed when the target mapping is keyed by package
    name, which cannot be directly looked up with an identifier (which may
    contain requested extras). Additional logic is added to also look up a value
    by "cleaning up" the extras from the identifier.
    �[)�	partition)rrr�name�open_bracket�_s      �N/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/provider.py�_get_with_identifierr!5sU���W����z�"�"�'�0�0��5�5��D�,���������t�}���N�c��eZdZdZdedeeefdededeee	fddfd	�Z
d
eee
fdefd�Zded
eee
fdeeee
fdeeedfdedddfd�Zdedeeeefdeeee
fdee
fd�Zdede
defd�Zde
deefd�Zedededdefd���ZdS)�PipProvidera�Pip's provider implementation for resolvelib.

    :params constraints: A mapping of constraints specified by the user. Keys
        are canonicalized project names.
    :params ignore_dependencies: Whether the user specified ``--no-deps``.
    :params upgrade_strategy: The user-specified upgrade strategy.
    :params user_requested: A set of canonicalized package names that the user
        supplied for pip to install/upgrade.
    �factory�constraints�ignore_dependencies�upgrade_strategy�user_requestedrNc��||_||_||_||_||_tjd���|_dS)Nc��tjS�N)�math�inf�r"r �<lambda>z&PipProvider.__init__.<locals>.<lambda>fs��t�x�r")�_factory�_constraints�_ignore_dependencies�_upgrade_strategy�_user_requested�collections�defaultdict�
_known_depths)�selfr%r&r'r(r)s      r �__init__zPipProvider.__init__YsH�� ��
�'���$7��!�!1���-���/:�/F�GW�GW�/X�/X����r"�requirement_or_candidatec��|jSr,)r)r9r;s  r �identifyzPipProvider.identifyhs��'�,�,r"r�resolutions�
candidates�information�PreferenceInformation�backtrack_causesrc	�J��d�||D��}t|�\}}d�d�|D��D��}	|du}
td�|	D����}t|	��}	�j|}
d}nL#t$r?t
j}
�fd�||D��}td�|D����dz}YnwxYw|�j|<�j�	|t
j��}
|tk}|d	k}��||��}|||
||||
||f	S)
aZProduce a sort key for given requirement based on preference.

        The lower the return value is, the more preferred this group of
        arguments is.

        Currently pip considers the following in order:

        * Prefer if any of the known requirements is "direct", e.g. points to an
          explicit URL.
        * If equal, prefer if any requirement is "pinned", i.e. contains
          operator ``===`` or ``==``.
        * If equal, calculate an approximate "depth" and resolve requirements
          closer to the user-specified requirements first.
        * Order user-specified requirements by the order they are specified.
        * If equal, prefers "non-free" requirements, i.e. contains at least one
          operator, such as ``>=`` or ``<``.
        * If equal, order alphabetically for consistency (helps debuggability).
        c3�DK�|]\}}|���V��dSr,)�get_candidate_lookup)�.0�rrs   r �	<genexpr>z-PipProvider.get_preference.<locals>.<genexpr>�s2����P�P���1�1�)�)�+�+�P�P�P�P�P�Pr"c�&�g|]}|D]	}|j��
�Sr/)�operator)rF�
specifier_set�	specifiers   r �
<listcomp>z.PipProvider.get_preference.<locals>.<listcomp>�sB��
�
�
��*�
�
��
��
�
�
�
r"c3�(K�|]
}|�|jV��dSr,)rL)rF�ireqs  r rHz-PipProvider.get_preference.<locals>.<genexpr>�s)����!K�!K�T�d�!K�$�.�!K�!K�!K�!K�!K�!Kr"Nc3�2K�|]}|dd�dkV��dS)N�z==r/)rF�ops  r rHz-PipProvider.get_preference.<locals>.<genexpr>�s.����8�8��R����V�t�^�8�8�8�8�8�8r"g�?c3�J�K�|]\}}|��j|jndV��dS)Ng)r8r)rFr�parentr9s   �r rHz-PipProvider.get_preference.<locals>.<genexpr>�sO��������A�v�4:�3E��"�6�;�/�/�3������r"c3�K�|]}|V��dSr,r/)rF�ds  r rHz-PipProvider.get_preference.<locals>.<genexpr>�s"���� :� :�q�� :� :� :� :� :� :r"�
setuptools)�zip�any�boolr5�KeyErrorr-r.�minr8�getr�is_backtrack_cause)r9rr>r?r@rB�lookups�	candidate�ireqs�	operators�direct�pinned�unfree�requested_order�inferred_depth�
parent_depths�requires_python�
delay_this�backtrack_causes`                  r �get_preferencezPipProvider.get_preferenceks����4Q�P��J�8O�P�P�P����=��	�5�
�
�!K�!K�U�!K�!K�!K�
�
�
�	��$�&���8�8�i�8�8�8�8�8���i����
	!�15�1E�j�1Q�O�!�N�N���	A�	A�	A�"�h�O�����!,�Z�!8����M�!� :� :�M� :� :� :�:�:�S�@�N�N�N�
	A����*8���:�&��.�2�2�:�t�x�H�H��%�(B�B�� �<�/�
�
�1�1�*�>N�O�O�� ����J��J������J��

�
	
s�#
A3�3AB<�;B<�requirements�incompatibilitiesc����dtdtf�fd�}t�j|t	j�����}�j�|||||��|���S)Nrrc�n���jdkrdS�jdkrt�j|d���}|duSdS)a�Are upgrades allowed for this project?

            This checks the upgrade strategy, and whether the project was one
            that the user specified in the command line, in order to decide
            whether we should upgrade if there's a newer version available.

            (Note that we don't need access to the `--upgrade` flag, because
            an upgrade strategy of "to-satisfy-only" means that `--upgrade`
            was not specified).
            �eagerTzonly-if-neededN�rF)r4r!r5)r�
user_orderr9s  �r �_eligible_for_upgradez7PipProvider.find_matches.<locals>._eligible_for_upgrade�sY����%��0�0��t��'�+;�;�;�1��(�� ����
�
"��-�-��5r"rr)rrm�
constraint�prefers_installedrn)�strrZr!r2r�emptyr1�find_candidates)r9rrmrnrtrus`     r �find_matcheszPipProvider.find_matches�s����	�c�	�d�	�	�	�	�	�	�,*�����$�&�&�
�
�
�
�
�}�,�,�!�%�!�#8�#8��#D�#D�D�/�-�
�
�	
r"�requirementr`c�,�|�|��Sr,)�is_satisfied_by)r9r{r`s   r r}zPipProvider.is_satisfied_by�s���*�*�9�5�5�5r"c�P�|j}d�|�|��D��S)Nc��g|]}|�|��Sr,r/)rFrGs  r rMz0PipProvider.get_dependencies.<locals>.<listcomp>�s��W�W�W�a������r")r3�iter_dependencies)r9r`�
with_requiress   r �get_dependencieszPipProvider.get_dependencies�s/�� �5�5�
�W�W�9�6�6�}�E�E�W�W�W�Wr"c�j�|D]/}||jjkrdS|jr||jjkrdS�0dS)NTF)r{rrT)rrBrks   r r^zPipProvider.is_backtrack_cause�sS�� 0�	�	�O��_�8�=�=�=��t�t��%�
�*��8N�8S�*S�*S��t�t���ur")�__name__�
__module__�__qualname__�__doc__rrrwrrZ�intr:r
rr
r=rrrrrlrzr}r��staticmethodr^r/r"r r$r$Ns.��������
Y��
Y��#�z�/�*�
Y�"�	
Y�
�
Y��S�#�X��

Y�
�
Y�
Y�
Y�
Y�-��{�I�7M�1N�-�SV�-�-�-�-�R
��R
��S�)�^�,�R
��C��)�!4�4�5�	R
�
�S�(�+B�"C�C�D�R
�#�#:�;�
R
�
�R
�R
�R
�R
�h'
��'
��c�8�K�#8�8�9�'
�#�3���(;�#;�<�	'
�

�)�	�'
�'
�'
�'
�R6�;�6�9�6�QU�6�6�6�6�X�)�X���8M�X�X�X�X�����+3�4K�+L��	
�����\���r"r$)r6r-�typingrrrrrrr	r
� pip._vendor.resolvelib.providersr�baser
rrr?rr%rr� pip._vendor.resolvelib.resolversrrArw�
_ProviderBaserrr!r$r/r"r �<module>r�s�����������	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�>�=�=�=�=�=�4�4�4�4�4�4�4�4�4�4�2�2�2�2�2�2��������%�;�;�;�;�;�;�G�G�G�G�G�G�2�;�	�3I�J��$�[�)�S�%@�A�M�M�$�M�*�G�C�L�L���G�C�L�L���
�S�!�V�_�������1�a�4�[�	����2j�j�j�j�j�-�j�j�j�j�jr"

Youez - 2016 - github.com/yon3zu
LinuXploit