ó
    �RjÚ3  ã            	       ó˜  • S SK r S SKrS SKJr  S SKJr  S SKJrJrJ	r	J
r
JrJrJr  S SKJr  S SKJr  S SKJr  S SKJr  S S	KJr  S S
KJr  S SKJrJr  S SKJr  S SKJ r   S SK!J"r"J#r#  \(       a  S SK$J%r%  S SK&J'r'   " S S\5      r(\\(   r)\RT                  " \+5      r, " S S\5      r-SSS\S\\	\	\.      \	\.   4   4S jr/SSS\S\.4S jr0g)é    N)ÚParser)ÚValues)ÚTYPE_CHECKINGÚ	GeneratorÚListÚOptionalÚSequenceÚTupleÚcast©Úcanonicalize_name)ÚVersion)Ú
cmdoptions)ÚIndexGroupCommand)ÚSUCCESS)ÚCommandError)ÚBaseDistributionÚget_environment)ÚSelectionPreferences)Ústdlib_pkgs)ÚtabulateÚwrite_output©ÚPackageFinder)Ú
PipSessionc                   ó.   • \ rS rSr% Sr\\S'   \\S'   Srg)Ú_DistWithLatestInfoé   z¦Give the distribution object a couple of extra fields.

These will be populated during ``get_outdated()``. This is dirty but
makes the rest of the code much cleaner.
Úlatest_versionÚlatest_filetype© N)	Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   Ú__annotations__ÚstrÚ__static_attributes__r!   ó    ÚGD:\diplom_project\venv\Lib\site-packages\pip/_internal/commands/list.pyr   r      s   ‡ ñ	ð  ÓØÖr*   r   c                   ó  ^ • \ rS rSrSrSrSrSS jrS\SS4U 4S	 jjr	S\S
SSS4S jr
S\S\\   S\4S jrSSS\SS4S jrSSS\SS4S jrSSS\SS4S jrSSS\S\S   4S jrSSS\SS4S jrS\\\      S\\   SS4S jrSrU =r$ )ÚListCommandé'   zh
List installed packages, including editables.

Packages are listed in a case-insensitive sorted order.
Tz
      %prog [options]ÚreturnNc           	      óÞ  • U R                   R                  SSSSSS9  U R                   R                  SSSSS	S9  U R                   R                  S
SSSSS9  U R                   R                  SSSSSS9  U R                   R                  SSSSSS9  U R                   R                  [        R                  " 5       5        U R                   R                  SSSSS9  U R                   R                  SSSSSSS9  U R                   R                  SSSSS 9  U R                   R                  S!S"S#S$S 9  U R                   R                  S%SS#S&S'S(9  U R                   R                  [        R                  " 5       5        [        R
                  " [        R                  U R                  5      nU R                  R                  S)U5        U R                  R                  S)U R                   5        g )*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.)Údestr2   r3   r4   z--prezYInclude pre-release and development versions. By default, pip only finds stable versions.z--formatÚstoreÚlist_formatÚcolumns)r9   ÚfreezeÚjsonz‚Select the output format among: columns (default), freeze, or json. The 'freeze' format cannot be used with the --outdated option.)r2   r6   r3   Úchoicesr4   z--not-requiredÚnot_requiredz>List packages that are not dependencies of installed packages.)r2   r6   r4   z--exclude-editableÚstore_falseÚinclude_editablez%Exclude editable package from output.z--include-editablez#Include editable package in output.T)r2   r6   r4   r3   r   )	Úcmd_optsÚ
add_optionr   Ú	list_pathÚlist_excludeÚmake_option_groupÚindex_groupÚparserÚinsert_option_group)ÚselfÚ
index_optss     r+   Úadd_optionsÚListCommand.add_options2   s  € Ø�‰× Ñ ØØØØØ)ð 	!ñ 	
ð 	�‰× Ñ ØØØØØ)ð 	!ñ 	
ð 	�‰× Ñ ØØØØØ*ð 	!ñ 	
ð 	�‰× Ñ ØØØØð/ð 	!ñ 		
ð 	�‰× Ñ ØØØØØ?ð 	!ñ 	
ð 	�‰× Ñ ¤×!5Ò!5Ó!7Ô8Ø�‰× Ñ ØØØð2ð 	!ñ 	
ð 	�‰× Ñ ØØØØØ1ðQð 	!ñ 
	
