
    7ThJ                         S 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5      r " S S\5      r	 SSK
r      SS	 jr\R                  S:X  a  SrSSKJr  S rgSSKJr  g! \ a          SS
 jr N6f = f)z,
Backports of fixes for joblib dependencies
    N)util)basenamec                   F    \ rS rSrSrSS jrS rS rS rS r	S	 r
S
 rSrg)Version   Backport from deprecated distutils

We maintain this backport to avoid introducing a new dependency on
`packaging`.

We might rexplore this choice in the future if all major Python projects
introduce a dependency on packaging anyway.
Nc                 6    U(       a  U R                  U5        g g Nparseselfvstrings     H/var/www/auris/envauris/lib/python3.13/site-packages/joblib/backports.py__init__Version.__init__       JJw     c                 P    U R                   R                  < S[        U 5      < S3$ )Nz ('z'))	__class____name__strr   s    r   __repr__Version.__repr__   s    "nn55s4yAAr   c                 D    U R                  U5      nU[        L a  U$ US:H  $ Nr   _cmpNotImplementedr   othercs      r   __eq__Version.__eq__   &    IIeHAvr   c                 D    U R                  U5      nU[        L a  U$ US:  $ r   r   r!   s      r   __lt__Version.__lt__#   &    IIeH1ur   c                 D    U R                  U5      nU[        L a  U$ US:*  $ r   r   r!   s      r   __le__Version.__le__)   r&   r   c                 D    U R                  U5      nU[        L a  U$ US:  $ r   r   r!   s      r   __gt__Version.__gt__/   r*   r   c                 D    U R                  U5      nU[        L a  U$ US:  $ r   r   r!   s      r   __ge__Version.__ge__5   r&   r    r
   )r   
__module____qualname____firstlineno____doc__r   r   r$   r(   r,   r/   r2   __static_attributes__r4   r   r   r   r      s+     Br   r   c                   t    \ rS rSrSr\R                  " S\R                  5      rSS jr	S r
S rS rS	 rS
rg)LooseVersion<   r   z(\d+ | [a-z]+ | \.)Nc                 6    U(       a  U R                  U5        g g r
   r   r   s     r   r   LooseVersion.__init__H   r   r   c                    Xl         U R                  R                  U5       Vs/ s H  o"(       d  M  US:w  d  M  UPM     nn[        U5       H  u  pE [	        U5      X4'   M     X0l        g s  snf ! [
         a     M0  f = f)N.)r   component_resplit	enumerateint
ValueErrorversion)r   r   x
componentsiobjs         r   r   LooseVersion.parseL   s}     !%!2!2!8!8!AT!AAQa1PS8a!A
T
+FA #C
 , " U  s!   
A+A+A+A00
A>=A>c                     U R                   $ r
   )r   r   s    r   __str__LooseVersion.__str__Z   s    ||r   c                     S[        U 5      -  $ )NzLooseVersion ('%s'))r   r   s    r   r   LooseVersion.__repr__]   s    $s4y00r   c                    [        U[        5      (       a  [        U5      nO[        U[        5      (       d  [        $ U R                  UR                  :X  a  gU R                  UR                  :  a  gU R                  UR                  :  a  gg )Nr      )
isinstancer   r;   r    rF   )r   r"   s     r   r   LooseVersion._cmp`   sj    eS!! 'EE<00!!<<5==(<<%--'<<%--' (r   )rF   r   r
   )r   r5   r6   r7   r8   recompileVERBOSErA   r   r   rM   r   r   r9   r4   r   r   r;   r;   <   s7     ::4bjjAL "1r   r;   c           	      (   [         R                  " SR                  U[        U 5      [        R
                  " 5       5      5        [        R                  " XX#XES9n[        [        R                  5      S:  a  X7l
        U(       a  SSKJn  U" U5        U$ )a  Custom memmap constructor compatible with numpy.memmap.

This function:
- is a backport the numpy memmap offset fix (See
  https://github.com/numpy/numpy/pull/8443 for more details.
  The numpy fix is available starting numpy 1.13)
- adds ``unlink_on_gc_collect``, which specifies  explicitly whether
  the process re-constructing the memmap owns a reference to the
  underlying file. If set to True, it adds a finalizer to the
  newly-created memmap that sends a maybe_unlink request for the
  memmaped file to resource_tracker.
z?[MEMMAP READ] creating a memmap (shape {}, filename {}, pid {}))dtypemodeoffsetshapeorderz1.13rS   )add_maybe_unlink_finalizer)r   debugformatr   osgetpidnpmemmapr;   __version__r\   _memmapping_reducerr_   )	filenamerZ   r[   r\   r]   r^   unlink_on_gc_collectmmr_   s	            r   make_memmaprk   q   sr    * 	

MTTx)299;	
 YY5
 '&0IG&r*	r   c                     [        S5      e)NzL'joblib.backports.make_memmap' should not be used if numpy is not installed.)NotImplementedError)rh   rZ   r[   r\   r]   r^   ri   s          r   rk   rk      s     ")
 	
r   nt)      )replacec                     SnSnSnX2:  a   [        X5        ge ! [         a?  n[        USS5      [        ;   a$  [        R
                  " U5        X4-  nUS-  n SnAO	e SnAff = fX2:  a  Ma  NU)zRenames ``src`` into ``dst`` overwriting ``dst`` if it exists.

On Windows os.replace can yield permission errors if executed by two
different processes.
rS   r   gMbP?winerrorN   )rq   	Exceptiongetattraccess_denied_errorstimesleep)srcdstmax_sleep_timetotal_sleep_time
sleep_timeexcs         r   concurrency_safe_renamer      s|     
/	!   3
D15IIJJz*$2$!OJ	 /s    
A#4AAA#)uint8zr+r   NCF)r8   rb   rV   rx   multiprocessingr   os.pathr   r   r;   numpyrd   rk   ImportErrornamerw   rq   r   r4   r   r   <module>r      s    
 	    - -`/7 /d6
 "$l 77d?". 6[  
 "

s   A# #A76A7