Ë
    ��hå7  ã                   óH  — U d dl Z d dlZd dlZd dlZd dlZd dlZd dlmZmZ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 dd	lmZmZmZmZmZmZ g d
¢Z ej:                  e«      Z e edd«      Z!e"e#d<   ejH                  dk\  Z%de&fd„Z' e'«       Z(e(sddlm)Z) e%re(sejT                  Z+nejX                  Z+de&fd„Z-dee"e"f   de&fd„Z. e j^                  d¬«      de&fd„«       Z0 e j^                  d¬«      de&fd„«       Z1 e j^                  d¬«      de&fd„«       Z2 e j^                  d¬«      de&fd„«       Z3 e j^                  d¬«      de&fd„«       Z4 e j^                  d¬«      dejj                  dejj                  de"ddfd„«       Z6dejj                  dejj                  de"de&fd„Z7 e j^                  d¬«      d dddd!œd"e&d#e	e"   d$e	e"   d%e	e"   ddf
d&„«       Z8	 	 	 	 	 d0d'e"d"e&d#e	e"   d$e	e"   d(e&d%e	e"   defd)„Z9de"fd*„Z:de"fd+„Z;d,e"de&fd-„Z<de"fd.„Z=de"fd/„Z>y)1é    N)ÚAnyÚDictÚOptional)ÚSCHEME_KEYSÚScheme)ÚWINDOWS)Ú
deprecated)Úrunning_under_virtualenvé   )Ú
_sysconfig)ÚUSER_CACHE_DIRÚget_major_minor_versionÚget_src_prefixÚis_osx_frameworkÚsite_packagesÚ	user_site)
r   Úget_bin_prefixÚget_bin_userr   Úget_platlibÚget_purelibÚ
get_schemer   r   r   Ú
platlibdirÚlibÚ_PLATLIBDIR)é   é
   Úreturnc                  ó>   — t        t        t        dt        «      «      S )ax  This function determines the value of _USE_SYSCONFIG.

    By default, pip uses sysconfig on Python 3.10+.
    But Python distributors can override this decision by setting:
        sysconfig._PIP_USE_SYSCONFIG = True / False
    Rationale in https://github.com/pypa/pip/issues/10647

    This is a function for testability, but should be constant during any one
    run.
    Ú_PIP_USE_SYSCONFIG)ÚboolÚgetattrÚ	sysconfigÚ_USE_SYSCONFIG_DEFAULT© ó    ú^/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/pip/_internal/locations/__init__.pyÚ_should_use_sysconfigr'   .   s   € ô ”œ	Ð#7Ô9OÓPÓQÐQr%   ©Ú
_distutilsc                  óH   — ddl m}  	 | d   d   }|dk(  S # t        $ r Y yw xY w)zsThe resolution to bpo-44860 will change this incorrect platlib.

    See <https://bugs.python.org/issue44860>.
    r   ©ÚINSTALL_SCHEMESÚ	unix_userÚplatlibFz	$usersite)Údistutils.command.installr,   ÚKeyError)r,   Úunix_user_platlibs     r&   Ú_looks_like_bpo_44860r2   L   s=   € õ
 :ðØ+¨KÑ8¸ÑCÐð  Ñ+Ð+øô ò Ùðús   ˆ •	! !Úschemec                 ó¦   — | d   }d|v r|j                  ddt        › d�«      }d|vry|j                  dd«      }|j                  dd«      | d	   k(  S )
Nr.   z/$platlibdir/ú/ú/lib64/Fz/lib/z
$platbase/z$base/Úpurelib)Úreplacer   )r3   r.   Ú	unpatcheds      r&   Ú+_looks_like_red_hat_patched_platlib_purelibr:   Z   se   € Ø�YÑ€GØ˜'Ñ!Ø—/‘/ /°Q´{°mÀ1Ð3EÓFˆØ˜ÑØØ—‘ 	¨7Ó3€IØ×Ñ˜\¨8Ó4¸¸yÑ8IÑIÐIr%   )Úmaxsizec                  ó8   ‡ — ddl mŠ  t        ˆ fd„dD «       «      S )z‘Red Hat patches platlib in unix_prefix and unix_home, but not purelib.

    This is the only way I can see to tell a Red Hat-patched Python.
    r   r+   c              3   óF   •K  — | ]  }|‰v xr t        ‰|   «      –— Œ y ­w©N)r:   )Ú.0Úkr,   s     €r&   ú	<genexpr>z*_looks_like_red_hat_lib.<locals>.<genexpr>l   s9   øè ø€ ò ð ð 	
