관리-도구
편집 파일: misc.cpython-311.pyc
� �Dg�[ � � � d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlZd dlZd dl Z d dl Zd dlm Z d dlmZ d dlmZ d dlmZmZmZ d dlmZ d dlmZmZ d dlmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z* d d l+m,Z, d d l-m.Z. d dl/m0Z0 d dl1m2Z2m3Z3 d d l4m5Z5 d dl6m7Z7 d dl8m9Z9 d dl:m;Z; g d�Z< ej= e>� � Z? e(d� � Z@e&e'eA eAef ZBe&eCeCeCf ZDe&eEe&e$eE e$eE f f ZFeeeeAgef ZGeeeeBgef ZHdZIdeEfd�ZJde&eCdf de&eCeCeCf fd�ZKdeEddfd�ZLdeEfd�ZM e9dd�� � dwd eEd!eNd"e$eG ddfd#�� � ZOd$eddfd%�ZPd$eddfd&�ZQeQd'�d(eded)e)eBeAf d"eGddf d*�ZRdeEdeEfd+�ZSdxd eEd-eEdeEfd.�ZTd/eEd0e!eE deEfd1�ZUd/eEddfd2�ZVd/eEd0e!eE deEfd3�ZWd/eEdeEfd4�ZXd/eEdeEfd5�ZYd6eEdeCfd7�ZZd8e[deEfd9�Z\d:e!e!e de&e#eE e#eC f fd;�Z]deEdeNfd<�Z^eIfd=ed>eCde e_ddf fd?�Z`dydeEdAeNdeEfdB�ZadeEde&eEeEf fdC�ZbdDeEdEeEddfdF�ZcdeEdeNfdG�ZddHedIeddfdJ�Ze G dK� dLe� � ZfdMedNede'e fdO�ZgdPeEdQe$eC deEfdR�ZhdzdTeEdUeEdeEfdV�ZidTeEde&e$eE e$eC f fdW�ZjdTeEdeFfdX�ZkdTeEdeEfdY�ZldZeEd[eeEge&edf f de&eEeFf fd\�ZmdTeEdeFfd]�ZndTeEde&eE fd^�ZodZeEde&eEeEe&e$eE e$eE f f fd_�ZpdZeEdeEfd`�ZqdZeEdeEfda�Zrdbe,deEfdc�Zs e d@�d� � G de� df� � � � ZtdgeEdetfdh�ZudZeEdetfdi�ZvdjeNddfdk�Zwd{dl�ZxdeNfdm�Zyd|deEdneCde&eeCf fdo�Zzdpe!e de"e&eef fdq�Z{dree@geNf dpe!e@ de&e!e@ e!e@ f fds�Z| G dt� due.� � Z}d{dv�Z~dS )}� N)� dataclass)�partial)�StringIO)�filterfalse�tee�zip_longest)�Path)�FunctionType� TracebackType)�Any�BinaryIO�Callable�Dict� Generator�Iterable�Iterator�List�Optional�TextIO�Tuple�Type�TypeVar�Union�cast)�Requirement)�BuildBackendHookCaller)�__version__)�CommandError�ExternallyManagedEnvironment)�get_major_minor_version)�WINDOWS)�retry)�running_under_virtualenv)�rmtree�display_path� backup_dir�ask�splitext�format_size�is_installable_dir�normalize_path�renames�get_prog� ensure_dir�remove_auth_from_url�check_externally_managed� ConfiguredBuildBackendHookCaller�T� �returnc � � t j � t j � t � � dd� � } t j � | � � } dt � d| � dt � � � d�S )Nz..zpip z from z (python �))�os�path�join�dirname�__file__�abspathr r )�pip_pkg_dirs �x/builddir/build/BUILD/imunify360-venv-2.4.0/opt/imunify360/venv/lib/python3.11/site-packages/pip/_internal/utils/misc.py�get_pip_versionr? K sb � ��'�,�,�r�w���x�8�8�$��E�E�K��'�/�/�+�.�.�K�W�+�W�W�[�W�W�;R�;T�;T�W�W�W�W� �py_version_info.c � � t | � � dk r| dt | � � z dz z } nt | � � dk r | dd� } t d| � � S )ax Convert a tuple of ints representing a Python version to one of length three. :param py_version_info: a tuple of ints representing a Python version, or None to specify no version. The tuple can have any length. :return: a tuple of length three if `py_version_info` is non-None. Otherwise, return `py_version_info` unchanged (i.e. None). � )r N�VersionInfo)�lenr )rA s r>