ó
    Þ j_  ã                   ó¸   • S SK r S SKJrJrJrJrJr  S SKJr  S SK	J
r
  S SKJr  S SKJr  S SKJr  \(       a  S SKJr  \ R&                  " \5      r " S	 S
\
5      rg)é    N)ÚTYPE_CHECKINGÚIterableÚOptionalÚSetÚTuple)ÚBuildEnvironment)ÚAbstractDistribution)ÚInstallationError)ÚBaseDistribution)Úrunner_with_spinner_message)ÚPackageFinderc                   óØ   • \ rS rSrSr\S\\   4S j5       rS\	4S jr
SSS\S	\SS
4S jrSS jrS\\   4S jrS\\   4S jrSS jrS\S\\\\4      SS
4S jrS\\   SS
4S jrSrg
)ÚSourceDistributioné   z±Represents a source distribution.

The preparation step for these needs metadata for the packages to be
generated, either using PEP 517 or using the legacy `setup.py egg_info`.
Úreturnc                 ó|   • U R                   R                  (       d   eU R                   R                  R                  $ )z/Identify this requirement uniquely by its link.)ÚreqÚlinkÚurl_without_fragment©Úselfs    Ú[/var/www/html/gaurav/venv/lib/python3.13/site-packages/pip/_internal/distributions/sdist.pyÚbuild_tracker_idÚ#SourceDistribution.build_tracker_id   s(   € ð �x‰x�}�}Ðˆ}Ø�x‰x�}‰}×1Ñ1Ð1ó    c                 ó6   • U R                   R                  5       $ )N)r   Úget_distr   s    r   Úget_metadata_distributionÚ,SourceDistribution.get_metadata_distribution   s   € Ø�x‰x× Ñ Ó"Ð"r   Úfinderr   Úbuild_isolationÚcheck_build_depsNc                 ób  • U R                   R                  5         U R                   R                  =(       a    UnU(       a<  U R                  U5        U R                   R	                  5         U R                  U5        U R                   R                  =(       a    UnU(       as  U R                   R                  nUc   eU R                   R                  R                  U5      u  pxU(       a  U R                  SU5        U(       a  U R                  U5        U R                   R                  5         g )Núthe backend dependencies)r   Úload_pyproject_tomlÚ
use_pep517Ú_prepare_build_backendÚisolated_editable_sanity_checkÚ_install_build_reqsÚpyproject_requiresÚ	build_envÚcheck_requirementsÚ_raise_conflictsÚ_raise_missing_reqsÚprepare_metadata)	r   r    r!   r"   Úshould_isolateÚshould_check_depsr*   ÚconflictingÚmissings	            r   Úprepare_distribution_metadataÚ0SourceDistribution.prepare_distribution_metadata    sé   € ð 	�‰×$Ñ$Ô&ð Ÿ™×,Ñ,×@°ˆÞð ×'Ñ'¨Ô/ð �H‰H×3Ñ3Ô5à×$Ñ$ VÔ,à ŸH™H×/Ñ/×DÐ4DÐÞØ!%§¡×!<Ñ!<ÐØ%Ñ1Ð1Ð1Ø#'§8¡8×#5Ñ#5×#HÑ#HØ"ó$Ñ ˆKö Ø×%Ñ%Ð&@À+ÔNÞØ×(Ñ(¨Ô1Ø�‰×!Ñ!Õ#r   c                 ó&  • U R                   R                  nUc   e[        5       U R                   l        U R                   R                  R	                  XSSS9  U R                   R                  R                  U R                   R                  5      u  p4U(       a  U R                  SU5        U(       a]  [        R                  SU R                   5        [        R                  SSR                  [        [        [        U5      5      5      5        g g )NÚoverlayzbuild dependencies©Úkindz"PEP 517/518 supported requirementsz4Missing build requirements in pyproject.toml for %s.z`The project does not specify a build backend, and pip cannot fall back to setuptools without %s.z and )r   r*   r   r+   Úinstall_requirementsr,   Úrequirements_to_checkr-   ÚloggerÚwarningÚjoinÚmapÚreprÚsorted)r   r    r*   r2   r3   s        r   r'   Ú)SourceDistribution._prepare_build_backendG   sß   € ð "ŸX™X×8Ñ8ÐØ!Ñ-Ð-Ð-ä-Ó/ˆ�‰ÔØ�‰×Ñ×/Ñ/Ø¨	Ð8Lð 	0ñ 	
ð  $Ÿx™x×1Ñ1×DÑDØ�H‰H×*Ñ*ó 
Ñˆö Ø×!Ñ!Ð"FÈÔTÞÜ�N‰NØFØ—‘ôô �N‰NðAà—‘œS¤¤v¨g£Ó7Ó8õð r   c                 ó<  • U R                   R                     [        S5      nU R                   R                  nUc   eUR	                  U5         UR                  5       sS S S 5        sS S S 5        $ ! , (       d  f       O= f S S S 5        g ! , (       d  f       g = f)Nz#Getting requirements to build wheel)r   r+   r   Úpep517_backendÚsubprocess_runnerÚget_requires_for_build_wheel©r   ÚrunnerÚbackends      r   Ú_get_build_requires_wheelÚ,SourceDistribution._get_build_requires_wheela   sw   € Ø�X‰X×ÓÜ0Ð1VÓWˆFØ—h‘h×-Ñ-ˆGØÑ&Ð&Ð&Ø×*Ñ*¨6Õ2Ø×;Ñ;Ó=÷ 3Ð2÷	  Ñ÷ 3Õ2úÐ2÷	  ×Öúó#   —8BÁA2Á	BÁ2
B 	Á<BÂ
Bc                 ó<  • U R                   R                     [        S5      nU R                   R                  nUc   eUR	                  U5         UR                  5       sS S S 5        sS S S 5        $ ! , (       d  f       O= f S S S 5        g ! , (       d  f       g = f)Nz&Getting requirements to build editable)r   r+   r   rD   rE   Úget_requires_for_build_editablerG   s      r   Ú_get_build_requires_editableÚ/SourceDistribution._get_build_requires_editablei   s{   € Ø�X‰X×ÓÜ0Ø8óˆFð —h‘h×-Ñ-ˆGØÑ&Ð&Ð&Ø×*Ñ*¨6Õ2Ø×>Ñ>Ó@÷ 3Ð2÷  Ñ÷ 3Õ2úÐ2÷  ×ÖúrL   c                 ó²  • U R                   R                  (       aG  U R                   R                  (       a,  U R                   R                  (       a  U R	                  5       nOU R                  5       nU R                   R                  R                  U5      u  p4U(       a  U R                  SU5        U R                   R                  R                  XSSS9  g )Nr$   Únormalzbackend dependenciesr8   )
r   ÚeditableÚpermit_editable_wheelsÚsupports_pyproject_editablerO   rJ   r+   r,   r-   r:   )r   r    Ú
build_reqsr2   r3   s        r   r)   Ú&SourceDistribution._install_build_reqss   s�   € ð
 �H‰H××Ø—‘×/×/Ø—‘×4×4à×:Ñ:Ó<‰Jà×7Ñ7Ó9ˆJØ#Ÿx™x×1Ñ1×DÑDÀZÓPÑˆÞØ×!Ñ!Ð"<¸kÔJØ�‰×Ñ×/Ñ/Ø˜XÐ,Bð 	0ò 	
r   Úconflicting_withÚconflicting_reqsc           
      ó�   • SnUR                  U R                  USR                  S [        U5       5       5      S9n[	        U5      e)NzZSome build dependencies for {requirement} conflict with {conflicting_with}: {description}.ú, c              3   ó2   #   • U H  u  pU S U 3v •  M     g7f)z is incompatible with N© )Ú.0Ú	installedÚwanteds      r   Ú	<genexpr>Ú6SourceDistribution._raise_conflicts.<locals>.<genexpr>�   s&   é € ð "á)AÑ%�Ið �+Ð3°F°8Õ<Ú)Aùs   ‚)ÚrequirementrX   Údescription)Úformatr   r>   rA   r
   )r   rX   rY   Úformat_stringÚerror_messages        r   r-   Ú#SourceDistribution._raise_conflicts†   sY   € ð?ð 	ð &×,Ñ,ØŸ™Ø-ØŸ	™	ñ "ä)/Ð0@Ô)Aó"ó ð -ð 
ˆô   Ó.Ð.r   r3   c                 óœ   • SnUR                  U R                  SR                  [        [        [        U5      5      5      S9n[        U5      e)NzASome build dependencies for {requirement} are missing: {missing}.r[   )rc   r3   )re   r   r>   r?   r@   rA   r
   )r   r3   rf   rg   s       r   r.   Ú&SourceDistribution._raise_missing_reqs—   sK   € àOð 	ð &×,Ñ,ØŸ™¨$¯)©)´C¼¼fÀW»oÓ4NÓ*Oð -ð 
ˆô   Ó.Ð.r   r]   )r    r   r   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__Úpropertyr   Ústrr   r   r   Úboolr4   r'   r   rJ   rO   r)   r   r   r-   r.   Ú__static_attributes__r]   r   r   r   r      sÌ   † ñð ð2 (¨3¡-ó 2ó ð2ð
#Ð+;ô #ð%$àð%$ð ð%$ð ð	%$ð
 
ô%$ôNð4>¨8°C©=ô >ðA¨h°s©mô Aô
ð&/Ø #ð/Ø7:¸5ÀÀcÀ¹?Ñ7Kð/à	ô/ð"/¨3¨s©8ð /¸÷ /r   r   )ÚloggingÚtypingr   r   r   r   r   Úpip._internal.build_envr   Ú pip._internal.distributions.baser	   Úpip._internal.exceptionsr
   Úpip._internal.metadatar   Úpip._internal.utils.subprocessr   Ú"pip._internal.index.package_finderr   Ú	getLoggerrk   r<   r   r]   r   r   Ú<module>r}      sB   ðÛ ß @Õ @å 4Ý AÝ 6Ý 3Ý FæÝ@à	×	Ò	˜8Ó	$€ôN/Ð-õ N/r   