1j[ 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 dZ< ej= e> Z? e(d Z@e&e'eA eAef ZBe&eCeCeCf ZDe&eEe&e$eE e$eE f f ZFeeeeAgef ZGeeeeBgef ZHdZIdeEfdZJde&eCdf de&eCeCeCf fdZKdeEddfdZLdeEfdZM 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 deEfd1ZUd/eEddfd2ZVd/eEd0e!eE deEfd3ZWd/eEdeEfd4ZXd/eEdeEfd5ZYd6eEdeCfd7ZZd8e[deEfd9Z\d:e!e!e de&e#eE e#eC f fd;Z]deEdeNfd<Z^eIfd=ed>eCde e_ddf fd?Z`dydeEdAeNdeEfdBZadeEde&eEeEf fdCZbdDeEdEeEddfdFZcdeEdeNfdGZddHedIeddfdJZe G dK dLe ZfdMedNede'e fdOZgdPeEdQe$eC deEfdRZhdzdTeEdUeEdeEfdVZidTeEde&e$eE e$eC f fdWZjdTeEdeFfdXZkdTeEdeEfdYZldZeEd[eeEge&edf f de&eEeFf fd\ZmdTeEdeFfd]ZndTeEde&eE fd^ZodZeEde&eEeEe&e$eE e$eE f f fd_ZpdZeEdeEfd`ZqdZeEdeEfdaZrdbe,deEfdcZs e d@d G de df ZtdgeEdetfdhZudZeEdetfdiZvdjeNddfdkZwd{dlZxdeNfdmZyd|deEdneCde&eeCf fdoZzdpe!e de"e&eef fdqZ{dree@geNf dpe!e@ de&e!e@ e!e@ f fdsZ| G dt due. Z}d{dvZ~dS )} N) dataclass)partial)StringIO)filterfalseteezip_longest)Path)FunctionType TracebackType)AnyBinaryIOCallableDict GeneratorIterableIteratorListOptionalTextIOTupleTypeTypeVarUnioncast)Requirement)BuildBackendHookCaller)__version__)CommandErrorExternallyManagedEnvironment)get_major_minor_version)WINDOWS)retry)running_under_virtualenv)rmtreedisplay_path backup_dirasksplitextformat_sizeis_installable_dirnormalize_pathrenamesget_prog ensure_dirremove_auth_from_urlcheck_externally_managed ConfiguredBuildBackendHookCallerT returnc t j t j t dd } t j | } dt d| dt dS )Nz..zpip z from z (python ))ospathjoindirname__file__abspathr r )pip_pkg_dirs j/builddir/build/BUILD/cloudlinux-venv-1.0.11/venv/lib/python3.11/site-packages/pip/_internal/utils/misc.pyget_pip_versionr? K sb ',,rwx88$EEK'//+..KW+WW[WW;R;T;TWWWW 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 NVersionInfo)lenr )rA s r> normalize_version_inforF R sf ?aAO 4 44<< _ ! !)"1"- ///r@ r8 c t j | dS # t $ r<}|j t j k r|j t j k r Y d}~dS Y d}~dS d}~ww xY w)z os.path.makedirs without EEXIST.N)r7 makedirsOSErrorerrnoEEXIST ENOTEMPTY)r8 es r> r. r. e s D 7el""qw%/'A'A #"""""'A'A'A'A'A'As A+AAc t j t j d } | dv rt j dS | S # t t t f$ r Y nw xY wdS )Nr )z__main__.pyz-cz -m pippip) r7 r8 basenamesysargv executableAttributeError TypeError IndexError)progs r> r- r- o sp w,,(((n----KIz2 5s AA A A A rC g ?)stop_after_delaywaitFdir ignore_errorsonexcc |rt }|t }t t | }t j dk rt j | | d S t j | | d S )Nr\ )rC )onerror)_onerror_ignore_onerror_reraiser rmtree_errorhandlerrQ version_infoshutilr$ )rZ r[ r\ handlers r> r$ r$ | sr } 0>>>G 7"" c)))))) c7++++++r@ _argsc d S N rg s r> ra ra s Dr@ c ri rj rk s r> rb rb s r@ r^ funcexc_infoc n t j | j }n# t $ r Y dS w xY w|t j z sQ t j ||t j z | | dS # t $ r Y nw xY w# t $ r Y nw xY wt |t s|\ }}} || || dS )a1 `rmtree` error handler to 'force' a file remove (i.e. like `rm -f`). * If a file is readonly then it's write flag is set and operation is retried. * `onerror` is the original callback from `rmtree(... onerror=onerror)` that is chained at the end if the "rm -f" still fails. N)r7 statst_moderI S_IWRITEchmod isinstance BaseException)rm r8 rn r\ rq _s r> rc rc s '$--' T]" HT7T]2333 T D h .. "!8Q E$hs/ **"A= A- - A:9A:= B B c D t j t j | } | t j t j j z r+d| t t j d z } | S )zTGives the display value for a given path, making it relative to cwd if possible..N)r7 r8 normcaser<