I iddlZddlmZddlmZddlmZddlmZddl m Z m Z ddl m Z ddlmZmZdd lmZdd lmZdd lmZdd lmZeeZGd de Zy)N)Values)Path) WheelCache) cmdoptions)RequirementCommand with_cleanup)SUCCESS)Pylockis_valid_pylock_file_name)get_build_tracker) getLogger)get_pip_version) TempDirectoryc@eZdZdZdZd dZededee de fdZ y) 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] ... %prog [options] [package-index-options] ... %prog [options] -r [package-index-options] ... %prog [options] ...returnNc H|jjtjddddddd|jjtj|jjtj |jjtj |jjtj|jjtj|jjtj|jjtj|jjtj|jjtj|jjtj|jjtj|jjtj|jjtj |jjtj"|jjtj$|jjtj&|jjtj(tj*tj,|j.}|j.j1d||j.j1d|jy) Nz--outputz-o output_filepathz pylock.tomlz7Lock file name (default=pylock.toml). Use - for stdout.)destmetavartypedefaulthelpr)cmd_opts add_optionr PipOption requirements constraintsbuild_constraintsno_depspreeditablesrcignore_requires_pythonno_build_isolation use_pep517check_build_depsconfig_settings no_binary only_binary prefer_binaryrequire_hashes progress_barmake_option_group index_groupparserinsert_option_group)self index_optss a/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/pip/_internal/commands/lock.py add_optionszLockCommand.add_options-sN    "%N     !8!8!:;   !7!7!9:   !=!=!?@   !3!3!56   !12   !4!4!67   !12   !B!B!DE   !>!>!@A   !6!6!89   !?   !;!;!=>   !5!5!78   !7!7!9:   !9!9!;<   !:!:!<=   !8!8!:;11  " " KK '':6 ''4==9optionsargsc ttjdttjdt j ||j |}|j|||j}|jt}t|j dd}|j||||}t|j}|D] } d| _ |j#|||||d|j$} |j'| |||dd|jd } |j)|| j+|d } |j,d k(rt/j0} nBt/|j,}t3|stjd ||j4} t7j8| j:j=| j?}|j,d k(r%t@jBjE|tHSjG|dtHS)NzUsing %szspip lock is currently an experimental command. It may be removed/changed in a future release without prior warning.)r8sessionr%installT)deletekindglobally_managedF)temp_build_dirr8 build_trackerr;finder use_user_site verbosityzto-satisfy-only)preparerrBr8 wheel_cacherCignore_installedr%upgrade_strategy)check_supported_wheels-z!%s is not a valid lock file name.)base_dirzutf-8)encoding)%loggerverboserwarningrcheck_build_constraintsget_default_session_build_package_finderr% enter_contextr rno_cleanget_requirementsr cache_dirpermit_editable_wheelsmake_requirement_preparerrD make_resolvertrace_basic_inforesolverrcwdr parentr from_install_requirementsrvaluesas_tomlsysstdoutwrite write_textr )r3r8r9r;rBrA directoryreqsrFreqrEresolverrequirement_setrKoutput_file_path pylock_tomls r5runzLockCommand.runXs(z?#45 % **73**73++#*#A#A,  **+<+>? !'''! $$T7FGD !2!23  .C)-C & .11$'nn2 %%#!#*#A#A.&   f%"**4*M   # %xxzH#G$7$78 ,-=>7$(..H66  ( ( / / 1H ')    # % JJ  [ )  ' ' g ' Fr7)rN) __name__ __module__ __qualname____doc__usager6rrliststrintrlr7r5rrsF  0E ):VN6NcNsNNr7r)raoptparserpathlibrpip._internal.cacherpip._internal.clirpip._internal.cli.req_commandrrpip._internal.cli.status_codesr pip._internal.models.pylockr r ,pip._internal.operations.build.build_trackerr pip._internal.utils.loggingr pip._internal.utils.miscrpip._internal.utils.temp_dirrrmrMrrur7r5rsJ *(3IJ17 8 P$Pr7