<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>
B
    Re|                 @   sV  d dl mZ d dlZd dlZd dlZd dlmZ d dlmZ d dl	m
Z d dlmZ d dlmZ d dlmZ d d	lmZmZ d d
lmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlm Z m!Z! d dl"m#Z# e#rd dl$m%Z% d dl&m'Z'm(Z(m)Z) d dl*m+Z+ e+de,e,e'e, dZ-e.e/Z0G dd deeZ1dd Z2dddZ3dd Z4dS )    )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               @   s0   e Zd ZdZdZdZdd Zdd Zdd	 Zd
S )SearchCommandz@Search for PyPI packages whose name or summary contains <query>.z
      %prog [options] <query>Tc             C   s.   | j jddddtjdd | jd| j  d S )Nz-iz--indexindexURLz3Base URL of Python Package Index (default %default))destmetavardefaulthelpr   )cmd_opts
add_optionr   pypi_urlparserinsert_option_group)self r)   /builddir/build/BUILDROOT/alt-python37-pip-20.2.4-6.el8.x86_64/opt/alt/python37/lib/python3.7/site-packages/pip/_internal/commands/search.pyadd_options,   s    zSearchCommand.add_optionsc             C   sT   |st d|}| ||}t|}d }tj r<t d }t||d |rPtS t	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*   run7   s    

zSearchCommand.runc             C   s<   |j }| |}t||}t||}|||dd}|S )N)r   r   or)r   get_default_sessionr   r   ServerProxyr-   )r(   r5   r3   	index_urlsession	transportpypir6   r)   r)   r*   r-   H   s    

zSearchCommand.searchN)	__name__
__module____qualname____doc__usageignore_require_venvr+   r7   r-   r)   r)   r)   r*   r   %   s   r   c             C   s   t  }xv| D ]n}|d }|d }|d }|| krH|||gd||< q|| d | |t|| d kr||| d< qW 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.
    r   r   version)r   r   r   r   )r   keysappendhighest_versionlistvalues)r6   packageshitr   r   rE   r)   r)   r*   r.   T   s    
r.   c          
   C   sl  | sd S |d kr&t dd | D d }dd tjD }x.| D ]$}|d }|d pVd}t|dd	g}|d k	r|| d
 }|dkrt||}	dd|d   |	}djf ddjf t	 it	 }
yt
|
 ||krJt|}|d k	stt N |j|krt
d|j n.t
d|j t|jr6t
d| n
t
d| W d Q R X W q> tk
rb   Y q>X q>W d S )Nc          	   S   s.   g | ]&}t |d  t t|ddg qS )r   r   -)lenrH   get).0rL   r)   r)   r*   
<listcomp>w   s   z!print_results.<locals>.<listcomp>   c             S   s   g | ]
}|j qS r)   )project_name)rP   pr)   r)   r*   rQ   {   s    r   r    r   rM      
   
    z-{name_latest:{name_column_width}} - {summary}Zname_latestz{name} ({latest})zINSTALLED: %s (latest)zINSTALLED: %sz=LATEST:    %s (pre-release; install with "pip install --pre")zLATEST:    %s)maxr   working_setrH   rO   textwrapwrapjoinformatlocalsr   r   AssertionErrorr   rE   parse_versionpreUnicodeEncodeError)r6   Zname_column_widthr,   Zinstalled_packagesrL   r   r   ZlatestZtarget_widthZsummary_lineslinedistr)   r)   r*   r2   q   sH    

r2   c             C   s   t | tdS )N)key)r[   rc   )r   r)   r)   r*   rH      s    rH   )NN)5
__future__r   loggingr/   r]   collectionsr   pip._vendorr   pip._vendor.packaging.versionr   rc   pip._vendor.six.movesr   pip._internal.cli.base_commandr   pip._internal.cli.req_commandr   pip._internal.cli.status_codesr	   r
   pip._internal.exceptionsr   pip._internal.models.indexr   Zpip._internal.network.xmlrpcr   pip._internal.utils.compatr   pip._internal.utils.loggingr   pip._internal.utils.miscr   r   pip._internal.utils.typingr   optparser   typingr   r   r   Ztyping_extensionsr   strr   	getLoggerr?   loggerr   r.   r2   rH   r)   r)   r)   r*   <module>   s:   
/
-