ð 	�‰× Ñ ØØØØQð	 	!ñ 	
ð 	�‰× Ñ Ø Ø Ø#Ø8ð	 	!ñ 	
ð 	�‰× Ñ Ø ØØ#Ø6Øð 	!ñ 	
ð 	�‰× Ñ ¤×!8Ò!8Ó!:Ô;Ü×1Ò1´*×2HÑ2HÈ$Ï+É+ÓVˆ
à�‰×'Ñ'¨¨:Ô6Ø�‰×'Ñ'¨¨4¯=©=Õ9r*   Úoptionsc                 ój   >• UR                   (       d  UR                  (       a  [        TU ]  U5        g g ©N)ÚoutdatedÚuptodateÚsuperÚhandle_pip_version_check)rH   rL   Ú	__class__s     €r+   rR   Ú$ListCommand.handle_pip_version_checkŠ   s&   ø€ Ø××˜w×/×/Ü‰GÑ,¨WÕ5ð  0r*   Úsessionr   r   c                 ó‚   • SSK Jn  SSKJn  UR	                  X!S9n[        SUR                  S9nUR                  " UUS9$ )z;
Create a package finder appropriate to this list command.
r   )ÚLinkCollectorr   )rL   F)Úallow_yankedÚallow_all_prereleases)Úlink_collectorÚselection_prefs)Úpip._internal.index.collectorrW   Ú"pip._internal.index.package_finderr   Úcreater   Úpre)rH   rL   rU   rW   r   rZ   r[   s          r+   Ú_build_package_finderÚ!ListCommand._build_package_finderŽ   sO   € õ 	@ÝDà&×-Ñ-¨gÐ-ÐGˆô /ØØ")§+¡+ñ
ˆð
 ×#Ò#Ø)Ø+ñ
