ó
    T=Œjú  ã                  ó¾   • S SK Jr  S SKrS SKrS SKrS SK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JrJr  S SKJrJr  \(       a  S S	KJr  SS
 jr " S S\5      rg)é    )ÚannotationsN)ÚOrderedDict)ÚIterable)ÚTracebackType)ÚTYPE_CHECKING)ÚBuildEnvironmentÚBuildEnvironmentInstallerÚPrefix)ÚTempDirectoryÚtempdir_kinds)ÚInstallRequirementc                 ó–   • [         R                  " 5       n U  Vs1 s H"  n[        R                  R	                  U5      iM$     sn$ s  snf )z9Get system site packages, as a normalized set of strings.)ÚsiteÚgetsitepackagesÚosÚpathÚnormcase)Úsystem_sitesr   s     Úc/Users/stevendouglas/BidBrain/.venv/lib/python3.13/site-packages/pip/_internal/build_env/virtual.pyÚget_system_sitepackagesr      s7   € ä×'Ò'Ó)€LÙ/;Ó<ª| tŒB�G‰G×Ñ˜TÖ"©|Ñ<Ð<ùÒ<s   š)Ac                  ój   • \ rS rSrSrS
S jrSS jr        SS jrSS.         SS jjrS	r	g)ÚVirtualBuildEnvironmenté   zûLegacy build environment implementation.

