§
    
Á³g  ã                   ó*  — d Z ddlZddlmZmZmZmZmZmZm	Z	 ddl
mZ ddlmZmZ ddlmZ ddlmZ ddlmZ dd	lmZ  ej        e¦  «        Z G d
„ de¦  «        Zeeef         Ze	eef         Ze	eeef         Zeeee         f         Zeeee         f         Ze	eef         Z e	ee f         Z!de	ee"f         fd„Z#	 ddedeee$ge"f                  de fd„Z%dee         de!fd„Z&dee         dedee         fd„Z'dee         dedee         fd„Z(dS )z'Validation of dependencies of packages
é    N)ÚCallableÚDictÚListÚ
NamedTupleÚOptionalÚSetÚTuple)ÚRequirement)ÚNormalizedNameÚcanonicalize_name)Ú)make_distribution_for_install_requirement)Úget_default_environment)ÚDistributionVersion)ÚInstallRequirementc                   ó0   — e Zd ZU eed<   ee         ed<   dS )ÚPackageDetailsÚversionÚdependenciesN)Ú__name__Ú
__module__Ú__qualname__r   Ú__annotations__r   r
   © ó    ú\/var/www/html/mpstechhub/venv/lib/python3.11/site-packages/pip/_internal/operations/check.pyr   r      s/   € € € € € € Ø Ð Ð Ñ Ø�{Ô#Ð#Ð#Ñ#Ð#Ð#r   r   Úreturnc                  ó\  — i } d}t          ¦   «         }|                     dd¬¦  «        D ]}|j        }	 t          |                     ¦   «         ¦  «        }t          |j        |¦  «        | |<   ŒD# t          t          f$ r(}t           
                    d||¦  «         d}Y d}~Œxd}~ww xY w| |fS )z3Converts a list of distributions into a PackageSet.Fr   )Ú
local_onlyÚskipz%Error parsing requirements for %s: %sTN)r   Úiter_installed_distributionsÚcanonical_nameÚlistÚiter_dependenciesr   r   ÚOSErrorÚ
ValueErrorÚloggerÚwarning)Úpackage_setÚproblemsÚenvÚdistÚnamer   Úes          r   Ú!create_package_set_from_installedr.   "   sÏ   € à€KØ€HÝ
!Ñ
#Ô
#€CØ×0Ò0¸EÈÐ0ÑKÔKð ð ˆØÔ"ˆð	Ý × 6Ò 6Ñ 8Ô 8Ñ9Ô9ˆLÝ .¨t¬|¸\Ñ JÔ JˆK˜ÑÐøÝ�Ð$ð 	ð 	ð 	å�NŠNÐBÀDÈ!ÑLÔLÐLØˆHˆHˆHˆHˆHˆHøøøøð	øøøð ˜Ð Ð s   ´9A.Á.B'Á?B"Â"B'r(   Úshould_ignorec                 óN  — i }i }|                       ¦   «         D �]\  }}t          ¦   «         }t          ¦   «         }|r ||¦  «        rŒ0|j        D ]š}t          |j        ¦  «        }	|	| vr?d}
|j        �|j                             ddi¦  «        }
|
r|                     |	|f¦  «         ŒY| |	         j        }|j	         
                    |d¬¦  «        s|                     |	||f¦  «         Œ›|rt          |t          ¬¦  «        ||<   |rt          |t          ¬¦  «        ||<   �Œ
