a
    hbòf‡  ã                   @   sx   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 h d	£ZG d
d„ deƒZdS )é    N)ÚValues)ÚList)Ú
cmdoptions)ÚCommand)ÚSUCCESS)Úfreeze)Ústdlib_pkgs>   ÚpipÚ
setuptoolsZ
distributeÚwheelc                   @   s<   e Zd ZdZdZdZddœdd„Zeee	 e
dœd	d
„ZdS )ÚFreezeCommandzx
    Output installed packages in requirements format.

    packages are listed in a case-insensitive sorted order.
    z
      %prog [options])úext://sys.stderrr   N)Úreturnc              	   C   s°   | j jddddg ddd� | j jdd	d
dddd� | j jdddddd� | j  t ¡ ¡ | j jdddd d t¡¡d� | j jddddd� | j  t ¡ ¡ | j 	d| j ¡ d S )Nz-rz--requirementÚrequirementsÚappendÚfilez}Use the order in the given requirements file and its comments when generating output. This option can be used multiple times.)ÚdestÚactionÚdefaultÚmetavarÚhelpz-lz--localÚlocalÚ
store_trueFzUIf in a virtualenv that has global access, do not output globally-installed packages.)r   r   r   r   z--userÚuserz,Only output packages installed in user-site.z--allÚ
freeze_allz,Do not skip these packages in the output: {}z, )r   r   r   z--exclude-editableÚexclude_editablez%Exclude editable package from output.r   )
Úcmd_optsÚ
add_optionr   Ú	list_pathÚformatÚjoinÚDEV_PKGSÚlist_excludeÚparserÚinsert_option_group)Úself© r&   úZ/home/httpd/docs/test/DocsMgr/lib/python3.9/site-packages/pip/_internal/commands/freeze.pyÚadd_options   sR    øùûÿû	üzFreezeCommand.add_options)ÚoptionsÚargsr   c              	   C   sp   t tƒ}|js| t¡ |jr*| |j¡ t |¡ t|j	|j
|j|j|j||jd�D ]}tj |d ¡ qVtS )N)ÚrequirementÚ
local_onlyÚ	user_onlyÚpathsÚisolatedÚskipr   Ú
)Úsetr   r   Úupdater!   Úexcludesr   Úcheck_list_path_optionr   r   r   r   ÚpathÚisolated_moder   ÚsysÚstdoutÚwriter   )r%   r)   r*   r0   Úliner&   r&   r'   ÚrunM   s"    

ù
	zFreezeCommand.run)Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚusageÚlog_streamsr(   r   r   ÚstrÚintr<   r&   r&   r&   r'   r      s
   4r   )r8   Úoptparser   Útypingr   Zpip._internal.clir   Úpip._internal.cli.base_commandr   Úpip._internal.cli.status_codesr   Zpip._internal.operations.freezer   Úpip._internal.utils.compatr   r!   r   r&   r&   r&   r'   Ú<module>   s   