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/operations/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /lib/python3/dist-packages/pip/_internal/operations/__pycache__/prepare.cpython-311.pyc
�

�/�cb����dZddlZddlZddlZddlZddlmZmZmZm	Z	ddl
mZddlm
Z
ddlmZddlmZmZmZmZmZmZmZmZddlmZdd	lmZmZdd
lmZddl m!Z!ddl"m#Z#dd
l$m%Z%m&Z&ddl'm(Z(m)Z)ddl*m+Z+ddl,m-Z-ddl.m/Z/ddl0m1Z1m2Z2ddl3m4Z4m5Z5ddl6m7Z7ddl8m9Z9m:Z:m;Z;m<Z<ddl=m>Z>ddl?m@Z@ddlAmBZBejCeD��ZEde/de-dedeFdeFdefd�ZGd e!d!eHd"eIddfd#�ZJGd$�d%��ZK		d/d e!d&e&d'e	eHd(e	e4deKf
d)�ZL	d/d e!d'e	eHd(e	e4deKfd*�ZM		d/d e!d!eHd&e&d"eId'e	eHd(e	e4de	eKfd+�ZNd e!d'eHd(e	e4de	eHfd,�ZOGd-�d.��ZPdS)0z)Prepares a distribution for installation
�N)�Dict�Iterable�List�Optional)�canonicalize_name)�)make_distribution_for_install_requirement)�InstalledDistribution)�DirectoryUrlHashUnsupported�HashMismatch�HashUnpinned�InstallationError�MetadataInconsistent�NetworkConnectionError�PreviousBuildDirError�VcsHashUnsupported)�
PackageFinder)�BaseDistribution�get_metadata_distribution)�ArchiveInfo)�Link)�Wheel)�BatchDownloader�
Downloader)�HTTPRangeRequestUnsupported�dist_from_wheel_url)�
PipSession)�BuildTracker)�InstallRequirement)�direct_url_for_editable�direct_url_from_link)�Hashes�
MissingHashes)�
indent_log)�display_path�	hash_file�hide_url�is_installable_dir)�
TempDirectory)�unpack_file)�vcs�req�
build_tracker�finder�build_isolation�check_build_deps�returnc���t|��}|�|��5|�|||��ddd��n#1swxYwY|���S)z(Prepare a distribution for installation.N)r�track�prepare_distribution_metadatar)r+r,r-r.r/�
abstract_dists      �B/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py�_get_prepared_distributionr6;s���>�c�B�B�M�	�	�	�S�	!�	!�
�
��3�3��O�%5�	
�	
�	
�
�
�
�
�
�
�
�
�
�
�
����
�
�
�
��2�2�4�4�4s�A	�	A
�A
�link�location�	verbosityc��tj|j��}|�J�|�|t	|j��|���dS)N)�urlr9)r*�get_backend_for_scheme�scheme�unpackr&r;)r7r8r9�vcs_backends    r5�unpack_vcs_linkr@KsK���,�T�[�9�9�K��"�"�"����x�X�d�h�%7�%7�9��M�M�M�M�M�c�.�eZdZdedeeddfd�ZdS)�File�path�content_typer0Nc�h�||_|�!tj|��d|_dS||_dS)Nr)rD�	mimetypes�
guess_typerE)�selfrDrEs   r5�__init__z
File.__init__Rs;����	��� )� 4�T� :� :�1� =�D���� ,�D���rA)�__name__�
__module__�__qualname__�strrrJ�rAr5rCrCQsA������-�S�-���
�-�$�-�-�-�-�-�-rArC�download�download_dir�hashesc���tdd���}d}|rt|||��}|r|}d}n+|||j��\}}|r|�|��t	||��S)Nr>T��kind�globally_managed)r(�_check_download_dirrD�check_against_pathrC)r7rPrQrR�temp_dir�already_downloaded_path�	from_pathrEs        r5�get_http_urlr\Zs����(�T�B�B�B�H�"���R�"5�d�L�&�"Q�"Q���1�+�	����#+�(�4���"?�"?��	�<��	1��%�%�i�0�0�0��	�<�(�(�(rAc��d}|rt|||��}|r|}n|j}|r|�|��t|d��S)z'Get file and optionally check its hash.N)rW�	file_pathrXrC)r7rQrRrZr[s     r5�get_file_urlr_rsi��
#���R�"5�d�L�&�"Q�"Q���#�+�	�	��N�	��-��!�!�)�,�,�,��	�4� � � rAc��|jrt|||���dS|���rJ�|jrt	|||���}nt||||���}|jst|j||j	��|S)a_Unpack link into location, downloading if required.

    :param hashes: A Hashes object, one of whose embedded hashes must match,
        or HashMismatch will be raised. If the Hashes is empty, no matches are
        required, and unhashable types of requirements (like VCS ones, which
        would ordinarily raise HashUnsupported) are allowed.
    )r9N�rR)
