§
    u”j‹  ã                   óà   — 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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e¦  «        Z G d„ de¦  «        ZdS )é    N)ÚValues)ÚPath)Útomli_w)Úis_valid_pylock_path)Ú
WheelCache)Ú
cmdoptions)ÚRequirementCommandÚwith_cleanup)ÚSUCCESS)Úget_build_tracker)Ú	getLogger)Úget_pip_version)Ú pylock_from_install_requirements)ÚTempDirectoryc                   óN   — e Zd ZdZdZd	d„Zededee	         de
fd„¦   «         ZdS )
ÚLockCommandaÖ  
    EXPERIMENTAL - Lock packages and their dependencies from:

    - PyPI (and other indexes) using requirement specifiers.
    - VCS project urls.
    - Local project directories.
    - Local or remote source archives.

    pip also supports locking from "requirements files", which provide an easy
    way to specify a whole environment to be installed.

    The generated lock file is only guaranteed to be valid for the current
    python version and platform.
    zô
      %prog [options] [-e] <local project path> ...
      %prog [options] <requirement specifier> [package-index-options] ...
      %prog [options] -r <requirements file> [package-index-options] ...
      %prog [options] <archive url/path> ...ÚreturnNc                 ó\  — | j                              t          j        ddddddd¬¦  «        ¦  «         | j                              t          j        ¦   «         ¦  «         | j                              t          j        ¦   «         ¦  «         | j                              t          j        ¦   «         ¦  «         | j                              t          j        ¦   «         ¦  «         | j                              t          j        ¦   «         ¦  «         | j                              t          j	        ¦   «         ¦  «         | j                              t          j
        ¦   «         ¦  «         | j                              t          j        ¦   «         ¦  «         | j                              t          j        ¦   «         ¦  «         | j                              t          j        ¦   «         ¦  «         | j                              t          j        ¦   «         ¦  «         | j                              t          j        ¦   «         ¦  «         | j                              t          j        ¦   «         ¦  «         | j                              t          j        ¦   «         ¦  «         t          j        t          j        | j        ¦  «        }t          j        t          j        | j        ¦  «        }| j                             d|¦  «         | j                             d|¦  «         | j                             d| j         ¦  «         d S )	Nz--outputz-oÚoutput_fileÚpathzpylock.tomlz7Lock file name (default=pylock.toml). Use - for stdout.)ÚdestÚmetavarÚtypeÚdefaultÚhelpr   )Úcmd_optsÚ
add_optionr   Ú	PipOptionÚrequirementsÚrequirements_from_scriptsÚconstraintsÚbuild_constraintsÚno_depsÚeditableÚsrcÚignore_requires_pythonÚno_build_isolationÚ
use_pep517Úcheck_build_depsÚconfig_settingsÚrequire_hashesÚprogress_barÚmake_option_groupÚindex_groupÚparserÚpackage_selection_groupÚinsert_option_group)ÚselfÚ
index_optsÚselection_optss      új/var/www/finuniver-perm.ru/html/portfolio/venv/lib/python3.11/site-packages/pip/_internal/commands/lock.pyÚadd_optionszLockCommand.add_options0   s‡  € ØŒ× Ò ÝÔ ØØØ"ØØØ%ØNðñ ô ñ
	
ô 
	
ð 
	
ð 	Œ× Ò ¥Ô!8Ñ!:Ô!:Ñ;Ô;Ð;ØŒ× Ò ¥Ô!EÑ!GÔ!GÑHÔHÐHØŒ× Ò ¥Ô!7Ñ!9Ô!9Ñ:Ô:Ð:ØŒ× Ò ¥Ô!=Ñ!?Ô!?Ñ@Ô@Ð@ØŒ× Ò ¥Ô!3Ñ!5Ô!5Ñ6Ô6Ð6àŒ× Ò ¥Ô!4Ñ!6Ô!6Ñ7Ô7Ð7àŒ× Ò ¥¤Ñ!1Ô!1Ñ2Ô2Ð2àŒ× Ò ¥Ô!BÑ!DÔ!DÑEÔEÐEØŒ× Ò ¥Ô!>Ñ!@Ô!@ÑAÔAÐAØŒ× Ò ¥Ô!6Ñ!8Ô!8Ñ9Ô9Ð9ØŒ× Ò ¥Ô!<Ñ!>Ô!>Ñ?Ô?Ð?àŒ× Ò ¥Ô!;Ñ!=Ô!=Ñ>Ô>Ð>àŒ× Ò ¥Ô!:Ñ!<Ô!<Ñ=Ô=Ð=ØŒ× Ò ¥Ô!8Ñ!:Ô!:Ñ;Ô;Ð;åÔ1ÝÔ"ØŒKñ
ô 
ˆ
õ
 $Ô5ÝÔ.ØŒKñ
ô 
ˆð
 	Œ×'Ò'¨¨:Ñ6Ô6Ð6ØŒ×'Ò'¨¨>Ñ:Ô:Ð:ØŒ×'Ò'¨¨4¬=Ñ9Ô9Ð9Ð9Ð9ó    ÚoptionsÚargsc           
      óî  — t                                dt          ¦   «         ¦  «         t                                d¦  «         t	          j        |¦  «         t	          j        |¦  «         |                      |¦  «        }|                      |||j	        ¬¦  «        }|  
                    t          ¦   «         ¦  «        }t          |j         dd¬¦  «        }|                      ||||¦  «        }t          |j        ¦  «        }|D ]	}	d|	_        Œ
