<!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>
3
Re0,                 @   s&  d dl m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 d d
lmZ d dlmZmZmZmZ d dlmZ d dlmZ d dlmZ erd dlm Z  d dl!m"Z"m#Z#m$Z$m%Z% d dl&m'Z' d dl(m)Z) ej*e+Z,G dd de	Z-dd Z.dd Z/dS )    )absolute_importN)six)
cmdoptions)IndexGroupCommand)SUCCESS)CommandError)LinkCollector)PackageFinder)SelectionPreferences)dist_is_editableget_installed_distributionstabulatewrite_output)get_installer)map_multithread)MYPY_CHECK_RUNNING)Values)ListSetTupleIterator)
PipSession)Distributionc               @   s`   e Zd ZdZdZdZdd Zdd Zdd	 Zd
d Z	dd Z
dd Zdd Zdd Zdd ZdS )ListCommandzt
    List installed packages, including editables.

    Packages are listed in a case-insensitive sorted order.
    Tz
      %prog [options]c             C   s  | j jdddddd | j jddddd	d | j jd
ddddd | j jdddddd | j jdddddd | j jtj  | j jddddd | j jddddd+dd | j jdddd d! | j jd"d#d$d%d! | j jd&dd$d'd(d) tjtj| j}| jjd*| | jjd*| j  d S ),Nz-oz
--outdated
store_trueFzList outdated packages)actiondefaulthelpz-uz
--uptodatezList uptodate packagesz-ez
--editablezList editable projects.z-lz--localzSIf in a virtualenv that has global access, do not list globally-installed packages.z--useruserz,Only output packages installed in user-site.)destr   r   r   z--prezYInclude pre-release and development versions. By default, pip only finds stable versions.z--formatstorelist_formatcolumnsfreezejsonzBSelect the output format among: columns (default), freeze, or json)r   r   r   choicesr   z--not-requirednot_requiredz>List packages that are not dependencies of installed packages.)r   r   r   z--exclude-editablestore_falseinclude_editablez%Exclude editable package from output.z--include-editablez%Include editable package from output.T)r   r   r   r   r   )r"   r#   r$   )cmd_opts
add_optionr   	list_pathmake_option_groupindex_groupparserinsert_option_group)self
index_opts r2   /builddir/build/BUILDROOT/alt-python36-pip-20.2.4-5.el8.x86_64/opt/alt/python36/lib/python3.6/site-packages/pip/_internal/commands/list.pyadd_options.   sv    zListCommand.add_optionsc             C   s*   t j||d}td|jd}tj||dS )zK
        Create a package finder appropriate to this list command.
        )optionsF)allow_yankedallow_all_prereleases)link_collectorselection_prefs)r   creater
   prer	   )r0   r5   sessionr8   r9   r2   r2   r3   _build_package_finder{   s    
z!ListCommand._build_package_finderc             C   s   |j r|jrtdtj| t|j|j|j|j	|j
d}|jrL| j||}|j r`| j||}n|jrr| j||}| j|| tS )Nz5Options --outdated and --uptodate cannot be combined.)
local_only	user_onlyeditables_onlyinclude_editablespaths)outdatedZuptodater   r   check_list_path_optionr   localr   editabler(   pathr&   get_not_requiredget_outdatedget_uptodateoutput_package_listingr   )r0   r5   argspackagesr2   r2   r3   run   s$    

zListCommand.runc             C   s   dd | j ||D S )Nc             S   s   g | ]}|j |jkr|qS r2   )latest_versionparsed_version).0distr2   r2   r3   
<listcomp>   s    z,ListCommand.get_outdated.<locals>.<listcomp>)iter_packages_latest_infos)r0   rM   r5   r2   r2   r3   rI      s    zListCommand.get_outdatedc             C   s   dd | j ||D S )Nc             S   s   g | ]}|j |jkr|qS r2   )rO   rP   )rQ   rR   r2   r2   r3   rS      s    z,ListCommand.get_uptodate.<locals>.<listcomp>)rT   )r0   rM   r5   r2   r2   r3   rJ      s    zListCommand.get_uptodatec                sB   t   x$|D ]} jdd |j D  qW t fdd|D S )Nc             s   s   | ]}|j V  qd S )N)key)rQ   requirementr2   r2   r3   	<genexpr>   s    z/ListCommand.get_not_required.<locals>.<genexpr>c                s   h | ]}|j  kr|qS r2   )rU   )rQ   pkg)dep_keysr2   r3   	<setcomp>   s    z/ListCommand.get_not_required.<locals>.<setcomp>)setupdaterequireslist)r0   rM   r5   rR   r2   )rY   r3   rH      s    
zListCommand.get_not_requiredc          
   #   sV   | j B}| j|  fdd}x t||D ]}|d k	r2|V  q2W W d Q R X d S )Nc                sp   d} j | j}js$dd |D } j| jd}|j|}|d krHd S |j}|jjr\d}nd}|| _	|| _
