B
    odt                 @   s   d dl Z d dlmZ d dlmZ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 d d
lmZmZ d dlmZ d dlmZ e eZG dd deZdS )    N)Values)AnyDictList)default_environment)
print_json)__version__)
cmdoptions)Command)SUCCESS)BaseDistributionget_environment)stdlib_pkgs)path_to_urlc               @   sT   e Zd ZdZdZdZddddZeee	 e
dd	d
Zeee	ef dddZdS )InspectCommandzZ
    Inspect the content of a Python environment and produce a report in JSON format.
    Tz
      %prog [options]N)returnc             C   sN   | j jddddd | j jdddddd	 | j t  | jd
| j  d S )Nz--local
store_trueFzSIf in a virtualenv that has global access, do not list globally-installed packages.)actiondefaulthelpz--useruserz,Only output packages installed in user-site.)destr   r   r   r   )cmd_opts
add_optionr	   	list_pathparserinsert_option_group)self r   P/var/www/html/venv/lib/python3.7/site-packages/pip/_internal/commands/inspect.pyadd_options   s    zInspectCommand.add_options)optionsargsr   c                sT   t | t|jj|j|jttd}dt	 fdd|D t
 d}t|d tS )N)
local_only	user_onlyskip1c                s   g | ]}  |qS r   )_dist_to_dict).0dist)r   r   r   
<listcomp>:   s    z&InspectCommand.run.<locals>.<listcomp>)versionpip_version	installedenvironment)data)r	   check_list_path_optionr   pathiter_installed_distributionslocalr   setr   r   r   r   r   )r   r!   r"   distsoutputr   )r   r   run0   s    



zInspectCommand.run)r)   r   c             C   sv   |j |jd}|j}|d k	r*| |d< n$|j}|d k	rNt|ddid|d< |j}|jrb||d< |jrr|j|d< |S )N)metadataZmetadata_location
direct_urleditableT)urldir_info	installer	requested)	metadata_dictinfo_locationr9   to_dicteditable_project_locationr   r=   installed_with_dist_infor>   )r   r)   resr9   rB   r=   r   r   r   r'   A   s    

zInspectCommand._dist_to_dict)__name__
__module____qualname____doc__ignore_require_venvusager    r   r   strintr7   r   r   r   r'   r   r   r   r   r      s   r   )loggingoptparser   typingr   r   r   Zpip._vendor.packaging.markersr   pip._vendor.richr   pipr   Zpip._internal.clir	   pip._internal.cli.req_commandr
   pip._internal.cli.status_codesr   pip._internal.metadatar   r   pip._internal.utils.compatr   pip._internal.utils.urlsr   	getLoggerrE   loggerr   r   r   r   r   <module>   s   