ð 	
r*   Úargsc                 ó:  • UR                   (       a  UR                  (       a  [        S5      eUR                   (       a  UR                  S:X  a  [        S5      e[        R
                  " U5        [        [        5      nUR                  (       a"  UR                  S UR                   5       5        [        UR                  5      R                  UR                  UR                  UR                  UR                   US9 Vs/ s H  n[#        SU5      PM     nnUR$                  (       a  U R'                  XQ5      nUR                   (       a  U R)                  XQ5      nO"UR                  (       a  U R+                  XQ5      nU R-                  XQ5        [.        $ s  snf )Nz5Options --outdated and --uptodate cannot be combined.r:   z?List format 'freeze' cannot be used with the --outdated option.c              3   ó8   #   • U  H  n[        U5      v •  M     g 7frN   r   )Ú.0Úns     r+   Ú	<genexpr>Ú"ListCommand.run.<locals>.<genexpr>²   s   é € ÐGÒ6F°Ô)¨!×,Ð,Ò6Fùó   ‚)Ú
local_onlyÚ	user_onlyÚeditables_onlyÚinclude_editablesÚskipr   )rO   rP   r   r8   r   Úcheck_list_path_optionÚsetr   ÚexcludesÚupdater   ÚpathÚiter_installed_distributionsÚlocalr5   Úeditabler?   r   r=   Úget_not_requiredÚget_outdatedÚget_uptodateÚoutput_package_listingr   )rH   rL   rb   rn   ÚdÚpackagess         r+   ÚrunÚListCommand.run¥   sP  € Ø×× × 0× 0ÜÐVÓWÐWà×× × 3Ñ 3°xÓ ?ÜØQóð ô 	×)Ò)¨'Ô2ä”;ÓˆØ××Ø�K‰KÑG°g×6FÒ6FÓGÔGô % W§\¡\Ó2×OÑOØ"Ÿ=™=Ø!Ÿ,™,Ø&×/Ñ/Ø")×":Ñ":Øð Pñ ó	%
ò�ô Ð&¨Ö*ñð 	ð 	%
ð ××Ø×,Ñ,¨XÓ?ˆHà××Ø×(Ñ(¨Ó;‰HØ××Ø×(Ñ(¨Ó;ˆHà×#Ñ# HÔ6Üˆùò1	%
s   ÄFr|   Ú_ProcessedDistsc                 óˆ   • U R                  X5       Vs/ s H!  nUR                  UR                  :”  d  M  UPM#     sn$ s  snf rN   ©Úiter_packages_latest_infosr   Úversion©rH   r|   rL   Údists       r+   rx   ÚListCommand.get_outdatedÎ   sF   € ð
 ×7Ñ7¸ÔJó
âJ�Ø×"Ñ" T§\¡\Ñ1÷ ÙJñ
ð 	
ùò 
ó   ”?¶?c                 óˆ   • U R                  X5       Vs/ s H!  nUR                  UR                  :X  d  M  UPM#     sn$ s  snf rN   r�   r„   s       r+   ry   ÚListCommand.get_uptodate×   sF   € ð
 ×7Ñ7¸ÔJó
âJ�Ø×"Ñ" d§l¡lÑ2÷ ÙJñ
ð 	
ùò 
r‡   c                 ó  • U VVs1 s H9  nUR                  5       =(       d    S  H  n[        UR                  5      iM     M;     nnn[        U Vs1 s H  ofR                  U;  d  M  UiM     sn5      $ s  snnf s  snf )Nr!   )Úiter_dependenciesr   ÚnameÚlistÚcanonical_name)rH   r|   rL   r…   ÚdepÚdep_keysÚpkgs          r+   rw   ÚListCommand.get_not_requiredà   s}   € ñ
 !ô
â �Ø×.Ñ.Ó0×6°BÓ6�ô ˜cŸh™hÖ'á6ñ (Ù ð 	ñ 
ô ¡HÓS¢H˜S×0BÑ0BÈ(Ñ0R—S¡HÑSÓTÐTùó
ùò Ts   †A A6ÁA<Á)A<)r   NNc              #   óè   ^^#   • U R                  T5       nU R                  TU5      mSSS[        S   4UU4S jjn[        XA5       H  nUc  M  Uv •  M     S S S 5        g ! , (       d  f       g = f7f)Nr…   r   r/   c                 ó”  >• TR                  U R                  5      nTR                  (       d/  U Vs/ s H"  nUR                  R                  (       a  M   UPM$     nnTR                  U R                  S9nUR                  U5      nUc  g UR                  nUR                  R                  (       a  SnOSnXPl	        X`l
        U $ s  snf )N)Úproject_nameÚwheelÚsdist)Úfind_all_candidatesrŽ   r_   rƒ   Úis_prereleaseÚmake_candidate_evaluatorÚsort_best_candidateÚlinkÚis_wheelr   r    )	r…   Úall_candidatesÚ	candidateÚ	evaluatorÚbest_candidateÚremote_versionÚtypÚfinderrL   s	          €€r+   Úlatest_infoÚ;ListCommand.iter_packages_latest_infos.<locals>.latest_infoô   sÈ   ø€ ð "(×!;Ñ!;¸D×<OÑ<OÓ!P�Ø—{—{ñ *8ó&â)7˜IØ(×0Ñ0×>Õ>÷ "Ù)7ð #ð &ð #×;Ñ;Ø!%×!4Ñ!4ð <ð �	ð "+×!>Ñ!>¸~Ó!N�Ø!Ñ)Øà!/×!7Ñ!7�Ø!×&Ñ&×/×/Ø!‘Cà!�CØ&4Ô#Ø'*Ô$Ø�ùò)&s   ²CÁC)Ú_build_sessionr`   r   Úmap)rH   r|   rL   rU   r¥   r…   r¤   s     `   @r+   r‚   Ú&ListCommand.iter_packages_latest_infosî   sq   ùé € ð × Ñ  Ô)¨WØ×/Ñ/°¸ÓAˆFðØ+ðäÐ/Ñ0÷ð ô8 ˜KÖ2�ØÓ#Ø”Jñ 3÷? *×)Ö)üs"   „A2–6A!ÁA!Á	A2Á!
A/Á+A2c                 óÂ  • [        US S9nUR                  S:X  a&  U(       a  [        X5      u  p4U R                  X45        g UR                  S:X  ai  U Hb  nUR                  S:¼  a.  [        SUR                  UR                  UR                  5        MA  [        SUR                  UR                  5        Md     g UR                  S:X  a  [        [        X5      5        g g )	Nc                 ó   • U R                   $ rN   )rŽ   )r…   s    r+   Ú<lambda>Ú4ListCommand.output_package_listing.<locals>.<lambda>  s
   € ˜T×0Ò0r*   )Úkeyr9   r:   é   z%s==%s (%s)z%s==%sr;   )
Úsortedr8   Úformat_for_columnsÚoutput_package_listing_columnsÚverboser   Úraw_namerƒ   ÚlocationÚformat_for_json)rH   r|   rL   ÚdataÚheaderr…   s         r+   rz   Ú"ListCommand.output_package_listing  s¹   € ô ØÙ0ñ
ˆð ×Ñ )Ó+¶Ü-¨hÓ@‰LˆDØ×/Ñ/°Õ=Ø× Ñ  HÓ,Û �Ø—?‘? aÓ'Ü Ø% t§}¡}°d·l±lÀDÇMÁMöô ! ¨4¯=©=¸$¿,¹,ÖGò !ð × Ñ  FÓ*Üœ¨Ó;Õ<ð +r*   r·   r¸   c                 óö   • [        U5      S:”  a  UR                  SU5        [        U5      u  p4[        U5      S:”  a(  UR                  SSR                  S U 5       5      5        U H  n[	        U5        M     g )Nr   r¯   Ú c              3   ó,   #   • U  H
  nS U-  v •  M     g7f)Ú-Nr!   ©re   Úxs     r+   rg   Ú=ListCommand.output_package_listing_columns.<locals>.<genexpr>4  s   é € Ð*BºE°q¨3°®7ºEùs   ‚)ÚlenÚinsertr   Újoinr   )rH   r·   r¸   Úpkg_stringsÚsizesÚvals         r+   r²   Ú*ListCommand.output_package_listing_columns)  sg   € ô ˆt‹9�q‹=Ø�K‰K˜˜6Ô"ä% d›^Ñˆô ˆt‹9�q‹=Ø×Ñ˜q #§(¡(Ñ*B¹EÓ*BÓ"BÔCãˆCÜ˜Öò r*   r!   )r/   N)r"   r#   r$   r%   r&   Úignore_require_venvÚusagerJ   r   rR   r`   r   r(   Úintr}   rx   ry   rw   r   r‚   rz   r²   r)   Ú__classcell__)rS   s   @r+   r-   r-   '   s7  ø† ñð Ðð€EôV:ðp6°ð 6¸4÷ 6ð
