£Á°èZ¨Ä…–K§‚«“ô4“ÒÙ´dîfUÙÃÅ WKbyÊ¦•êŽ…È®FÒ¿ÊÎóCozá¬S@6{Í:›œêZÌ:Š•_%:¢¾¾~;‘Ã~èŠ©ÊÇí`ÔÑ©úë™µ'5I¿fš×WO%ø9¾«¾DK|€ùÍD”Ýs]nHÕ¶ê×Ó¼ãžªéUWŸÈË%DÒÕ¬ï‘]/Åcx  ‰ï2ß]ä6G[]S£ÔÏ¯rs{úëóµmÒï#UQxo·õÞCe]"±/aÙ&Eã4ú9Jé_ÞåëdãöKë)AÞ                  ¯¹ægƒÛowÐø^d™ý½ßB7áyMä9ÜÖUã
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
<html>
U
    ʗRe                     @   s   d dl mZ d dlmZmZmZmZ d dlmZ d dl	m
Z
 d dlmZ eeedddZeed	d
dZdeee eedddZdS )    )Optional)ArchiveInfo	DirectUrlDirInfoVcsInfo)Link)path_to_url)vcs)
direct_urlnamereturnc                 C   s   |    |d }g }t| jtr>|d| jj| j| jj7 }nHt| jtrl|| j7 }| jj	r|
| jj	 nt| jts|t|| j7 }| jr|
d| j  |r|dd| 7 }|S )z0Convert a DirectUrl to a pip requirement string.z @ z{}+{}@{}zsubdirectory=#&)validate
isinstanceinfor   formatr	   url	commit_idr   hashappendr   AssertionErrorsubdirectoryjoin)r
   r   requirement	fragments r   /builddir/build/BUILDROOT/alt-python38-pip-22.2.1-2.el8.x86_64/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/utils/direct_url_helpers.py%direct_url_as_pep440_direct_reference	   s(      

r   )
source_dirr   c                 C   s   t t| tdddS )NT)editable)r   r   )r   r   r   )r   r   r   r   direct_url_for_editable    s    r!   NF)linkr   link_is_in_wheel_cacher   c           
      C   s   | j rlt| j}|st|| j\}}}|r>|s8t|}n|sFt||}t|t	|j
||d| jdS |  rt| jt | jdS d }| j}	|	r|	 d| j }t| jt|d| jdS d S )N)r	   r   requested_revision)r   r   r   =)r   )is_vcsr	   get_backend_for_schemeschemer   get_url_rev_and_authurl_without_fragmentget_revisionr   r   r   subdirectory_fragmentis_existing_dirr   	hash_namer   r   )
r"   r   r#   vcs_backendr   r$   _r   r   r.   r   r   r   direct_url_from_link'   sF    

	r1   )NF)typingr   pip._internal.models.direct_urlr   r   r   r   pip._internal.models.linkr   pip._internal.utils.urlsr   pip._internal.vcsr	   strr   r!   boolr1   r   r   r   r   <module>   s        