||fS )z—Check if a package set is consistent

    If should_ignore is passed, it should be a callable that takes a
    package name and returns a boolean.
    TNÚextraÚ )Úprereleases)Úkey)ÚitemsÚsetr   r   r,   ÚmarkerÚevaluateÚaddr   Ú	specifierÚcontainsÚsortedÚstr)r(   r/   ÚmissingÚconflictingÚpackage_nameÚpackage_detailÚmissing_depsÚconflicting_depsÚreqr,   Úmissedr   s               r   Úcheck_package_setrF   3   sk  € ð €GØ€Kà(3×(9Ò(9Ñ(;Ô(;ð Jñ JÑ$ˆ�nå%(¡U¤UˆÝ-0©U¬UÐàð 	˜]˜]¨<Ñ8Ô8ð 	Øà!Ô.ð 	;ð 	;ˆCÝ$ S¤XÑ.Ô.ˆDð ˜;Ð&Ð&Ø�Ø”:Ð)Ø œZ×0Ò0°'¸2°Ñ?Ô?�FØð 2Ø ×$Ò$ d¨C [Ñ1Ô1Ð1Øð " $Ô'Ô/ˆGØ”=×)Ò)¨'¸tÐ)ÑDÔDð ;Ø ×$Ò$ d¨G°SÐ%9Ñ:Ô:Ð:øàð 	BÝ$*¨<½SÐ$AÑ$AÔ$AˆG�LÑ!Øð 	JÝ(.Ð/?ÅSÐ(IÑ(IÔ(IˆK˜Ñ%ùà�KÐÐr   Ú
to_installc                 ó’   ‡— t          ¦   «         \  }}t          | |¦  «        }t          ||¦  «        Š|t          |ˆfd„¬¦  «        fS )zeFor checking if the dependency graph would be consistent after     installing given requirements
    c                 ó   •— | ‰vS ©Nr   )r,   Ú	whitelists    €r   ú<lambda>z)check_install_conflicts.<locals>.<lambda>o   s   ø€ °DÀ	Ð4I€ r   )r/   )r.   Ú_simulate_installation_ofÚ_create_whitelistrF   )rG   r(   Ú_Úwould_be_installedrK   s       @r   Úcheck_install_conflictsrQ   `   sf   ø€ õ
 7Ñ8Ô8�N€K�å2°:¸{ÑKÔKÐõ "Ð"4°kÑBÔB€Ið 	ÝØÐ'IÐ'IÐ'IÐ'Ið	
ñ 	
ô 	
ðð r   c                 ó  — t          ¦   «         }| D ]x}t          |¦  «        }|                     ¦   «         }|j        }t	          |j        t          |                     ¦   «         ¦  «        ¦  «        ||<   |                     |¦  «         Œy|S )z=Computes the version of packages after installing to_install.)	r6   r   Úget_metadata_distributionr!   r   r   r"   r#   r9   )rG   r(   Ú	installedÚinst_reqÚabstract_distr+   r,   s          r   rM   rM   t   s‰   € õ
 ‘”€Ið ð ð ˆÝAÀ(ÑKÔKˆØ×6Ò6Ñ8Ô8ˆØÔ"ˆÝ*¨4¬<½¸d×>TÒ>TÑ>VÔ>VÑ9WÔ9WÑXÔXˆ�DÑà�Š�dÑÔÐÐàÐr   rP   c                 ó²   — t          | ¦  «        }|D ]D}||v rŒ||         j        D ]/}t          |j        ¦  «        |v r|                     |¦  «          nŒ0ŒE|S rJ   )r6   r   r   r,   r9   )rP   r(   Úpackages_affectedr@   rD   s        r   rN   rN   ‡   s†   € õ Ð.Ñ/Ô/Ðà#ð ð ˆØÐ,Ð,Ð,Øà˜|Ô,Ô9ð 	ð 	ˆCÝ  ¤Ñ*Ô*Ð.?Ð?Ð?Ø!×%Ò% lÑ3Ô3Ð3Ø�ð @øð Ðr   rJ   ))Ú__doc__ÚloggingÚtypingr   r   r   r   r   r   r	   Ú"pip._vendor.packaging.requirementsr
   Úpip._vendor.packaging.utilsr   r   Úpip._internal.distributionsr   Úpip._internal.metadatar   Úpip._internal.metadata.baser   Úpip._internal.req.req_installr   Ú	getLoggerr   r&   r   Ú
PackageSetÚMissingÚConflictingÚMissingDictÚConflictingDictÚCheckResultÚConflictDetailsÚboolr.   r=   rF   rQ   rM   rN   r   r   r   ú<module>rk      s‚  ððð ð €€€Ø IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ Ià :Ð :Ð :Ð :Ð :Ð :Ø IÐ IÐ IÐ IÐ IÐ IÐ IÐ Ià QÐ QÐ QÐ QÐ QÐ QØ :Ð :Ð :Ð :Ð :Ð :Ø ;Ð ;Ð ;Ð ;Ð ;Ð ;Ø <Ð <Ð <Ð <Ð <Ð <à	ˆÔ	˜8Ñ	$Ô	$€ð$ð $ð $ð $ð $�Zñ $ô $ð $ð �. .Ð0Ô1€
Ø
� Ð+Ô
,€Ø�NÐ$7¸ÐDÔE€à�> 4¨¤=Ð0Ô1€Ø�~ t¨KÔ'8Ð8Ô9€Ø�K Ð0Ô1€Ø˜
 KÐ/Ô0€ð!¨5°¸TÐ1AÔ+Bð !ð !ð !ð !ð$ OSð* ð * Øð* Ø,4°X¸s¸eÀT¸kÔ5JÔ,Kð* àð* ð * ð * ð * ðZ¨Ð-?Ô(@ð À_ð ð ð ð ð(ØÐ'Ô(ðØ7AðàˆÔðð ð ð ð&Ø˜NÔ+ðØ:DðàˆÔðð ð ð ð ð r   