zmc
2023-12-22 9fdbf60165db0400c2e8e6be2dc6e88138ac719a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
U
H=®dã@sºddlZddlmZmZmZmZmZmZddlm    Z    ddl
m Z zddl m Z Wnek
rheZ YnXe    r’ddlmZddlmZddlmZe e¡Zd    d
„Zdd d „Zdd„ZdS)éN)ÚDIRECT_URL_METADATA_NAMEÚ ArchiveInfoÚ    DirectUrlÚDirectUrlValidationErrorÚDirInfoÚVcsInfo)ÚMYPY_CHECK_RUNNING)Úvcs)ÚJSONDecodeError)ÚOptional)ÚLink)Ú DistributioncCsÂ| ¡|d}g}t|jtƒr>|d |jj|j|jj¡7}nTt|jtƒrl||j7}|jj    r’| 
|jj    ¡n&t|jt ƒs|t ‚|jj rˆt ‚||j7}|jr¨| 
d|j¡|r¾|dd |¡7}|S)z0Convert a DirectUrl to a pip requirement string.z @ z{}+{}@{}z subdirectory=ú#ú&)ÚvalidateÚ
isinstanceÚinforÚformatr    ÚurlÚ    commit_idrÚhashÚappendrÚAssertionErrorÚeditableÚ subdirectoryÚjoin)Ú
direct_urlÚnameÚ requirementÚ    fragments©r ú]D:\z\workplace\VsCode\pyvenv\venv\Lib\site-packages\pip/_internal/utils/direct_url_helpers.pyÚ%direct_url_as_pep440_direct_references* ÿ 
 
r"Fc
CsÀ|jrlt |j¡}|st‚| |j¡\}}}|r>|s8t‚|}n|sFt‚| |¡}t|t    |j
||d|j dS|  ¡rˆt|jt ƒ|j dSd}|j}    |    r¤d |    |j¡}t|jt|d|j dSdS)N)r    rÚrequested_revision)rrrz{}={})r)Úis_vcsr    Úget_backend_for_schemeÚschemerÚget_url_rev_and_authÚurl_without_fragmentÚ get_revisionrrrÚsubdirectory_fragmentÚis_existing_dirrÚ    hash_namerrr)
ÚlinkÚ
source_dirÚlink_is_in_wheel_cacheÚ vcs_backendrr#Ú_rrr,r r r!Údirect_url_from_link:sD 
ÿ
ýù    ýýr2c
Csf| t¡sdSzt | t¡¡WStttfk
r`}zt     dt|j
|¡WY¢dSd}~XYnXdS)zªObtain a DirectUrl from a pkg_resource.Distribution.
 
    Returns None if the distribution has no `direct_url.json` metadata,
    or if `direct_url.json` is invalid.
    NzError parsing %s for %s: %s) Ú has_metadatarrÚ    from_jsonÚ get_metadatarr
ÚUnicodeDecodeErrorÚloggerÚwarningÚ project_name)ÚdistÚer r r!Údist_get_direct_urlls 
ýür<)NF)ÚloggingÚpip._internal.models.direct_urlrrrrrrÚpip._internal.utils.typingrÚpip._internal.vcsr    Újsonr
Ú ImportErrorÚ
ValueErrorÚtypingr Úpip._internal.models.linkr Zpip._vendor.pkg_resourcesr Ú    getLoggerÚ__name__r7r"r2r<r r r r!Ú<module>s   
 
 
2