Ë
    nûàg˜  ã                   ó˜  — 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Zd dlmZ e j                  d„ fd„«       Z
e j                  d„ «       Ze j                  d„ «       Ze j                  d„ «       Ze j                  d„ «       Ze j                  d	„ «       Zd
„ Ze j                  d„ «       Ze j                  d„ «       Ze j                  d„ «       Zy)é    N)ÚFileLockc                  ó   — y ©N© )Údirs    úW/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/setuptools/tests/contexts.pyú<lambda>r	      s   � ó    c              +   óö   K  — t        j                  di |¤Ž}t        j                  «       }	  | |«       |–—  | |«       t	        j
                  |«       y #  | |«       t	        j
                  |«       w xY w­w)Nr   )ÚtempfileÚmkdtempÚosÚgetcwdÚshutilÚrmtree)ÚcdÚkwargsÚtemp_dirÚorig_dirs       r   Útempdirr      s^   è ø€ ä×ÑÑ) &Ñ)€HÜ�y‰y‹{€Hð Ù
ˆ8ŒØŠá
ˆ8ŒÜ�‰�hÕøñ 	ˆ8ŒÜ�‰�hÕüs   ‚*A9­A ¹A9ÁA6Á6A9c               +   óJ  K  — t        d„ | D «       «      }d„ | j                  «       D «       }t        |«      D ]3  }t        j                  j                  |d«       | j                  |«       Œ5 t        j                  j                  | «       	 |–— | D ]"  }t        j                  j                  |d«       Œ$ t        j                  j                  |«       y# | D ]"  }t        j                  j                  |d«       Œ$ t        j                  j                  |«       w xY w­w)zj
    In a context, patch the environment with replacements. Pass None values
    to clear the values.
    c              3   ól   K  — | ],  }|t         j                  v sŒ|t         j                  |   f–— Œ. y ­wr   )r   Úenviron)Ú.0Úkeys     r   ú	<genexpr>zenvironment.<locals>.<genexpr>   s(   è ø€ ÒU¨CÀ3Ì"Ï*É*ÒCT�#”r—z‘z #‘Ô'ÑUùs   ‚4š4c              3   ó,   K  — | ]  \  }}|�Œ	|–— Œ y ­wr   r   )r   r   Úvalues      r   r   zenvironment.<locals>.<genexpr>!   s   è ø€ ÒL‘l�s˜E¸e¹mŒcÑLùs   ‚
�N)ÚdictÚitemsÚlistr   r   ÚpopÚupdate)ÚreplacementsÚsavedÚremover   s       r   Úenvironmentr'      sè   è ø€ ô ÑU°<ÔUÓU€Eñ M l×&8Ñ&8Ó&:ÔL€FÜ�F‹|ò ˆÜ
�
‰
�‰�s˜DÔ!Ø×Ñ˜Õðô ‡J�J×Ñ�lÔ#ð!ØŠàò 	&ˆCÜ�J‰J�N‰N˜3 Õ%ð	&ä
�
‰
×Ñ˜%Õ øð  ò 	&ˆCÜ�J‰J�N‰N˜3 Õ%ð	&ä
�
‰
×Ñ˜%Õ üs    ‚B
D#ÂC ÂAD#ÃAD Ä D#c               #   óÀ  K  — t         j                  } t         j                  }t        j                  «       x}t         _        t        j                  «       x}t         _        	 ||f–— |j                  d«       |j                  d«       | t         _        |t         _        y# |j                  d«       |j                  d«       | t         _        |t         _        w xY w­w)zk
    Redirect stdout/stderr to StringIO objects to prevent console output from
    distutils commands.
    r   N)ÚsysÚstdoutÚstderrÚioÚStringIOÚseek)Ú