ˆ_Ðò 	LÜ7¸ÈÑ8JÓKó	Lñùs   ƒ!)Úunix_prefixÚ	unix_home)r/   r,   Úallr+   s   @r&   Ú_looks_like_red_hat_librE   d   s$   ø€ õ :äó ð .ôó ð r%   c                  ó"   — ddl m}  d| v xr d| v S )z#Debian adds two additional schemes.r   r+   Ú
deb_systemÚ
unix_local)r/   r,   r+   s    r&   Ú_looks_like_debian_schemerI   s   s   € õ :à˜?Ð*ÒN¨|¸Ð/NÐNr%   c                  óL  — ddl m}  ddlm}  |  |«       «      }|j	                  «        |j
                  t        j                  j                  t        j
                  «      › d�k(  xr= |j                  t        j                  j                  t        j                  «      › d�k(  S )a\  Red Hat patches ``sys.prefix`` and ``sys.exec_prefix``.

    Red Hat's ``00251-change-user-install-location.patch`` changes the install
    command's ``prefix`` and ``exec_prefix`` to append ``"/local"``. This is
    (fortunately?) done quite unconditionally, so we create a default command
    object without any configuration to detect this.
    r   )Úinstall)ÚDistributionz/local)r/   rK   Údistutils.distrL   Úfinalize_optionsÚexec_prefixÚosÚpathÚnormpathÚsysÚprefix)rK   rL   Úcmds      r&   Ú_looks_like_red_hat_schemerV   {   s{   € õ 2Ý+á‘|“~Ó&€CØ×ÑÔà�‰œbŸg™g×.Ñ.¬s¯©Ó?Ð@ÀÐGÑGò 	BØ�J‰JœRŸW™W×-Ñ-¬c¯j©jÓ9Ð:¸&ÐAÑAðr%   c                  ó€   — t         €y	 t        j                  dd¬«      } d| d   v xr dt         vS # t        $ r Y yw xY w)zÌSlackware patches sysconfig but fails to patch distutils and site.

    Slackware changes sysconfig's user scheme to use ``"lib64"`` for the lib
    path, but does not do the same to the site module.
    FÚ
posix_user)r3   Úexpandr6   r7   )r   r"   Ú	get_pathsr0   ©Úpathss    r&   Ú_looks_like_slackware_schemer]   �   sT   € ô ÐØðÜ×#Ñ#¨<ÀÔFˆð ˜˜iÑ(Ð(ÒG¨Y¼iÐ-GÐGøô ò Ùðús   ‰1 ±	=¼=c                  óh   ‡ — t        j                  dd¬«      Š t        d„ ˆ fd„dD «       D «       «      S )a‰  MSYS2 patches distutils and sysconfig to use a UNIX-like scheme.

    However, MSYS2 incorrectly patches sysconfig ``nt`` scheme. The fix is
    likely going to be included in their 3.10 release, so we ignore the warning.
    See msys2/MINGW-packages#9319.

    MSYS2 MINGW's patch uses lowercase ``"lib"`` instead of the usual uppercase,
    and is missing the final ``"site-packages"``.
    ÚntF)rY   c              3   óX   K  — | ]"  }d |vxr d|v xr |j                  d«       –— Œ$ y­w)ÚLibr   zsite-packagesN)Úendswith)r?   Úps     r&   rA   z1_looks_like_msys2_mingw_scheme.<locals>.<genexpr>«   s9   è ø€ ò àð 	�QˆÒI˜5 A˜:ÒI¨a¯j©j¸Ó.IÐ*IÓIñùs   ‚(*c              3   ó(   •K  — | ]	  }‰|   –— Œ y ­wr>   r$   )r?   Úkeyr\   s     €r&   rA   z1_looks_like_msys2_mingw_scheme.<locals>.<genexpr>­   s   øè ø€ Ò? �%˜•*Ñ?ùs   ƒ©r.   r7   )r"   rZ   rD   r[   s   @r&   Ú_looks_like_msys2_mingw_schemerg   Ÿ   s7   ø€ ô ×Ñ ¨UÔ3€EÜñ ã?Ð(>Ô?ôó ð r%   ÚoldÚnewre   c                óH   — d}d}t         j                  t        |||| |«       y )Nz(https://github.com/pypa/pip/issues/10151zSValue for %s does not match. Please report this to <%s>
distutils: %s
sysconfig: %s)ÚloggerÚlogÚ_MISMATCH_LEVEL)rh   ri   re   Ú	issue_urlÚmessages        r&   Ú_warn_mismatchedrp   ±   s)   € à:€Ið	ð ô
 ‡J�JŒ ¨¨i¸¸cÕBr%   c                ó,   — | |k(  ryt        | ||¬«       y)NF©re   T)rp   )rh   ri   re   s      r&   Ú_warn_if_mismatchrs   ¼   s   € Ø