| S )Nunknownc             S   s   g | ]}|j js|qS r2   )versionis_prerelease)rQ   	candidater2   r2   r3   rS      s    zOListCommand.iter_packages_latest_infos.<locals>.latest_info.<locals>.<listcomp>)project_namewheelsdist)find_all_candidatesrU   r;   make_candidate_evaluatorrc   sort_best_candidater`   linkis_wheelrO   latest_filetype)rR   typZall_candidatesZ	evaluatorbest_candidateremote_version)finderr5   r2   r3   latest_info   s     

z;ListCommand.iter_packages_latest_infos.<locals>.latest_info)_build_sessionr=   r   )r0   rM   r5   r<   rp   rR   r2   )ro   r5   r3   rT      s    z&ListCommand.iter_packages_latest_infosc             C   s   t |dd d}|jdkr:|r:t||\}}| j|| nb|jdkrxV|D ]4}|jdkrntd|j|j|j qJtd|j|j qJW n|jd	krtt	|| d S )
Nc             S   s
   | j j S )N)rc   lower)rR   r2   r2   r3   <lambda>   s    z4ListCommand.output_package_listing.<locals>.<lambda>)rU   r"   r#      z%s==%s (%s)z%s==%sr$   )
sortedr!   format_for_columnsoutput_package_listing_columnsverboser   rc   r`   locationformat_for_json)r0   rM   r5   dataheaderrR   r2   r2   r3   rK      s    



z"ListCommand.output_package_listingc             C   sf   t |dkr|jd| t|\}}t |dkrL|jddjtdd | x|D ]}t| qRW d S )Nr   rt    c             S   s   d|  S )N-r2   )xr2   r2   r3   rs     s    z<ListCommand.output_package_listing_columns.<locals>.<lambda>)leninsertr   joinmapr   )r0   r{   r|   Zpkg_stringssizesvalr2   r2   r3   rw      s    
z*ListCommand.output_package_listing_columnsN)__name__
__module____qualname____doc__ignore_require_venvusager4   r=   rN   rI   rJ   rH   rT   rK   rw   r2   r2   r2   r3   r   #   s   M#r   c             C   s   |j }|rddddg}nddg}g }|jdks@tdd | D rJ|jd |jdkr^|jd	 xt| D ]l}|j|jg}|r|j|j |j|j |jdkst|r|j|j	 |jdkr|jt
| |j| qdW ||fS )
z_
    Convert the package data into something usable
    by output_package_listing_columns.
    ZPackageVersionZLatestZTypert   c             s   s   | ]}t |V  qd S )N)r   )rQ   r   r2   r2   r3   rW     s    z%format_for_columns.<locals>.<genexpr>ZLocationZ	Installer)rC   rx   anyappendrc   r`   rO   rk   r   ry   r   )pkgsr5   Zrunning_outdatedr|   r{   Zprojrowr2   r2   r3   rv     s(    




rv   c             C   sz   g }xj| D ]b}|j tj|jd}|jdkrB|j|d< t||d< |jrbtj|j|d< |j	|d< |j
| q
W tj|S )N)namer`   rt   ry   	installerrO   rk   )rc   r   	text_typer`   rx   ry   r   rC   rO   rk   r   r$   dumps)rM   r5   r{   rR   infor2   r2   r3   rz   1  s    



rz   )0
__future__r   r$   loggingpip._vendorr   Zpip._internal.clir   pip._internal.cli.req_commandr   pip._internal.cli.status_codesr   pip._internal.exceptionsr   pip._internal.index.collectorr   "pip._internal.index.package_finderr	   $pip._internal.models.selection_prefsr
   pip._internal.utils.miscr   r   r   r   pip._internal.utils.packagingr   Zpip._internal.utils.parallelr   pip._internal.utils.typingr   optparser   typingr   r   r   r   pip._internal.network.sessionr   Zpip._vendor.pkg_resourcesr   	getLoggerr   loggerr   rv   rz   r2   r2   r2   r3   <module>   s0   
 i&