Patches sys.path and uses sitecustomize.py to isolate Python processes. It has
known bugs and weird edge cases, but it exists as a fallback for platforms where
the venv module is unavailable or dysfunctional.
c                óÖ  ^• [         R                  U l        Xl        [	        [
        R                  SS9m[        U4S jS 5       5      U l        / U l	        / U l
        [        [        U R                  R                  5       5      5       HM  nU R                  R                  UR                  5        U R                  R!                  UR                  5        MO     [#        5       n[$        R&                  R)                  TR&                  S5      U l        [$        R&                  R-                  U R*                  5      (       d   [$        R.                  " U R*                  5        [1        [$        R&                  R)                  U R*                  S5      SSS	9 nUR3                  [4        R6                  " S
5      R9                  X0R                  S95        S S S 5        g ! , (       d  f       g = f)NT)ÚkindÚglobally_managedc              3  óŽ   >#   • U  H:  nU[        [        R                  R                  TR                  U5      5      4v •  M<     g 7f©N)r
   r   r   Újoin)Ú.0ÚnameÚtemp_dirs     €r   Ú	<genexpr>Ú3VirtualBuildEnvironment.__init__.<locals>.<genexpr>*   s5   øé € ð %
â-�ð ”6œ"Ÿ'™'Ÿ,™, x§}¡}°dÓ;Ó<Õ=Ú-ùs   ƒAA)ÚnormalÚoverlayr   zsitecustomize.pyÚwzutf-8)ÚencodingaÖ  
                import os, site, sys

                # First, discover all system-sites related paths.
                original_sys_path = sys.path[:]
                # Clear sys.path so addsitedir() will add system site paths and paths
                # added by contained .pth files to sys.path reliably. This is necessary
                # since Python 3.15, which notably no longer re-executes .pth files for
                # known paths.
                sys.path = []
                known_paths = set()
                for path in {system_sites!r}:
                    site.addsitedir(path, known_paths=known_paths)
                system_paths = set(os.path.normcase(path) for path in sys.path)

                # Drop discovered system-sites related paths.
                original_sys_path = [
                    path for path in original_sys_path
                    if os.path.normcase(path) not in system_paths
                ]
                sys.path = original_sys_path

                # Second, add lib directories.
                # ensuring .pth file are processed.
                for path in {lib_dirs!r}:
                    assert not path in sys.path
                    site.addsitedir(path)
                )r   Úlib_dirs)ÚsysÚ
executableÚpython_executableÚ	installerr   r   Ú	BUILD_ENVr   Ú	_prefixesÚ	_bin_dirsr)   ÚreversedÚlistÚvaluesÚappendÚbin_dirÚextendr   r   r   r   Ú	_site_dirÚexistsÚmkdirÚopenÚwriteÚtextwrapÚdedentÚformat)Úselfr-   Úprefixr   Úfpr"   s        @r   Ú__init__Ú VirtualBuildEnvironment.__init__%   sM  ø€ Ü!$§¡ˆÔØ"ŒÜ ¤m×&=Ñ&=ÐPTÑUˆä$ô %
á-ó%
ó 
ˆŒð
 %'ˆŒØ#%ˆŒÜœt D§N¡N×$9Ñ$9Ó$;Ó<Ö=ˆFØ�N‰N×!Ñ! &§.¡.Ô1Ø�M‰M× Ñ  §¡Ö1ñ >ô /Ó0ˆäŸ™Ÿ™ h§m¡m°VÓ<ˆŒÜ�w‰w�~‰~˜dŸn™n×-Ñ-Ü�HŠH�T—^‘^Ô$ÜÜ�G‰G�L‰L˜Ÿ™Ð);Ó<¸cÈGò
àØ�H‰H”X—_’_ð &ó ÷6 ‘V¨ÇÁ�VÐNô7P÷
÷ 
ö 
ús   Æ=GÇ
G(c                óö  • S Vs0 s H$  nU[         R                  R                  US 5      _M&     snU l        U R                  S S  nU R                  S   nU(       a.  UR                  UR                  [         R                  5      5        U R                  /n[         R                  R                  [         R                  R                  U5      S[         R                  R                  U5      S.5        g s  snf )N)ÚPATHÚPYTHONNOUSERSITEÚ
PYTHONPATHrE   Ú1)r   ÚenvironÚgetÚ	_save_envr0   r6   ÚsplitÚpathsepr7   Úupdater   )r?   r!   r   Úold_pathÚ
pythonpaths        r   Ú	__enter__Ú!VirtualBuildEnvironment.__enter__]   s½   € ñ Có
âB�ð ”"—*‘*—.‘.  tÓ,Ò,ÙBñ
ˆŒð
 �~‰~™aÐ ˆØ—>‘> &Ñ)ˆÞØ�K‰K˜Ÿ™¤r§z¡zÓ2Ô3à—n‘nÐ%ˆ
ä
�
‰
×ÑäŸ
™
Ÿ™¨Ó-Ø$'Ü Ÿj™jŸo™o¨jÓ9ñõ	
ùò
s   …+C6c                óº   • U R                   R                  5        H=  u  pEUc"  [        R                  R	                  US 5        M*  U[        R                  U'   M?     g r   )rK   Úitemsr   rI   Úpop)r?   Úexc_typeÚexc_valÚexc_tbÚvarnameÚ	old_values         r   Ú__exit__Ú VirtualBuildEnvironment.__exit__r   sD   € ð #'§.¡.×"6Ñ"6Ö"8ÑˆGØÑ Ü—
‘
—‘˜w¨Ö-à&/”—
‘
˜7Ó#ò	 #9ó    N)Úfor_reqc               óš   • U R                   U   nUR                  (       a   eSUl        U(       d  g U R                  R                  XX4S9  g )NT)r   r^   )r/   Úsetupr-   Úinstall)r?   ÚrequirementsÚprefix_as_stringr   r^   r@   s         r   Úinstall_requirementsÚ,VirtualBuildEnvironment.install_requirements~   sD   € ð —‘Ð 0Ñ1ˆØ—<—<ÐÐØˆŒÞØØ�‰×Ñ˜|¸$ÐÒPr]   )r0   r/   rK   r7   r-   r)   r,   )r-   r	   ÚreturnÚNone)rf   rg   )rV   ztype[BaseException] | NonerW   zBaseException | NonerX   zTracebackType | Nonerf   rg   )
rb   zIterable[str]rc   Ústrr   rh   r^   zInstallRequirement | Nonerf   rg   )
Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__rB   rQ   r[   rd   Ú__static_attributes__© r]   r   r   r      s„   † ñô6Pôp
ð*
0à,ð
0ð &ð
0ð %ð	
0ð
 
ô
0ð$ .2ñQà#ðQð ðQð
 ðQð +ðQð 
÷Qð Qr]   r   )rf   zset[str])Ú
__future__r   r   r   r*   r<   Úcollectionsr   Úcollections.abcr   Útypesr   Útypingr   Úpip._internal.build_env.baser   r	   r
   Úpip._internal.utils.temp_dirr   r   Úpip._internal.req.req_installr   r   r   ro   r]   r   Ú<module>rx      sL   ðÝ "ã 	Û Û 
Û Ý #Ý $Ý Ý  ÷ñ ÷
 FæÝ@ô=ônQÐ.õ nQr]   