HEX
Server: LiteSpeed
System: Linux php-prod-1.spaceapp.ru 5.15.0-157-generic #167-Ubuntu SMP Wed Sep 17 21:35:53 UTC 2025 x86_64
User: xnsbb3110 (1041)
PHP: 8.1.33
Disabled: NONE
Upload Files
File: //usr/local/lib/python3.10/dist-packages/pip/_internal/commands/__pycache__/show.cpython-310.pyc
o

��h��@s�ddlmZddlZddlZddlmZmZmZddlm	Z	ddl
mZddlm
Z
ddlmZddlmZdd	lmZmZdd
lmZmZddlmZe�e�Zd!dd�ZGdd�de�ZGdd�de�Zd"dd�Z d#dd �Z!dS)$�)�annotationsN)�	Generator�Iterable�Iterator)�Values)�
NamedTuple)�InvalidRequirement��canonicalize_name)�Command)�ERROR�SUCCESS)�BaseDistribution�get_default_environment)�write_output�label�str�returncCs(tjtj}t�dd|�}|�|���S)N�)�string�punctuation�
whitespacer�	maketrans�	translate�lower)r�chars_to_remove�removal_map�r�F/usr/local/lib/python3.10/dist-packages/pip/_internal/commands/show.py�normalize_project_url_labelsrc@s,eZdZdZdZdZddd�Zdd
d�ZdS)�ShowCommandzx
    Show information about one or more installed packages.

    The output is in RFC-compliant mail header format.
    z$
      %prog [options] <package> ...Tr�NonecCs,|jjddddddd�|j�d|j�dS)	Nz-fz--files�files�
store_trueFz7Show the full list of installed files for each package.)�dest�action�default�helpr)�cmd_opts�
add_option�parser�insert_option_group)�selfrrr�add_options&s�	zShowCommand.add_options�optionsr�args�	list[str]�intcCs8|s	t�d�tS|}t|�}t||j|jd�stStS)Nz.ERROR: Please provide a package name or names.)�
list_files�verbose)�logger�warningr�search_packages_info�
print_resultsr"r3r
)r,r.r/�query�resultsrrr�run2s

�zShowCommand.runN)rr!)r.rr/r0rr1)�__name__�
__module__�__qualname__�__doc__�usage�ignore_require_venvr-r:rrrrr s
r c@s�eZdZUded<ded<ded<ded<ded<ded	<ded
<ded<ded<ded
<ded<ded<ded<ded<ded<ded<ded<ded<dS)�_PackageInfor�name�version�locationz
str | None�editable_project_locationr0�requires�required_by�	installer�metadata_version�classifiers�summary�homepage�project_urls�author�author_email�license�license_expression�entry_pointszlist[str] | Noner"N)r;r<r=�__annotations__rrrrrA@s&
rAr8r0�#Generator[_PackageInfo, None, None]c	#st�t�}dd�|��D��dd�|D�}t�fdd�t||�D��}|r-t�dd�|��d4�fdd
�}|D�]}z�|}Wn	tyHYq6wztdd�|��D�t	j
d�}Wntykt|��t	j
d�}Ynwzt||�t	j
d�}Wnty�dg}Ynwz
|�
d�}	|	jdd�}
Wnty�g}
Ynw|��}|dur�d}nt|�}|j}
|
�dg�}|
�dd�}|s�|D]}|jddd�\}}t|�}|dkr�|��}nq�td5id|j�d|j�d|jp�d�d |j�d!|�d"|�d#|j�d$|jp�d�d%|
�d&g��d'|
�d(d��d|�d)|�d*|
�d+d��d,|
�d-d��d.|
�d/d��d0|
�d1d��d2|
�d3|��Vq6dS)6z�
    Gather details from installed distributions. Print distribution name,
    version, location, and installed files. Installed files requires a
    pip generated 'installed-files.txt' in the distributions '.egg-info'
    directory.
    cSsi|]}|j|�qSr)�canonical_name��.0�distrrr�
<dictcomp>^�z(search_packages_info.<locals>.<dictcomp>cSsg|]}t|��qSrr	)rWrBrrr�
<listcomp>_rZz(search_packages_info.<locals>.<listcomp>csg|]
\}}|�vr|�qSrr)rWrB�pkg��	installedrrr[aszPackage(s) not found: %s�, �current_distrr�
Iterator[str]cs�fdd����D�S)Nc3s6�|]}�jdd�|��D�vr|jdpdVqdS)cSsh|]}t|j��qSr)r
rB)rW�drrr�	<setcomp>kszRsearch_packages_info.<locals>._get_requiring_packages.<locals>.<genexpr>.<setcomp>�Name�UNKNOWNN)rU�iter_dependencies�metadatarV�r`rr�	<genexpr>gs����zHsearch_packages_info.<locals>._get_requiring_packages.<locals>.<genexpr>)�valuesrhr]rhr�_get_requiring_packagesfs
�z5search_packages_info.<locals>._get_requiring_packagescSsh|]}|j�qSr)rB)rW�reqrrrrcwsz'search_packages_info.<locals>.<setcomp>)�keyz#N/Azentry_points.txtF)�keependsNzProject-URLz	Home-pager�,�)�maxsplitrLrBrCrDrErFrGrHrIrJ�
ClassifierrK�SummaryrMrN�AuthorrOzAuthor-emailrP�LicenserQzLicense-ExpressionrRr")r`rrrar)r�iter_all_distributions�sorted�zipr4r5�join�KeyErrorrfrrr�iter_raw_dependencies�	read_text�
splitlines�FileNotFoundError�iter_declared_entriesrg�get_all�get�splitr�striprA�raw_name�raw_versionrDrErHrI)r8�env�query_names�missingrk�
query_namerXrFrG�entry_points_textrR�
files_iterr"rgrMrL�url�	url_label�normalized_labelrr]rr6Us���
�
��
�
������������	�
���
�������r6�
distributions�Iterable[_PackageInfo]r2�boolr3cCs�d}t|�D]�\}}d}|dkrtd�ttt|j�d���}td|j�td|j�td|j	�td	|j
�td
|j�td|j�|dkrQ|j
rQtd
|j
�ntd|j�td|j�|jdurhtd|j�tdd�|j��tdd�|j��|r�td|j�td|j�td�|jD]}td|�q�td�|jD]	}td|���q�td�|jD]}	td|	�q�|r�td�|jdur�td�q|jD]	}
td|
���q�q|S)zC
    Print the information from installed distributions found.
    FTrz---�.zName: %szVersion: %szSummary: %sz
Home-page: %sz
Author: %szAuthor-email: %s)��zLicense-Expression: %szLicense: %szLocation: %sNzEditable project location: %szRequires: %sr_zRequired-by: %szMetadata-Version: %sz
Installer: %szClassifiers:z  %sz
Entry-points:z
Project-URLs:zFiles:z+Cannot locate RECORD or installed-files.txt)�	enumerater�tuple�mapr1rIr�rBrCrKrLrNrOrQrPrDrEryrFrGrHrJrRr�rMr")r�r2r3�results_printed�irX�metadata_version_tuple�
classifier�entry�project_url�linerrrr7�sT
�





�r7)rrrr)r8r0rrT)r�r�r2r�r3r�rr�)"�
__future__r�loggingr�collections.abcrrr�optparser�typingr�"pip._vendor.packaging.requirementsr�pip._vendor.packaging.utilsr
�pip._internal.cli.base_commandr�pip._internal.cli.status_codesrr
�pip._internal.metadatarr�pip._internal.utils.miscr�	getLoggerr;r4rr rAr6r7rrrr�<module>s$

%
]