
    dh                    b   d dl mZ d dl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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  d dl!m"Z" d dl#m$Z$  ejJ                  e&      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Z0 G d de      Z1y)$    )annotationsN)Values)
ModuleType)Any)where)parse)
cmdoptions)Command)make_target_python)SUCCESS)Configuration)get_environment)open_text_resource)
indent_log)get_pip_versionc                2    t         j                  d| |       y )Nz%s: %s)loggerinfo)namevalues     ^/var/www/html/vivango/api/ia/venv/lib/python3.12/site-packages/pip/_internal/commands/debug.py
show_valuer      s    
KK$&    c                     t         j                  d       t        j                  j                  } t               5  t        d|        d d d        y # 1 sw Y   y xY w)Nzsys.implementation:r   )r   r   sysimplementationr   r   r   )implementation_names    r   show_sys_implementationr       sF    
KK%&,,11	 06./0 0 0s   AAc                     t        dd      5 } | j                         D cg c]*  }d|v s|j                         j                  dd      d   , }}d d d        t	        d D              S c c}w # 1 sw Y    xY w)Nzpip._vendorz
vendor.txt==    r   c              3  @   K   | ]  }|j                  d d        yw)r    r"   N)split).0lines     r   	<genexpr>z(create_vendor_txt_map.<locals>.<genexpr>0   s     6

4#6s   )r   	readlinesstripr$   dict)fr&   liness      r   create_vendor_txt_mapr-   '   s{    	M<	8 
A 78kkm
.2tt|DJJLsA&q)
 

 6666

 
s!   A0	A+%A+A0+A00A9c                   | j                         j                  dd      } | dk(  rd} 	 t        d|  t               t	               d       t        t        j                  |       S # t        $ r | dk(  rt        j                  d	k  rY y  w xY w)
N-_
setuptoolspkg_resourceszpip._vendor.r   )level
truststore)   
   )lowerreplace
__import__globalslocalsgetattrpip_vendorImportErrorr   version_info)module_names    r   get_module_from_module_namerB   3   s    ##%--c37Kl"%\+/FHANs{{K00  ,&3+;+;g+Es   ;A% %!B
B
c                   t        |       }t        |dd       }|rk|si|j                  J t        t        j
                  j                  |j                        g      }|j                  |       }|rt        |j                        }|S )N__version__)
rB   r<   __file__r   ospathdirnameget_distributionstrversion)rA   modulerK   envdists        r   get_vendor_version_from_modulerO   E   ss    (5FfmT2Gg***rwwv?@A##K0$,,'GNr   c                    | j                         D ]N  \  }}d}t        |      }|sd}|}nt        |      t        |      k7  rd| d}t        j	                  d|||       P y)z{Log the actual version and print extra info if there is
    a conflict or if the actual version could not be imported.
     zM (Unable to locate actual module version, using vendor.txt specified version)z2 (CONFLICT: vendor.txt suggests version should be )z%s==%s%sN)itemsrO   parse_versionr   r   )vendor_txt_versionsrA   expected_versionextra_messageactual_versions        r   show_actual_vendor_versionsrY   T   s     *=)B)B)D L%%7D1  .N>*m<L.MM'(+  	J^]KLr   c                     t         j                  d       t               } t               5  t	        |        d d d        y # 1 sw Y   y xY w)Nzvendored library versions:)r   r   r-   r   rY   )rU   s    r   show_vendor_versionsr[   i   s;    
KK,-/1	 9#$789 9 9s	   ?Ac                   d}t        |       }|j                         }|j                         }d}|rd| d}dt        |       | }t        j                  |       | j                  dk  rt        |      |kD  rd}|d | }nd}t               5  |D ]   }t        j                  t        |             " |rd	| d
}t        j                  |       d d d        y # 1 sw Y   y xY w)Nr6   rQ   z
 (target: rR   zCompatible tags: r"   TFz...
[First z) tags shown. Pass --verbose to show all.])	r   get_sorted_tagsformat_givenlenr   r   verboser   rJ   )	options	tag_limittarget_pythontagsformatted_targetsuffixmsgtags_limitedtags	            r   	show_tagsrj   q   s    I&w/M((*D %113F./q1c$i[
1C
KKs4y94JY	  	"CKKC!	"  +TUCKK  s   ACC#c                
   | j                         D ch c]  \  }}|j                  dd      d    }}}|syg d}|D cg c]	  }||v s| }}|syd|v r|j                  d       dj                  |      S c c}}w c c}w )N.r"   r   zNot specified)installwheeldownloadglobalz, )rS   r$   removejoin)configkeyr0   levelslevels_that_override_globalr3   global_overriding_levels          r   ca_bundle_inforx      s    17@vsAciiQ"@F@"B!U.I%I  #6h99V A
s   A:	B B c                  (    e Zd ZdZdZdZddZddZy)	DebugCommandz$
    Display debug information.
    z
      %prog <options>Tc                    t        j                  | j                         | j                  j	                  d| j                         | j                  j
                  j                          y )Nr   )r	   add_target_python_optionscmd_optsparserinsert_option_grouprs   load)selfs    r   add_optionszDebugCommand.add_options   sB    ,,T]];''4==9!r   c                T   t         j                  d       t        dt                      t        dt        j
                         t        dt        j                         t        dt	        j                                t        dt	        j                                t        dt        j                                t        dt        j                         t                t        d	t        | j                  j                               t        d
t         j"                  j%                  d
             t        dt         j"                  j%                  d             t        dt'                      t        dt(        j*                  j,                         t/                t1        |       t2        S )NzThis command is only meant for debugging. Do not use this with automation for parsing and getting these details, since the output and options of this command may change without notice.zpip versionzsys.versionzsys.executablezsys.getdefaultencodingzsys.getfilesystemencodingzlocale.getpreferredencodingzsys.platformz'cert' config valueREQUESTS_CA_BUNDLECURL_CA_BUNDLEzpip._vendor.certifi.where()zpip._vendor.DEBUNDLED)r   warningr   r   r   rK   
executablegetdefaultencodinggetfilesystemencodinglocalegetpreferredencodingplatformr   rx   r~   rs   rF   environgetr   r=   r>   	DEBUNDLEDr[   rj   r   )r   ra   argss      r   runzDebugCommand.run   s   %	
 	=/"34=#++.#S^^4+S-C-C-EF.0I0I0KL)'')	
 	>3<<0!(.9K9K*LM'8L)MN#RZZ^^4D%EF0%':*CKK,A,AB'r   NreturnNone)ra   r   r   z	list[str]r   int)__name__
__module____qualname____doc__usageignore_require_venvr   r    r   r   rz   rz      s    E"
r   rz   )r   rJ   r   r   r   r   r   )r   dict[str, str])rA   rJ   r   zModuleType | None)rA   rJ   r   z
str | None)rU   r   r   r   )ra   r   r   r   )rs   r   r   rJ   )2
__future__r   r   loggingrF   r   optparser   typesr   typingr   pip._vendorr=   pip._vendor.certifir   pip._vendor.packaging.versionr   rT   pip._internal.clir	   pip._internal.cli.base_commandr
   pip._internal.cli.cmdoptionsr   pip._internal.cli.status_codesr   pip._internal.configurationr   pip._internal.metadatar   pip._internal.utils.compatr   pip._internal.utils.loggingr   pip._internal.utils.miscr   	getLoggerr   r   r   r   r-   rB   rO   rY   r[   rj   rx   rz   r   r   r   <module>r      s    "   	 
     % @ ( 2 ; 2 5 2 9 2 4			8	$'0	7$L*9<"+7 +r   