old_stdoutÚ
old_stderrÚ
new_stdoutÚ
new_stderrs       r   Úquietr3   0   s�   è ø€ ô —‘€JÜ—‘€JÜ Ÿk™k›mÐ+€J””Ü Ÿk™k›mÐ+€J””ð Ø˜*Ð$Ò$à�‰˜ÔØ�‰˜ÔØŒŒ
ØŒ�
øð 	�‰˜ÔØ�‰˜ÔØŒŒ
ØŒ�
üs   ‚ACÁ"B! Á(9CÂ!:CÃCc               #   ól   K  — t         j                  } 	 | –— | t         _        y # | t         _        w xY w­wr   )ÚsiteÚENABLE_USER_SITE)r%   s    r   Úsave_user_site_settingr7   D   s+   è ø€ ä×!Ñ!€Eð&ØŠà %ŒÕø ŒÕüs   ‚4”$ ˜4¤1±4c               #   ó  K  — dd l } | j                  «       }t        j                  d d  }	 ||f–— |t        j                  d d  | j	                  |«       y # |t        j                  d d  | j	                  |«       w xY w­w)Nr   )Úpkg_resourcesÚ__getstate__r)   ÚpathÚ__setstate__)r9   Úpr_stateÚsys_paths      r   Úsave_pkg_resources_stater?   M   sm   è ø€ ãà×)Ñ)Ó+€Hä�x‰x™ˆ{€Hð-Ø˜Ð Ò àŒ�‰‘ˆØ×"Ñ" 8Õ,øð Œ�‰‘ˆØ×"Ñ" 8Õ,üs   ‚(A?«A ±%A?Á&A<Á<A?c               '   ó,   K  — 	 d –— y # | $ r Y y w xY w­wr   r   )Úexcss    r   Úsuppress_exceptionsrB   [   s   è ø€ ðÜøØò Ùðüs   ‚„	 ˆ‰Ž�‘c                 óN   — 	 | j                  d«      }|dk7  S # t        $ r Y yw xY w)zO
    Return True if running under xdist and multiple
    workers are used.
    Ú	worker_idFÚmaster)ÚgetfixturevalueÚ	Exception)ÚrequestrD   s     r   Ú	multiprocrI   c   s8   € ð
Ø×+Ñ+¨KÓ8ˆ	ð ˜Ñ Ð øô ò Ùðús   ‚ ˜	$£$c              #   óô   K  — |j                  «       }t        | «      r|j                  n|}||z  }t        |j	                  d«      «      5  |j                  dd¬«       |–— ddd«       y# 1 sw Y   yxY w­w)zCUses a file lock to guarantee only one worker can access a temp dirz.lockT)Úexist_okÚparentsN)ÚgetbasetemprI   Úparentr   Úwith_suffixÚmkdir)rH   Útmp_path_factoryÚnameÚbaseÚ
shared_dirÚ
locked_dirs         r   Úsession_locked_tmp_dirrV   o   sr   è ø€ ð ×'Ñ'Ó)€DÜ )¨'Ô 2�—’¸€Jà˜dÑ"€JÜ	�*×(Ñ(¨Ó1Ó	2ñ à×Ñ $°ÐÔ5ØÒ÷÷ ñ üs   ‚A	A8ÁA,Á#	A8Á,A5Á1A8c               #   ó  K  — t         j                  dd t         j                  dd t         j                  dd f} 	 d–— | \  t         _        t         _        t         _        y# | \  t         _        t         _        t         _        w xY w­w)zNMake sure ``sys.path``, ``sys.meta_path`` and ``sys.path_hooks`` are preservedN)r)   r;   Ú	meta_pathÚ
path_hooks)Úprevs    r   Ú
save_pathsr[   }   sZ   è ø€ ô �8‰8‘Aˆ;œŸ™¡aÐ(¬#¯.©.¹Ð*;Ð;€Dð7Ûà26Ñ/ŒŒ”#”-¤¥ø°$Ñ/ŒŒ”#”-¤¥üs   ‚9B¼A" Á "BÁ"#BÂBc               #   óº   K  — t         j                  } 	 t         j                  j                  «       t         _        d–— | t         _        y# | t         _        w xY w­w)z.Make sure initial ``sys.modules`` is preservedN)r)   ÚmodulesÚcopy)Úprev_moduless    r   Úsave_sys_modulesr`   ˆ   s;   è ø€ ô —;‘;€Lð#Ü—k‘k×&Ñ&Ó(ŒŒÛà"Œ�ø�lŒ�üs   ‚A”+A ¿AÁAÁA)Ú
contextlibr,   r   r   r5   r)   r   Úfilelockr   Úcontextmanagerr   r'   r3   r7   r?   rB   rI   rV   r[   r`   r   r
   r   ú<module>rd      s  ðÛ Û 	Û 	Û Û Û 
Û å ð ×ÑÙò  ó ð ð ×Ññ!ó ð!ð. ×Ññ ó ð ð& ×Ññ&ó ð&ð ×Ññ
-ó ð
-ð ×Ññó ðò	!ð ×Ññ
ó ð
ð ×Ññ7ó ð7ð ×Ññ#ó ñ#r
   