ˆc‚zØÜ�S˜# 3Õ'Ør%   F©ÚuserÚhomeÚrootrT   ru   rv   rw   rT   c                 óf   — g d¢}t         j                  t        dj                  |«      | |||«       y )N)zAdditional context:z	user = %rz	home = %rz	root = %rzprefix = %rú
)rk   rl   rm   Újoin)ru   rv   rw   rT   Úpartss        r&   Ú_log_contextr|   Ã   s*   € ò€Eô ‡J�JŒ §	¡	¨%Ó 0°$¸¸dÀFÕKr%   Ú	dist_nameÚisolatedc           	      ó–  ‡‡— t        j                  | |||||¬«      }t        r|S t        j                  | |||||¬«      Šg }t        D �]‹  }t        j                  t        ‰|«      «      }	t        j                  t        ||«      «      }
|	|
k(  rŒHt        j                  j                  dk(  xr_ |d uxrY |dv xrS |	j                  |
j                  k(  xr8 |	j                  j                  d«      xr |
j                  j                  d«      }|rŒÉ|xr] t        «       xrQ |dk(  xrJ |	j                  j                  |
j                  k(  xr% |	j                  j                  j                  d«      }|r�Œ.|dk(  rt        «       r�Œ?|xr% |dk(  xr t         xr t         dk7  xr
 t#        «       }|r�Œl|xr |dv xr t         xr
 t%        «       }|r�Œ�|xs |xs |xs
 t'        «        xr† |	j(                  dd	 d
k(  xrr t+        |
j(                  «      dkD  xrX |
j(                  d   dk(  xrD t+        |
j(                  «      d	k  xs |
j(                  d   dk7  xr t-        «       xs
 t/        «       }|r�Œ0t        xr |dv xr
 t1        «       }|r�ŒLt3        j4                  d¬«      xr t         xr |dv }|r�Œu|j7                  |	|
d|› �f«       �ŒŽ |s‰S t        j8                  | |||||d¬«      Št;        ˆˆfd„t        D «       «      rt=        dd d ¬«       ‰S |D ]  \  }	}
}t?        |	|
|¬«       Œ tA        ||||¬«       ‰S )N)ru   rv   rw   r~   rT   Úpypyrf   ÚpythonÚheadersr.   r   r   r   )ÚusrÚlocalrƒ   é   r„   T)Ú
check_home)r‚   ÚincludeÚplatincludezscheme.)Úignore_config_filesc              3   óB   •K  — | ]  }‰|   t        ‰|«      k7  –— Œ y ­wr>   )r!   )r?   r@   Údefault_oldrh   s     €€r&   rA   zget_scheme.<locals>.<genexpr>g  s    øè ø€ Ò
B°ˆ;�q‰>œW S¨!›_Õ,Ñ
Bùs   ƒzöConfiguring installation scheme with distutils config files is deprecated and will no longer work in the near future. If you are using a Homebrew or Linuxbrew Python, please see discussion at https://github.com/Homebrew/homebrew-core/issues/76621)ÚreasonÚreplacementÚgone_inrr   rt   )!r   r   Ú_USE_SYSCONFIGr)   r   ÚpathlibÚPathr!   rS   ÚimplementationÚnameÚparentÚ
startswithr   rE   r   r   r2   r]   r
   r{   ÚlenrV   rI   rg   r"   Úis_python_buildÚappendÚdistutils_schemeÚanyr	   rp   r|   )r}   ru   rv   rw   r~   rT   ri   Úwarning_contextsr@   Úold_vÚnew_vÚskip_pypy_special_caseÚ$skip_osx_framework_user_special_caseÚskip_bpo_44860Úskip_slackware_user_schemeÚskip_linux_system_special_caseÚskip_msys2_mingw_bugÚskip_cpython_buildre   r‹   rh   s                      @@r&   r   r   Ö   s×  ù€ ô ×
Ñ
ØØØØØØô€Cõ Øˆ
ä
×
Ñ
ØØØØØØô€Cð ÐÜó c?ˆÜ—‘œW S¨!›_Ó-ˆÜ—‘œW S¨!›_Ó-ˆà�EŠ>Øô ×Ñ×#Ñ# vÑ-ò .Ø˜DÐ ò.àÐ+Ð+ò.ð —‘ §¡Ñ,ò.ð —
‘
×%Ñ% hÓ/ò	.ð
 —
‘
×%Ñ% fÓ-ð 	ñ "Øð ò 7Ü Ó"ò7à�Y‘ò7ð —‘×#Ñ# u§|¡|Ñ3ò7ð —‘×!Ñ!×,Ñ,¨XÓ6ð 	-ñ 0Ùð �	Š>Ô5Ô7Ùð ò (Ø�Y‘ò(ä�ò(ô ˜uÑ$ò(ô &Ó'ð 	ñ Ùð
 ò /ØÐ+Ð+ò/ä�ò/ô -Ó.ð	 	#ñ &Ùð ÒE˜ÒE ÒEÔ+CÓ+EÐFò NØ—‘˜A˜aÐ Ð$4Ñ4òNä�E—K‘KÓ  1Ñ$òNð —‘˜A‘ %Ñ'òNô �U—[‘[Ó! AÑ%ÒB¨¯©°Q©¸7Ñ)Bò	Nô
 ,Ó-ÒLÔ1JÓ1Lð 	'ñ *Ùô
 ÒX˜Ð3Ð3ÒXÔ8VÓ8Xð 	ñ  Ùô ×%Ñ%°Ô6ò ;Ü�ò;àÐ:Ð:ð 	ñ
 Ùà×Ñ ¨°¸¸¨}Ð =Ö>ðGc?ñJ Øˆ