Øð
Ø(4ð
à	ô
ð.'˜6ð '¨¨c©ð '°sô 'ðR
Ø)ð
Ø4:ð
à	ô
ð
Ø)ð
Ø4:ð
à	ô
ðUØ)ðUØ4:ðUà	ôUð$Ø)ð$Ø4:ð$à	Ð4Ñ	5ô$ðL=Ø)ð=Ø4:ð=à	ô=ð*Ø˜˜c™‘OðØ-1°#©Yðà	÷ò r*   r-   Úpkgsr   rL   r/   c                 óJ  • SS/nUR                   nU(       a  UR                  SS/5        S[        S[        [           4S jnU  Vs/ s H
  oT" U5      PM     nn[        U5      nU(       a  UR                  S5        UR                  S	:¼  a  UR                  S
5        UR                  S	:¼  a  UR                  S5        [        S U  5       5      nU(       a  UR                  S5        / n	[        U 5       GH"  u  p«UR                  UR                  /nU(       a?  UR                  [	        UR                  5      5        UR                  UR                  5        U(       a  UR                  Xj   =(       d    S5        U(       a$  UR                  UR                  =(       d    S5        UR                  S	:¼  a$  UR                  UR                  =(       d    S5        UR                  S	:¼  a  UR                  UR                  5        U	R                  U5        GM%     X’4$ s  snf )zS
Convert the package data into something usable
by output_package_listing_columns.
ÚPackager   ÚLatestÚTyper…   r/   c                 ó–   •  U R                  S5      n[        5       R                  U5      R	                  S5      $ ! [         a     g f = f)NÚWHEELÚBuild)Ú	read_textÚFileNotFoundErrorr   ÚparsestrÚget)r…   Ú
wheel_files     r+   Úwheel_build_tagÚ+format_for_columns.<locals>.wheel_build_tagG  sI   € ð	ØŸ™¨Ó0ˆJô ‹x× Ñ  Ó,×0Ñ0°Ó9Ð9øô !ó 	Ùð	ús   ‚; »
AÁArÓ   r¯   ÚLocationÚ	Installerc              3   ó8   #   • U  H  oR                   v •  M     g 7frN   )rv   r¾   s     r+   rg   Ú%format_for_columns.<locals>.<genexpr>X  s   é € Ð1ªD qŸ
ž
ªDùri   zEditable project locationÚ )rO   Úextendr   r   r(   ÚanyÚappendr³   Ú	enumerater´   Úraw_versionr   r    Úeditable_project_locationrµ   Ú	installer)rÌ   rL   r¸   Úrunning_outdatedrÙ   ÚpÚ
build_tagsÚhas_build_tagsÚhas_editablesr·   ÚiÚprojÚrows                r+   r±   r±   :  s©  € ð ˜Ð#€Fà×'Ñ'ÐÞØ�‰�x Ð(Ô)ð:Ô.ð :´8¼C±=ô :ñ /3Ó3ªd¨�/ !Ö$©d€JÐ3Ü˜“_€NÞØ�‰�gÔà‡�˜!ÓØ�‰�jÔ!Ø‡�˜!ÓØ�‰�kÔ"äÑ1©DÓ1Ó1€MÞØ�‰Ð1Ô2à€DÜ˜T—?‰ˆð �}‰}˜d×.Ñ.Ð/ˆæØ�J‰J”s˜4×.Ñ.Ó/Ô0Ø�J‰J�t×+Ñ+Ô,æØ�J‰J�z‘}×*¨Ô+æØ�J‰J�t×5Ñ5×;¸Ô<à�?‰?˜aÓØ�J‰J�t—}‘}×*¨Ô+Ø�?‰?˜aÓØ�J‰J�t—~‘~Ô&à�‰�C×ñ) #ð, ˆ<ÐùòK 4s   ÁH r|   c                 ó¶  • / nU  H¼  nUR                   [        UR                  5      S.nUR                  S:¼  a'  UR                  =(       d    SUS'   UR
                  US'   UR                  (       a'  [        UR                  5      US'   UR                  US'   UR                  nU(       a  XTS'   UR                  U5        M¾     [        R                  " U5      $ )	N)rŒ   rƒ   r¯   rß   rµ   ræ   r   r    rå   )r´   r(   rƒ   r³   rµ   ræ   rO   r   r    rå   râ   r;   Údumps)r|   rL   r·   r…   Úinforå   s         r+   r¶   r¶   v  s¿   € Ø€DÛˆà—M‘MÜ˜4Ÿ<™<Ó(ñ
ˆð �?‰?˜aÓØ#Ÿ}™}×2°ˆD�ÑØ $§¡ˆD�ÑØ××Ü%(¨×)<Ñ)<Ó%=ˆDÐ!Ñ"Ø&*×&:Ñ&:ˆDÐ"Ñ#Ø$(×$BÑ$BÐ!Þ$Ø0IÐ,Ñ-Ø�‰�DÖñ ô �:Š:�dÓÐr*   )1r;   ÚloggingÚemail.parserr   Úoptparser   Útypingr   r   r   r   r	   r
   r   Úpip._vendor.packaging.utilsr   Úpip._vendor.packaging.versionr   Úpip._internal.clir   Úpip._internal.cli.index_commandr   Úpip._internal.cli.status_codesr   Úpip._internal.exceptionsr   Úpip._internal.metadatar   r   Ú$pip._internal.models.selection_prefsr   Úpip._internal.utils.compatr   Úpip._internal.utils.miscr   r   r]   r   Úpip._internal.network.sessionr   r   r   Ú	getLoggerr"   Úloggerr-   r(   r±   r¶   r!   r*   r+   Ú<module>r     sÌ   ðÛ Û Ý Ý ß R× RÑ Rå 9Ý 1å (Ý =Ý 2Ý 1ß DÝ EÝ 2ß ;æÝ@Ý8ôÐ.ô ð Ð2Ñ3€Oð 
×	Ò	˜8Ó	$€ôPÐ#ô Pðf9Ø
ð9Ø&,ð9à
ˆ4��S‘	‰?˜D ™IÐ%Ñ&ô9ðxÐ/ð ¸&ð ÀSõ r*   