|                      |||||d| j        ¬¦  «        }
|                      |
|||dd|j	        d	¬
¦  «        }|                      |¦  «         |                     |d¬¦  «        }|j        dk    rt1          j        ¦   «         }nEt1          |j        ¦  «        }t5          |¦  «        st                                d|¦  «         |j        }t9          |j                             ¦   «         |¬¦  «        }t?          j         | !                    ¦   «         ¦  «        }|j        dk    r tD          j#         $                    |¦  «         n| %                    |d¬¦  «         tL          S )NzUsing %szspip lock is currently an experimental command. It may be removed/changed in a future release without prior warning.)r8   Úsessionr&   ÚinstallT)ÚdeleteÚkindÚglobally_managedF)Útemp_build_dirr8   Úbuild_trackerr;   ÚfinderÚuse_user_siteÚ	verbosityzto-satisfy-only)ÚpreparerrB   r8   Úwheel_cacherC   Úignore_installedr&   Úupgrade_strategy)Úcheck_supported_wheelsú-z!%s is not a valid lock file name.)Úbase_dirzutf-8)Úencoding)'ÚloggerÚverboser   Úwarningr   Úcheck_build_constraintsÚcheck_release_control_exclusiveÚget_default_sessionÚ_build_package_finderr&   Úenter_contextr   r   Úno_cleanÚget_requirementsr   Ú	cache_dirÚpermit_editable_wheelsÚmake_requirement_preparerrD   Úmake_resolverÚtrace_basic_infoÚresolver   r   Úcwdr   Úparentr   r   Úvaluesr   ÚdumpsÚto_dictÚsysÚstdoutÚwriteÚ
write_textr   )r2   r8   r9   r;   rB   rA   Ú	directoryÚreqsrF   ÚreqrE   ÚresolverÚrequirement_setrK   Úoutput_file_pathÚpylockÚpylock_tomls                    r5   ÚrunzLockCommand.run^   s›  € å�Š�z¥?Ñ#4Ô#4Ñ5Ô5Ð5å�Šð%ñ	
ô 	
ð 	
õ 	Ô*¨7Ñ3Ô3Ð3ÝÔ2°7Ñ;Ô;Ð;à×*Ò*¨7Ñ3Ô3ˆà×+Ò+ØØØ#*Ô#Að ,ñ 
ô 
ˆð
 ×*Ò*Õ+<Ñ+>Ô+>Ñ?Ô?ˆå!ØÔ'Ð'ØØ!ð
ñ 
ô 
ˆ	ð ×$Ò$ T¨7°F¸GÑDÔDˆå  Ô!2Ñ3Ô3ˆð
 ð 	.ð 	.ˆCØ)-ˆCÔ&Ð&à×1Ò1Ø$ØØ'ØØØØ”nð 2ñ 
ô 
ˆð ×%Ò%ØØØØ#ØØ!Ø#*Ô#AØ.ð &ñ 	
ô 	
ˆð 	×Ò˜fÑ%Ô%Ð%à"×*Ò*¨4ÈÐ*ÑMÔMˆàÔ #Ò%Ð%Ý”x‘z”zˆHˆHå# GÔ$7Ñ8Ô8ÐÝ'Ð(8Ñ9Ô9ð Ý—’Ø7Ø$ñô ð ð (Ô.ˆHÝ1ØÔ(×/Ò/Ñ1Ô1¸Hð
ñ 
ô 
ˆõ ”m F§N¢NÑ$4Ô$4Ñ5Ô5ˆØÔ #Ò%Ð%ÝŒJ×Ò˜[Ñ)Ô)Ð)Ð)à×'Ò'¨¸gÐ'ÑFÔFÐFåˆr7   )r   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Úusager6   r
   r   ÚlistÚstrÚintrn   © r7   r5   r   r      s|   € € € € € ðð ð0€Eð,:ð ,:ð ,:ð ,:ð\ ðP˜6ð P¨¨c¬ð P°sð Pð Pð Pñ „\ðPð Pð Pr7   r   )rb   Úoptparser   Úpathlibr   Úpip._vendorr   Úpip._vendor.packaging.pylockr   Úpip._internal.cacher   Úpip._internal.clir   Úpip._internal.cli.req_commandr	   r
   Úpip._internal.cli.status_codesr   Ú,pip._internal.operations.build.build_trackerr   Úpip._internal.utils.loggingr   Úpip._internal.utils.miscr   Úpip._internal.utils.pylockr   Úpip._internal.utils.temp_dirr   ro   rM   r   rw   r7   r5   ú<module>r…      sm  ðØ 
€
€
€
Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð à Ð Ð Ð Ð Ð Ø =Ð =Ð =Ð =Ð =Ð =à *Ð *Ð *Ð *Ð *Ð *Ø (Ð (Ð (Ð (Ð (Ð (ðð ð ð ð ð ð ð ð 3Ð 2Ð 2Ð 2Ð 2Ð 2Ø JÐ JÐ JÐ JÐ JÐ JØ 1Ð 1Ð 1Ð 1Ð 1Ð 1ðð ð ð ð ð ð HÐ GÐ GÐ GÐ GÐ GØ 6Ð 6Ð 6Ð 6Ð 6Ð 6à	ˆ�8Ñ	Ô	€ðUð Uð Uð Uð UÐ$ñ Uô Uð Uð Uð Ur7   