HEX
Server: Apache
System: Linux zacp120.webway.host 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User: govancoz (1003)
PHP: 8.3.26
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //usr/lib/python3.9/site-packages/pip/_internal/commands/__pycache__/search.cpython-39.pyc
a

?�f|�@sVddlmZddlZddlZddlZddlmZddlmZddl	m
Zddlm
Z
ddlmZddlmZdd	lmZmZdd
lmZddlmZddlmZdd
lmZddlmZddlm Z m!Z!ddl"m#Z#e#�rddl$m%Z%ddl&m'Z'm(Z(m)Z)ddl*m+Z+e+de,e,e'e,d��Z-e�.e/�Z0Gdd�dee�Z1dd�Z2ddd�Z3dd�Z4dS)�)�absolute_importN)�OrderedDict)�
pkg_resources)�parse)�
xmlrpc_client)�Command)�SessionCommandMixin)�NO_MATCHES_FOUND�SUCCESS)�CommandError)�PyPI)�PipXmlrpcTransport)�get_terminal_size)�
indent_log)�get_distribution�write_output)�MYPY_CHECK_RUNNING)�Values)�List�Dict�Optional)�	TypedDict�TransformedHit��name�summary�versionsc@s0eZdZdZdZdZdd�Zdd�Zdd	�Zd
S)�
SearchCommandz@Search for PyPI packages whose name or summary contains <query>.z
      %prog [options] <query>TcCs.|jjddddtjdd�|j�d|j�dS)Nz-iz--index�indexZURLz3Base URL of Python Package Index (default %default))�dest�metavar�default�helpr)Zcmd_optsZ
add_optionrZpypi_url�parserZinsert_option_group)�self�r%�A/usr/lib/python3.9/site-packages/pip/_internal/commands/search.py�add_options,s�zSearchCommand.add_optionscCsT|std��|}|�||�}t|�}d}tj��r<t�d}t||d�|rPtSt	S)Nz)Missing required argument (search query).r)�terminal_width)
r�search�transform_hits�sys�stdout�isattyr�
print_resultsr
r	)r$�options�args�queryZ	pypi_hits�hitsr(r%r%r&�run7s

zSearchCommand.runcCs<|j}|�|�}t||�}t�||�}|�||d�d�}|S)N)rr�or)rZget_default_sessionr
rZServerProxyr))r$r1r/Z	index_urlZsessionZ	transportZpypir2r%r%r&r)Hs

zSearchCommand.searchN)	�__name__�
__module__�__qualname__�__doc__ZusageZignore_require_venvr'r3r)r%r%r%r&r%srcCs�t�}|D]n}|d}|d}|d}||��vrF|||gd�||<q
||d�|�|t||d�kr
|||d<q
t|���S)z�
    The list from pypi is really a list of versions. We want a list of
    packages with the list of versions stored inline. This converts the
    list from pypi into one we can use.
    rr�versionrr)r�keys�append�highest_version�list�values)r2Zpackages�hitrrr9r%r%r&r*Ts�r*c	Cs~|sdS|dur&tdd�|D��d}dd�tjD�}|D�]<}|d}|dpRd}t|�dd	g��}|dur�||d
}|dkr�t�||�}	dd
|d�|	�}djfddjfit	���it	���}
z�t
|
�||v�r`t|�}|dus�J�t��X|j
|k�rt
d|j
�n.t
d|j
�t|�j�r6t
d|�n
t
d|�Wd�n1�sV0YWq:t�yvYq:0q:dS)Nc	Ss.g|]&}t|d�tt|�ddg����qS)rr�-)�lenr<�get)�.0r?r%r%r&�
<listcomp>vs�z!print_results.<locals>.<listcomp>�cSsg|]
}|j�qSr%)Zproject_name)rC�pr%r%r&rD{�rr�rr@��
�
� �z-{name_latest:{name_column_width}} - {summary}Zname_latestz{name} ({latest})zINSTALLED: %s (latest)z
INSTALLED: %sz=LATEST:    %s (pre-release; install with "pip install --pre")z
LATEST:    %s)�maxrZworking_setr<rB�textwrapZwrap�join�format�localsrrrr9�
parse_versionZpre�UnicodeEncodeError)r2Zname_column_widthr(Zinstalled_packagesr?rrZlatestZtarget_widthZ
summary_lines�lineZdistr%r%r&r.qsR��
���
�.r.cCst|td�S)N)�key)rNrS)rr%r%r&r<�sr<)NN)5Z
__future__rZloggingr+rO�collectionsrZpip._vendorrZpip._vendor.packaging.versionrrSZpip._vendor.six.movesrZpip._internal.cli.base_commandrZpip._internal.cli.req_commandrZpip._internal.cli.status_codesr	r
Zpip._internal.exceptionsrZpip._internal.models.indexrZpip._internal.network.xmlrpcr
Zpip._internal.utils.compatrZpip._internal.utils.loggingrZpip._internal.utils.miscrrZpip._internal.utils.typingrZoptparser�typingrrrZtyping_extensionsr�strrZ	getLoggerr5Zloggerrr*r.r<r%r%r%r&�<module>s<�
/
-