ô
 ×-Ñ-ØØØØØØØ ô€Kô Ô
B´kÔ
BÔBÜðLð
 Øõ		
ð ˆ
ð .ò 0Ñˆˆu�cÜ˜ ¨3Ö/ð0ä�d ¨D¸Õ@à€Jr%   c                  óâ   — t        j                  «       } t        r| S t        j                  «       }t	        t        j                  |«      t        j                  | «      d¬«      r
t        «        |S )NÚ
bin_prefixrr   )r   r   r�   r)   rs   r�   r‘   r|   ©ri   rh   s     r&   r   r   |  sN   € Ü
×
#Ñ
#Ó
%€CÝØˆ
ä
×
#Ñ
#Ó
%€CÜœŸ™ cÓ*¬G¯L©L¸Ó,=À<ÕPÜŒØ€Jr%   c                  óD   — t        j                  dd¬«      j                  S )NÚ T)ru   )r   r   Úscriptsr$   r%   r&   r   r   ‡  s   € Ü× Ñ  ¨$Ô/×7Ñ7Ð7r%   Úvaluec                 ó&   — t        «       sy| dk(  ryy)aõ  Check if the value is Debian's APT-controlled dist-packages.

    Debian's ``distutils.sysconfig.get_python_lib()`` implementation returns the
    default package path controlled by APT, but does not patch ``sysconfig`` to
    do the same. This is similar to the bug worked around in ``get_scheme()``,
    but here the default is ``deb_system`` instead of ``unix_local``. Ultimately
    we can't do anything about this Debian bug, and this detection allows us to
    skip the warning when needed.
    Fz/usr/lib/python3/dist-packagesT)rI   )r«   s    r&   Ú$_looks_like_deb_system_dist_packagesr­   ‹  s   € ô %Ô&ØØÐ0Ò0ØØr%   c                  óü   — t        j                  «       } t        r| S t        j                  «       }t	        |«      r|S t        t        j                  |«      t        j                  | «      d¬«      r
