oMiCddlmZddlZddlZddlmZddlmZddlmZddl m Z m Z ddl m Z ddlmZmZmZdd lmZdd lmZdd lmZe rdd lmZej4d ZddZddZeGddZeGddZeGddZ eGddZ!eGddZ"eGddZ#eGddZ$y) ) annotationsN)Iterable) dataclass)Path) TYPE_CHECKINGAny)tomli_w) ArchiveInfoDirInfoVcsInfo)Link)InstallRequirement) url_to_path)Selfz^pylock\.([^.]+)\.toml$c~|jdk(xs-ttjt|jS)Nz pylock.toml)nameboolrematchPYLOCK_FILE_NAME_RE)paths f/mnt/ssd/data/python-lab/ObsidianTool/venv/lib/python3.12/site-packages/pip/_internal/models/pylock.pyis_valid_pylock_file_namers+ 99 % Wbhh7JDII.V)WWc`|Dcic]\}}| |jdd|c}}Scc}}w)N_-)replace)datakeyvalues r_toml_dict_factoryr"s/;? UZS%5CTCKKS !5 ( UU Us **c@eZdZUded<ded<ded<ded<ded<y) PackageVcsstrtype str | Noneurlrequested_revision commit_id subdirectoryN__name__ __module__ __qualname____annotations__rrr$r$s I O""Nrr$c,eZdZUded<ded<ded<y)PackageDirectoryr%rz bool | Noneeditabler'r+Nr,r1rrr3r3)s Irr3c,eZdZUded<ded<ded<y)PackageArchiver'r(dict[str, str]hashesr+Nr,r1rrr6r60s O rr6c,eZdZUded<ded<ded<y) PackageSdistr%rr'r(r7r8Nr,r1rrr:r:: I O rr:c,eZdZUded<ded<ded<y) PackageWheelr%rr'r(r7r8Nr,r1rrr=r=Dr;rr=c~eZdZUded<dZded<dZded<dZded <dZd ed <dZd ed <dZ ded<e ddZ y)Packager%rNr'versionzPackageVcs | NonevcszPackageDirectory | None directoryzPackageArchive | NonearchivezPackageSdist | Nonesdistzlist[PackageWheel] | Nonewheelsc|j}|j}|j}|sJ||j}|jrt |j trgt|j j|j|j j|j j|j|_ |St |j trtt!t#|jjj%|j'|j j(r|j j(nd|j|_|St |j t,r]|j j.s t1t3|j|j j.|j|_|St1t7|j8|_t |j t,r|j j.s t1t;|j}|j<r>t?|j@|j|j j.g|_!|StE|j@|j|j j.|_#|St1)Nr)r&r(r)r*r+)rr4r+)r(r8r+)rr(r8)$resolveget_dist download_infocanonical_name is_direct isinstanceinfor r$rAr(r)r*r+r r3rr relative_toas_posixr4rBr r8NotImplementedErrorr6rCr%r@r is_wheelr=filenamerEr:rD)clsireqbase_dirdistrJpackagelinks rfrom_install_requirementz Package.from_install_requirement^sX##%}}** }4../ >>-,,g6(&++//%))'4'9'9'L'L+00::!.!;!;  pcM..8$4[):):;< $X.!)--66&**33!!.!;!; %!`EM.. <$))00-//"0%))(--44!.!;!;#>1*++!$,,/GO-,,k:$))00-//M--.==$!% - 1 1#0#5#5#<#<&GN %1!]])--,1188%GM*++r)rUrrVrreturnr) r-r.r/r0r@rArBrCrDrE classmethodrZr1rrr?r?Ns` IGZ"C !)-I&-%)G ")!%E %(,F %,@@rr?ceZdZUdZded<dZded<ejeZ ded<d d Z e d d Z y )Pylockz1.0r% lock_versionpip created_by)default_factoryz list[Package]packagesc^tjtj|tS)N) dict_factory)r dumps dataclassesasdictr")selfs ras_tomlzPylock.as_tomls}}[//CUVWWrc@|tfd|DdS)Nc3JK|]}tj|ywN)r?rZ).0rUrVs r z3Pylock.from_install_requirements..s&44T8Ds #c|jSrmrG)ps rz2Pylock.from_install_requirements..s affr)r )rc)sorted)rTinstall_requirementsrVs `rfrom_install_requirementsz Pylock.from_install_requirementss, 4%   rN)r[r%)rtzIterable[InstallRequirement]rVrr[r) r-r.r/r_r0rargfieldlistrcrjr\rur1rrr^r^saL# J/k//EHmEX  #?  KO      rr^)rrr[r)rzlist[tuple[str, Any]]r[zdict[str, Any])% __future__rrgrcollections.abcrrpathlibrtypingrr pip._vendorr pip._internal.models.direct_urlr r r pip._internal.models.linkr pip._internal.req.req_installrpip._internal.utils.urlsrtyping_extensionsrcompilerrr"r$r3r6r:r=r?r^r1rrrs" $!%II*<0& bjj!;<XV            PP Pf     r