Ë
    ÷Q(h‡  ã            
       óÈ  — d dl Z d dlmZmZmZ d dlmZmZmZm	Z	m
Z
mZmZ d dlmZmZmZ d dlmZ d dlmZmZ  edeeg«      d„ «       Z edeeg«      d	„ «       Zeed
„ «       «       Zeed„ «       «       Z edddg«      d„ «       Zd„ Zd„ Zee eddd e«        e«       g«       edeeg«      d„ «       «       «       «       Z edeeg«      d„ «       Z edeeg«      d„ «       Zy)é    N)ÚLokyBackendÚMultiprocessingBackendÚThreadingBackend)ÚBACKENDSÚDEFAULT_BACKENDÚEXTERNAL_BACKENDSÚParallelÚdelayedÚparallel_backendÚparallel_config)ÚnpÚwith_multiprocessingÚ
with_numpy)Úcheck_memmap)ÚparametrizeÚraisesÚcontextc                 ó&  — t        «       j                  } | d«      }	 t        t        «       j                  t        «      sJ ‚	 |j	                  «        t        t        «       j                  «      t        |«      u sJ ‚y # |j	                  «        w xY w)NÚ	threading)r	   Ú_backendÚ
isinstancer   Ú
unregisterÚtype)r   ÚdefaultÚpbs      úU/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/joblib/test/test_config.pyÚtest_global_parallel_backendr      sl   € ä‹j×!Ñ!€Gá	�Ó	€BðÜœ(›*×-Ñ-Ô/?Ô@Ð@Ñ@à
�‰ŒÜ”“
×#Ñ#Ó$¬¨W«Ñ5Ð5Ñ5øð 	�‰�ús   ž$A> Á>Bc                 óÈ   — d„ }|t         d<   	  | d«      5  t        t        «       j                  t        «      sJ ‚	 d d d «       t         d= y # 1 sw Y   ŒxY w# t         d= w xY w)Nc                  ó   — t         t        d<   y )NÚfoo)r   r   © ó    r   Úregister_fooz,test_external_backends.<locals>.register_foo$   s   € Ü*Œ�Šr"   r    )r   r   r	   r   r   )r   r#   s     r   Útest_external_backendsr$   "   sg   € ò+ð  ,Ô�eÑð%Ù�U‹^ñ 	EÜœh›j×1Ñ1Ô3CÔDÐDÑD÷	Eô ˜eÑ$÷	Eð 	Eûô ˜eÑ$ús!   ŽA –%A¼A ÁAÁA Á	A!c                 óŽ  — t        dd| ¬«      5  t        d¬«      5 }t        |j                  t        «      sJ ‚|j
                  dk(  sJ ‚ |d„ t        j                  j                  d«      gdz  D «       «       t        t        j                  | «      «      dkD  sJ ‚	 d d d «       d d d «       y # 1 sw Y   ŒxY w# 1 sw Y   y xY w)	Né   é   ©Ún_jobsÚ
max_nbytesÚtemp_folderÚ	processes)Úpreferc              3   óF   K  — | ]  } t        t        «      |«      –— Œ y ­w©N©r
   r   ©Ú.0Úas     r   ú	<genexpr>z2test_parallel_config_no_backend.<locals>.<genexpr>:   s   è ø€ ÒK¨1Ð#Œg”lÓ# A×&ÑKùó   ‚!é
   r   )r   r	   r   r   r   r)   r   ÚrandomÚlenÚosÚlistdir©ÚtmpdirÚps     r   Útest_parallel_config_no_backendr>   /   s°   € ô
 
 ¨a¸VÔ	Dñ /Ü˜[Ô)ð 	/¨QÜ˜aŸj™j¬+Ô6Ð6Ð6Ø—8‘8˜q’=Ð �=ñ ÑK´·±×1AÑ1AÀ"Ó1EÐ0FÈÑ0JÔKÔKÜ”r—z‘z &Ó)Ó*¨QÒ.Ð.Ñ.÷	/÷/ð /÷	/ð 	/ú÷/ð /ús#   �B;œBB/ÂB;Â/B8	Â4B;Â;Cc           	      ó–  — t        dd| ¬«      5  t        ddd¬«      5 }t        |j                  t        «      sJ ‚|j
                  dk(  sJ ‚t        t        d¬	«      5   |d
„ t        j                  j                  d«      gdz  D «       «       d d d «       d d d «       d d d «       y # 1 sw Y   ŒxY w# 1 sw Y   ŒxY w# 1 sw Y   y xY w)Né   r'   r(   r&   r,   Ú1M)r)   r-   r*   zExpected np.memmap instance©Úmatchc              3   óF   K  — | ]  } t        t        «      |«      –— Œ y ­wr/   r0   r1   s     r   r4   z;test_parallel_config_params_explicit_set.<locals>.<genexpr>H   s   è ø€ ÒO¨qÐ'”'œ,Ó'¨×*ÑOùr5   r6   )
r   r	   r   r   r   r)   r   Ú	TypeErrorr   r7   r;   s     r   Ú(test_parallel_config_params_explicit_setrF   >   sÅ   € ô 
 ¨a¸VÔ	Dñ PÜ˜Q {¸tÔDð 	PÈÜ˜aŸj™j¬+Ô6Ð6Ð6Ø—8‘8˜q’=Ð �=ô œ	Ð)FÔGñ PÙÑO´R·Y±Y×5EÑ5EÀbÓ5IÐ4JÈQÑ4NÔOÔO÷P÷	P÷Pð P÷Pð Pú÷	Pð 	Pú÷Pð Pús:   �B?ž?B3Á1B'ÂB3ÂB?Â'B0Â,B3Â3B<	Â8B?Â?CÚparamr-   Úrequirec                 ó®   — t        t        | › d�¬«      5  t        di | di¤Ž5  t        «        d d d «       d d d «       y # 1 sw Y   ŒxY w# 1 sw Y   y xY w)Nz=wrong is not a validrB   Úwrongr!   )r   Ú
ValueErrorr   r	   )rG   s    r   Útest_parallel_config_bad_paramsrL   K   sZ   € ô 
”
 U GÐ+@Ð"AÔ	Bñ ÜÑ0  wÐ/Ñ0ñ 	ÜŒJ÷	÷ð ÷	ð 	ú÷ð ús   •A£?®A¿A	ÁAÁAc                  óÌ  — t        t        d¬«      5  t        d¬«      5  	 d d d «       d d d «       t        t        d¬«      5  t        d¬«      5  	 d d d «       d d d «       t        t        d¬«      5  t        t        t           d¬«      5  	 d d d «       d d d «       y # 1 sw Y   Œ~xY w# 1 sw Y   Œ‚xY w# 1 sw Y   ŒfxY w# 1 sw Y   ŒjxY w# 1 sw Y   ŒBxY w# 1 sw Y   y xY w)Nz'only supported when backend is not NonerB   r'   ©Úinner_max_num_threads)Úbackend_paramz'only supported when backend is a string)ÚbackendrP   )r   rK   r   r   r   r!   r"   r   Ú'test_parallel_config_constructor_paramsrR   T   sÔ   € ô 