�is_vcsr@�is_existing_dir�is_filer_r\�is_wheelr)rDrE)r7r8rPr9rQrR�files       r5�
unpack_urlrg�s��� �{����h�)�<�<�<�<��t��#�#�%�%�%�%�%��|�

��D�,�v�>�>�>��������	
�
�
���=�<��D�I�x��):�;�;�;��KrAc�z�tj�||j��}tj�|��sdSt
�d|��|rW	|�|��n@#t$r3t
�	d|��tj
|��YdSwxYw|S)z�Check download_dir for previously downloaded file with correct hash
    If a correct file is found return its path else None
    NzFile was already downloaded %sz;Previously-downloaded file %s has bad hash. Re-downloading.)�osrD�join�filename�exists�logger�inforXr�warning�unlink)r7rQrR�
download_paths    r5rWrW�s����G�L�L��t�}�=�=�M�
�7�>�>�-�(�(���t��K�K�0�-�@�@�@�
�	�	��%�%�m�4�4�4�4���	�	�	��N�N�M��
�
�
�
�I�m�$�$�$��4�4�
	�����s�%A;�;9B8�7B8c���eZdZdZdedeedededededed	ed
e	deded
ede
ddf�fd�Zdeddfd�Z
dededdfd�Zdedefd�Zdedeefd�Zdedeefd�Zdedeefd�Z	d&deededdfd�Z	d&dededefd�Z	d&deededdfd �Zdededefd!�Zdeddfd"�Zdedefd#�Zded$edefd%�Z�xZS)'�RequirementPreparerzPrepares a Requirement�	build_dirrQ�src_dirr.r/r,�session�progress_barr-�require_hashes�
use_user_site�
lazy_wheelr9r0Nc�`��t�����||_||_||_||_t
||��|_t||��|_	|	|_
||_||_||_
|
|_||_||_|
|_i|_d|_dS)N)�r|)�superrJrurtr,�_sessionr�	_downloadr�_batch_downloadr-rQr.r/rxry�use_lazy_wheelr9�_downloaded�_previous_requirement_header)rIrtrQrur.r/r,rvrwr-rxryrzr9�	__class__s              �r5rJzRequirementPreparer.__init__�s���� 	�����������"���*�����
�#�G�\�:�:���.�w��E�E������)��� /���!1���-���+���)���#���,.���-5��)�)�)rAr+c��|jjr0|js)d}tt	|jj����}nd}t|jp|��}||f|jkr$||f|_t�	||��|jrNt��5t�	d|jj��ddd��dS#1swxYwYdSdS)z3Provide context for the requirement being prepared.z
Processing %sz
Collecting %szUsing cached %sN)r7rd�original_link_is_in_wheel_cacherNr$r^r+r�rmrnr#rk)rIr+�message�informations    r5�_log_preparing_linkz'RequirementPreparer._log_preparing_links:���8��	.�C�$G�	.�%�G��l�3�8�+=�>�>�?�?�K�K�%�G��c�g�n��-�-�K��[�!�T�%F�F�F�18�+�0F�D�-��K�K���-�-�-��.�	B����
B�
B����-�s�x�/@�A�A�A�
B�
B�
B�
B�
B�
B�
B�
B�
B�
B�
B�
B����
B�
B�
B�
B�
B�
B�	B�	Bs�&C�C�C�parallel_buildsc�>�|jjrdS|j�J�|j���r|jj|_dS|�|jd|���t|j��r(td�	||j�����dS)z1Ensure source_dir of a linked InstallRequirement.NT)�
autodeleter�z�pip can't proceed with requirements '{}' due to apre-existing build directory ({}). This is likely due to a previous installation that failed . pip is being responsible and not assuming it can delete this. Please delete it and try again.)
r7re�
source_dirrcr^�ensure_has_source_dirrtr'r�format)rIr+r�s   r5�_ensure_link_req_src_dirz,RequirementPreparer._ensure_link_req_src_dirs���
�8��	�
�F��~�%�%�%��8�#�#�%�%�	� �X�/�C�N��F�	�!�!��N��+�	"�	
�	
�	
��c�n�-�-�	�'�2�39�&��c�n�2M�2M���
�	�	rAc�>�|js|�d���S|jjrt	���|j���rt
���|j�|jst���|�d���p
t��S)NT)�trust_internetF)rxrRr7rbrrcr
�
original_link�	is_pinnedrr"�rIr+s  r5�_get_linked_req_hashesz*RequirementPreparer._get_linked_req_hashes>s����"�	3��:�:�T�:�2�2�2��8�?�	'�$�&�&�&��8�#�#�%�%�	0�-�/�/�/���$�S�]�$��.�.� ��z�z��z�/�/�B�=�?�?�BrAc��|jrt�d��dS|�|��p|�|j��S)Nz?Metadata-only fetching is not used as hash checking is required)rxrm�debug�$_fetch_metadata_using_link_data_attr� _fetch_metadata_using_lazy_wheelr7r�s  r5�_fetch_metadata_onlyz(RequirementPreparer._fetch_metadata_only^sb����	��L�L�Q�
�
�
��4��8�8��
�
�=�
�
2�
2�3�8�
<�
<�	=rAc��|j���}|�dS|j�J�t�d|j|��t||j|������}t|j	d��5}|�
��}ddd��n#1swxYwYt||jj|jj
��}|j|jj
kr!t|d|jj
|j���|S)zGFetch metadata from the data-dist-info-metadata attribute, if possible.Nz/Obtaining dependency information for %s from %sra�rb�Name)r7�
metadata_linkr+rmrnr\r�	as_hashes�openrD�readrrk�name�raw_namer)rIr+r��
metadata_file�f�metadata_contents�
metadata_dists       r5r�z8RequirementPreparer._fetch_metadata_using_link_data_attrlsT����.�.�0�0�
�� ��4��w�"�"�"����=��G��	
�	
�	
�%���N� �*�*�,�,�
�
�
�
�
�-�$�d�
+�
+�	)�q� !������	)�	)�	)�	)�	)�	)�	)�	)�	)�	)�	)����	)�	)�	)�	)�2���H���G�L�
�
�
��!�S�W�\�1�1�&��V�S�W�\�=�+A���
��s�B'�'B+�.B+r7c���|jsdS|js|jst�d|��dSt|j��}t|j��}t�	d||j
��|j�dd��d}	t|||j��S#t$rt�d|��YdSwxYw)z-Fetch metadata using lazy wheel, if possible.Nz=Lazy wheel is not used as %r does not point to a remote wheelz+Obtaining dependency information from %s %s�#�rz"%s does not support range requests)r�rdrermr�rrkrr�rn�versionr;�splitrr~r)rIr7�wheelr�r;s     r5r�z4RequirementPreparer._fetch_metadata_using_lazy_wheel�s����"�	��4��<�	�t�}�	��L�L�O��
�
�
��4��d�m�$�$�� ���,�,�����9���M�	
�	
�	
�
�h�n�n�S�!�$�$�Q�'��	�&�t�S�$�-�@�@�@��*�	�	�	��L�L�=�s�C�C�C��4�4�	���s� B6�6%C�CF�partially_downloaded_reqsc�X�tdd���j}i}|D]}|jsJ�|||j<�|�|���|��}|D]3\}\}}	t
�d||��||}||_�4|D]}|�||���dS)z>Download any requirements which were only fetched by metadata.r>TrTzDownloading link %s to %sN)	r(rDr7r��keysrmr��local_file_path�_prepare_linked_requirement)
rIr�r�rY�links_to_fully_downloadr+�batch_downloadr7�filepath�_s
          r5�_complete_partial_requirementsz2RequirementPreparer._complete_partial_requirements�s���!�h��F�F�F�K��
CE��,�	4�	4�C��8�O�O�O�03�#�C�H�-�-��-�-�#�(�(�*�*��
�
��$2�	+�	+��D�-�8�Q��L�L�4�d�H�E�E�E�)�$�/�C�"*�C���-�	C�	C�C��,�,�S�/�B�B�B�B�	C�	CrAc���|jsJ�|�|��t��5d}|j�<|jjr0|�|��}t
|j|j|��}|�||j|jj<n,|�	|��}|�d|_
|cddd��S|�||��cddd��S#1swxYwYdS)z3Prepare a requirement to be obtained from req.link.NT)r7r�r#rQrer�rWr�r;r��needs_more_preparationr�)rIr+r�r^rRr�s      r5�prepare_linked_requirementz.RequirementPreparer.prepare_linked_requirement�sm���x����� � ��%�%�%�
�\�\�	J�	J��I�� �,���1B�,��4�4�S�9�9��/���$�:K�V�T�T�	��$�1:�� ����.�.�!%� 9� 9�#� >� >�
� �,�15�C�.�(�!	J�	J�	J�	J�	J�	J�	J�	J�&�3�3�C��I�I�'	J�	J�	J�	J�	J�	J�	J�	J�	J�	J�	J�	J����	J�	J�	J�	J�	J�	Js�A<C�6C�C�C�reqsc��d�|D��}|D]b}|j�Y|jjrM|�|��}t	|j|j|��}|�||j|jj<d|_�cg}|D]5}|jr|�|���|�	||���6|�
||���dS)z,Prepare linked requirements more, if needed.c� �g|]}|j�	|��SrO)r�)�.0r+s  r5�
<listcomp>zHRequirementPreparer.prepare_linked_requirements_more.<locals>.<listcomp>�s ��B�B�B��s�'A�B��B�B�BrANF)r�)rQr7rer�rWr�r;r��appendr�r�)rIr�r�r+rRr^r�s       r5� prepare_linked_requirements_morez4RequirementPreparer.prepare_linked_requirements_more�s��C�B�t�B�B�B���	7�	7�C�� �,���1B�,��4�4�S�9�9��/���$�:K�V�T�T�	��(�5>�D�$�S�X�\�2�16�C�.��?A�!��	G�	G�C��)�
G�)�0�0��5�5�5�5��0�0��o�F�F�F�F�	
�+�+�%�+�	,�	
�	
�	
�	
�	
rAc��|jsJ�|j}|�||��|�|��}|���rd}n�|j|jvr`	t
||j|j|j	|j
|��}np#t$r)}td�
|||�����d}~wwxYw|j|j}|r|�|��t|d���}|j��|jrJ�t%||j��|_t'|jjt*��rS|jjjsB|r@t/|j��d���}d|��|jj_|r|j|_t7||j|j|j|j��}	|	S)NzDCould not install requirement {} because of HTTP error {} for URL {})rErzsha256=) r7r�r�rcr;r�rgr�rr9rQrr
r�rXrC�
download_info�editabler �
isinstancernr�hashr%rD�	hexdigestr�r6r,r-r.r/)
rIr+r�r7rR�
local_file�excr^r��dists
          r5r�z/RequirementPreparer._prepare_linked_requirements���x�����x���%�%�c�?�;�;�;��,�,�S�1�1�����!�!�	<��J�J�
�X�T�-�
-�
-�

�'���N��N��N��%��
��
�
��*�
�
�
�'�*�*0�&��c�4�*@�*@��������
�����(���2�I��
5��)�)�)�4�4�4��i�d�;�;�;�J���$��|�#�#�#� 4�T�3�>� J� J�C��
�3�,�1�;�?�?�
?��)�.�3�
?��
?�
!���1�1�!�4�>�>�@�@��.>��.>�.>��!�&�+��	2�",�/�C��)�����K�� ��!�
�
���s�"(B�
B>�$B9�9B>c�F�|j�J�|j�J�|j}|js|���r#|jr|�|j��dS|���rt�d|��dS|j�dStj
�|j|j��}tj
�
|��sFtj|j|��t!|��}t�d|��dSdS)NzENot copying link to destination directory since it is a directory: %szSaved %s)rQr7rbrcr��archivermr�r�rirDrjrkrl�shutil�copyr$rn)rIr+r7�download_locationrqs     r5�save_linked_requirementz+RequirementPreparer.save_linked_requirementJs'��� �,�,�,��x�#�#�#��x���;�	�4�/�/�1�1�	�c�l�	��K�K��)�*�*�*��F����!�!�	��L�L�.��
�
�
�

�F���&��F��G�L�L��):�D�M�J�J���w�~�~�/�0�0�	3��K��+�->�?�?�?�(�):�;�;�M��K�K�
�M�2�2�2�2�2�	3�	3rAc��|js
Jd���t�d|��t��5|jr"td�|�����|�|j��|�	��|j
sJ�t|j��|_
t||j|j|j|j��}|�|j��ddd��n#1swxYwY|S)z Prepare an editable requirement.z-cannot prepare a non-editable req as editablezObtaining %szoThe editable requirement {} cannot be installed when requiring hashes, because there is no single file to hash.N)r�rmrnr#rxr
r�r�ru�update_editabler�r�unpacked_source_directoryr�r6r,r-r.r/�check_if_existsry)rIr+r�s   r5�prepare_editable_requirementz0RequirementPreparer.prepare_editable_requirementdsO��
�|�L�L�L�L�L�L����N�C�(�(�(�
�\�\�	4�	4��"�
�'��"�F�3�K�K����

�%�%�d�l�3�3�3����!�!�!��>�!�!�!� 7��8U� V� V�C��-���"����$��%���D�
���� 2�3�3�3�)	4�	4�	4�	4�	4�	4�	4�	4�	4�	4�	4����	4�	4�	4�	4�,�s�B;D�D�	D�skip_reasonc��|js
Jd���|�"Jd�|j�����t�d|||jj��t��5|jrt�d��t|���	��cddd��S#1swxYwYdS)z)Prepare an already-installed requirement.z(req should have been satisfied but isn'tNzAdid not get skip reason skipped but req.satisfied_by is set to {}zRequirement %s: %s (%s)z�Since it is already installed, we are trusting this package without checking its hash. To ensure a completely repeatable environment, install into an empty virtualenv.)
�satisfied_byr�rmrnr�r#rxr�r	r)rIr+r�s   r5�prepare_installed_requirementz1RequirementPreparer.prepare_installed_requirement�s/����K�K�!K�K�K�K��&�&�
�!�6�#�"2�3�3�'�&�&�	���%�{�C��9I�9Q�	
�	
�	
��\�\�	J�	J��"�
����(����)��-�-�G�G�I�I�	J�	J�	J�	J�	J�	J�	J�	J�	J�	J�	J�	J����	J�	J�	J�	J�	J�	Js�+AB:�:B>�B>)F)rKrLrM�__doc__rNr�boolrrr�intrJrr�r�r!r�rr�r�rr�rr�r�r�r�r�r�r��
__classcell__)r�s@r5rsrs�sQ������� � �45��45��s�m�45��	45�
�45��
45�$�45��45��45��45��45��45��45��45�
�45�45�45�45�45�45�lB�'9�B�d�B�B�B�B�"#�%�#�8<�#�	
�#�#�#�#�JC�*<�C��C�C�C�C�@=�
�=�
�"�	#�=�=�=�=�'�
�'�
�"�	#�'�'�'�'�R���
�"�	#�����@!&�C�C�#+�,>�#?�C��C�
�	C�C�C�C�B@E�J�J�%�J�8<�J�	�J�J�J�J�8KP�
�
��/�0�
�CG�
�	
�
�
�
�
�<=�%�=�8<�=�	�=�=�=�=�~3�+=�3�$�3�3�3�3�4�
��
�����BJ�
�J��J�
�	J�J�J�J�J�J�J�JrArs)NN)Qr��loggingrGrir��typingrrrr�pip._vendor.packaging.utilsr�pip._internal.distributionsr�%pip._internal.distributions.installedr	�pip._internal.exceptionsr
rrr
rrrr�"pip._internal.index.package_finderr�pip._internal.metadatarr�pip._internal.models.direct_urlr�pip._internal.models.linkr�pip._internal.models.wheelr�pip._internal.network.downloadrr� pip._internal.network.lazy_wheelrr�pip._internal.network.sessionr�,pip._internal.operations.build.build_trackerr�pip._internal.req.req_installr�&pip._internal.utils.direct_url_helpersrr �pip._internal.utils.hashesr!r"�pip._internal.utils.loggingr#�pip._internal.utils.miscr$r%r&r'�pip._internal.utils.temp_dirr(�pip._internal.utils.unpackingr)�pip._internal.vcsr*�	getLoggerrKrmr�r6rNr�r@rCr\r_rgrWrsrOrAr5�<module>r�s�������������	�	�	�	�
�
�
�
�1�1�1�1�1�1�1�1�1�1�1�1�9�9�9�9�9�9�Q�Q�Q�Q�Q�Q�G�G�G�G�G�G�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�=�<�<�<�<�<�N�N�N�N�N�N�N�N�7�7�7�7�7�7�*�*�*�*�*�*�,�,�,�,�,�,�F�F�F�F�F�F�F�F���������5�4�4�4�4�4�E�E�E�E�E�E�<�<�<�<�<�<���������=�<�<�<�<�<�<�<�2�2�2�2�2�2�������������7�6�6�6�6�6�5�5�5�5�5�5�!�!�!�!�!�!�	��	�8�	$�	$��
5�	�
5��
5�
�
5��	
5�
�
5��

5�
5�
5�
5� N�$�N�#�N�#�N�$�N�N�N�N�-�-�-�-�-�-�-�-�#'�#�	)�)�
�)��)��3�-�)�
�V��	)�

�)�)�)�)�2PT�!�!�
�!�&�s�m�!�<D�V�<L�!�	�!�!�!�!�:#'�#�
(�(�
�(��(��(��	(�
�3�-�(�
�V��
(��d�^�(�(�(�(�V�
��!��+3�F�+;��
�c�]�����4LJ�LJ�LJ�LJ�LJ�LJ�LJ�LJ�LJ�LJrA

Youez - 2016 - github.com/yon3zu
LinuXploit