t        «        |S )z,Return the default pure-Python lib location.r7   rr   )	r   r   r�   r)   r­   rs   r�   r‘   r|   r§   s     r&   r   r   œ  s[   € ä
×
 Ñ
 Ó
"€CÝØˆ
ä
×
 Ñ
 Ó
"€CÜ+¨CÔ0Øˆ
ÜœŸ™ cÓ*¬G¯L©L¸Ó,=À9ÕMÜŒØ€Jr%   c                  ó  — t        j                  «       } t        r| S ddlm}  |j                  «       }t        |«      r|S t        t        j                  |«      t        j                  | «      d¬«      r
t        «        |S )z0Return the default platform-shared lib location.r   r(   r.   rr   )
r   r   r�   r©   r)   r­   rs   r�   r‘   r|   )ri   r)   rh   s      r&   r   r   ª  s`   € ä
×
 Ñ
 Ó
"€CÝØˆ
åà
 ˆ*×
 Ñ
 Ó
"€CÜ+¨CÔ0Øˆ
ÜœŸ™ cÓ*¬G¯L©L¸Ó,=À9ÕMÜŒØ€Jr%   )FNNFN)?Ú	functoolsÚloggingrP   r�   rS   r"   Útypingr   r   r   Úpip._internal.models.schemer   r   Úpip._internal.utils.compatr   Úpip._internal.utils.deprecationr	   Úpip._internal.utils.virtualenvr
   r©   r   Úbaser   r   r   r   r   r   Ú__all__Ú	getLoggerÚ__name__rk   r!   r   ÚstrÚ__annotations__Úversion_infor#   r    r'   r�   r)   ÚWARNINGrm   ÚDEBUGr2   r:   Ú	lru_cacherE   rI   rV   r]   rg   r‘   rp   rs   r|   r   r   r   r­   r   r   r$   r%   r&   ú<module>rÁ      s>  ðÜ Û Û 	Û Û 
Û ß &Ñ &ç ;Ý .Ý 6Ý Cå ÷÷ ò€ð 
ˆ×	Ñ	˜8Ó	$€ñ ˜3 ¨eÓ4€ˆSÓ 4à×)Ñ)¨WÑ4Ð ðR˜tó Rñ 'Ó(€áõ ñ ¡.Ø—o‘o�Oà—m‘m€Oð,˜tó ,ðJ¸¸SÀ#¸X¹ð JÈ4ó Jð €×Ñ˜TÔ"ð ò ó #ðð €×Ñ˜TÔ"ðO 4ò Oó #ðOð €×Ñ˜TÔ"ð Dò ó #ðð& €×Ñ˜TÔ"ðH dò Hó #ðHð €×Ñ˜TÔ"ð¨ò ó #ðð" €×Ñ˜TÔ"ðC˜'Ÿ,™,ð C¨W¯\©\ð CÀ3ð CÈ4ò Có #ðCð˜7Ÿ<™<ð ¨g¯l©lð ÀCð ÈDó ð €×Ñ˜TÔ"ð ØØØ òLà
ðLð �3‰-ðLð �3‰-ð	Lð
 �S‰MðLð 
òLó #ðLð( ØØØØ ñcØðcà
ðcð �3‰-ðcð �3‰-ð	cð
 ðcð �S‰Mðcð ócðL˜ó ð8�có 8ð°ð ¸ó ð"�Só ð�Sô r%   