”
Ð"KÔ	Lñ Ü°1Ô5ñ 	Ø÷	÷ô 
”
Ð"KÔ	Lñ Ü¨1Ô-ñ 	Ø÷	÷ô 
”
Ð"KÔ	Lñ Ü¤X¬oÑ%>ÈaÔPñ 	Ø÷	÷ð ÷	ð 	ú÷ð ú÷
	ð 	ú÷ð ú÷
	ð 	ú÷ð úsi   ’B*ŸB¡B*ÁCÁB6ÁCÁ2CÂCÂCÂB'	Â#B*Â*B3Â6B?	Â;CÃCÃC	ÃCÃC#c                  ó–  — t        d¬«      5  t        «       } t        | j                  t        t
           «      sJ ‚| j                  dk(  sJ ‚	 d d d «       t        d¬«      5  t        d¬«      5  t        «       } t        | j                  t        «      sJ ‚| j                  dk(  sJ ‚	 d d d «       d d d «       t        d¬«      5  t        d¬«      5  t        «       } | j                  dk(  sJ ‚| j                  dk(  sJ ‚	 d d d «       d d d «       y # 1 sw Y   ŒÃxY w# 1 sw Y   ŒuxY w# 1 sw Y   ŒyxY w# 1 sw Y   Œ6xY w# 1 sw Y   y xY w)Nr&   ©r)   r   ©rQ   éd   )Úverbose)	r   r	   r   r   r   r   r)   r   rW   )r=   s    r   Útest_parallel_config_nestedrX   d   s#  € ô 
 Ô	"ñ Ü‹JˆÜ˜!Ÿ*™*¤h¬Ñ&?Ô@Ð@Ð@Ø�x‰x˜1Š}Ð‰}÷ô
 
 Ô	-ñ !Ü AÔ&ñ 	!Ü“
ˆAÜ˜aŸj™jÔ*:Ô;Ð;Ð;Ø—8‘8˜q’=Ð ‘=÷	!÷!ô 
 Ô	%ñ !Ü AÔ&ñ 	!Ü“
ˆAØ—9‘9 Ò#Ð#Ð#Ø—8‘8˜q’=Ð ‘=÷	!÷!ð !÷ð ú÷	!ð 	!ú÷!ð !ú÷	!ð 	!ú÷!ð !úsS   �?DÁ!D'Á.8DÂ'D'ÃD?Ã-D3Ã>D?ÄDÄD$	Ä D'Ä'D0Ä3D<	Ä8D?Ä?ErQ   Úmultiprocessingr   c                 ód   — t        t        d¬«      5   | |d¬«       d d d «       y # 1 sw Y   y xY w)Nz#does not acc.*inner_max_num_threadsrB   r'   rN   )r   ÚAssertionError)r   rQ   s     r   Ú1test_threadpool_limitation_in_child_context_errorr\   z   s.   € ô 
”Ð&LÔ	Mñ 2Ù�¨qÕ1÷2÷ 2ñ 2ús   ’&¦/c                 ór  —  | dd¬«      5  t        d ¬«      5 }|j                  dk(  sJ ‚	 d d d «       d d d «        | d¬«      5  t        «       j                  }t        d ¬«      5 }|j                  |k(  sJ ‚	 d d d «       d d d «       y # 1 sw Y   Œ_xY w# 1 sw Y   ŒcxY w# 1 sw Y   Œ*xY w# 1 sw Y   y xY w)Nr   r&   ©rQ   r)   rT   rU   ©r	   r)   )r   r=   Údefault_n_jobss      r   Útest_parallel_n_jobs_nonera   †   s´   € ñ 
˜¨QÔ	/ñ !Ü˜TÔ"ð 	! aØ—8‘8˜q’=Ð ‘=÷	!÷!ñ 
˜Ô	%ñ .Ü!›×*Ñ*ˆÜ˜TÔ"ð 	. aØ—8‘8˜~Ò-Ð-Ñ-÷	.÷.ð .÷	!ð 	!ú÷!ð !ú÷	.ð 	.ú÷.ð .úsE   ‹B˜B	«BÁ!B-Á%B!Á8B-Â	B	ÂBÂBÂ!B*	Â&B-Â-B6c                 óâ   —  | dd¬«      5   | dd ¬«      5  t        «       5 }|j                  dk(  sJ ‚	 d d d «       d d d «       d d d «       y # 1 sw Y   ŒxY w# 1 sw Y   ŒxY w# 1 sw Y   y xY w)Nr   r&   r^   r'   r_   )r   r=   s     r   Ú test_parallel_config_n_jobs_nonerc   ”   ss   € ñ
 
˜¨QÔ	/ñ %Ù˜[°Ô6ñ 	%ä“ð %˜qØ—x‘x 1’}Ð$‘}÷%÷	%÷%ð %÷%ð %ú÷	%ð 	%ú÷%ð %ús7   ‹A%–A¡A´A¼A%ÁAÁAÁA"	ÁA%Á%A.) r9   Újoblib._parallel_backendsr   r   r   Újoblib.parallelr   r   r   r	   r
   r   r   Újoblib.test.commonr   r   r   Újoblib.test.test_parallelr   Újoblib.testingr   r   r   r$   r>   rF   rL   rR   rX   r\   ra   rc   r!   r"   r   ú<module>ri      so  ðÛ 	÷ñ ÷
÷ ñ ÷ DÑ CÝ 2ß .ñ ˆY˜Ð*:Ð;Ó<ñ6ó =ð6ñ ˆY˜Ð*:Ð;Ó<ñ	%ó =ð	%ð Øñ
/ó ó ð
/ð ØñPó ó ðPñ ˆW�x Ð+Ó,ñó -ðòò !ð, ØÙØØ˜Ñ%;Ó%=Ñ?OÓ?QÐRóñ ˆY˜Ð*:Ð;Ó<ñ2ó =ó	ó ó ð2ñ
 ˆY˜Ð*:Ð;Ó<ñ
.ó =ð
.ñ ˆY˜Ð*:Ð;Ó<ñ%ó =ñ%r"   