§
    ïyIfÓ  ã                  óì   — d dl mZ d dlZd dl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 dd	lmZ d
Zej        dk    r G d„ de¦  «        Zn!	 d dlZdZn# e$ r Y nw xY w G d„ de¦  «        ZddgZdS )é    )ÚannotationsN)Úsuppress)ÚENOSYS)ÚPath)Úcasté   )ÚBaseFileLock)Úensure_directory_existsFÚwin32c                  ó"   — e Zd ZdZdd„Zdd„ZdS )ÚUnixFileLockúHUses the :func:`fcntl.flock` to hard lock the lock file on unix systems.ÚreturnÚNonec                ó   — t           ‚©N©ÚNotImplementedError©Úselfs    úB/var/www/piapp/venv/lib/python3.11/site-packages/filelock/_unix.pyÚ_acquirezUnixFileLock._acquire   ó   € Ý%Ð%ó    c                ó   — t           ‚r   r   r   s    r   Ú_releasezUnixFileLock._release   r   r   N©r   r   ©Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   © r   r   r   r      sB   € € € € € ØVÐVð	&ð 	&ð 	&ð 	&ð	&ð 	&ð 	&ð 	&ð 	&ð 	&r   r   Tc                  ó"   — e Zd ZdZdd„Zdd„ZdS )r   r   r   r   c                ó¸  — t          | j        ¦  «         t          j        t          j        z  }t          | j        ¦  «                             ¦   «         s|t          j        z  }t          j        | j        || j	        j
        ¦  «        }t          t          ¦  «        5  t          j        || j	        j
        ¦  «         d d d ¦  «         n# 1 swxY w Y   	 t          j        |t          j        t          j        z  ¦  «         || j	        _        d S # t&          $ rA}t          j        |¦  «         |j        t,          k    rd}t/          |¦  «        |‚Y d }~d S d }~ww xY w)NzEFileSystem does not appear to support flock; use SoftFileLock instead)r
   Ú	lock_fileÚosÚO_RDWRÚO_TRUNCr   ÚexistsÚO_CREATÚopenÚ_contextÚmoder   ÚPermissionErrorÚfchmodÚfcntlÚflockÚLOCK_EXÚLOCK_NBÚlock_file_fdÚOSErrorÚcloseÚerrnor   r   )r   Ú
open_flagsÚfdÚ	exceptionÚmsgs        r   r   zUnixFileLock._acquire%   sx  € Ý# D¤NÑ3Ô3Ð3Ýœ¥R¤ZÑ/ˆJÝ˜œÑ'Ô'×.Ò.Ñ0Ô0ð )Ø�bœjÑ(�
Ý”˜œ¨°T´]Ô5GÑHÔHˆBÝ�/Ñ*Ô*ð 2ð 2Ý”	˜"˜dœmÔ0Ñ1Ô1Ð1ð2ð 2ð 2ñ 2ô 2ð 2ð 2ð 2ð 2ð 2ð 2øøøð 2ð 2ð 2ð 2ð0Ý”˜B¥¤µ´Ñ =Ñ>Ô>Ð>ð .0�”Ô*Ð*Ð*øõ ð Bð Bð BÝ”˜‘”�Ø”?¥fÒ,Ð,Øa�CÝ-¨cÑ2Ô2¸	ÐAð -Ð,Ð,Ð,Ð,Ð,øøøøðBøøøs*   Â CÃCÃCÃ,D Ä
EÄ6EÅEc                óÂ   — t          t          | j        j        ¦  «        }d | j        _        t	          j        |t          j        ¦  «         t          j        |¦  «         d S r   )	r   Úintr-   r5   r1   r2   ÚLOCK_UNr'   r7   )r   r:   s     r   r   zUnixFileLock._release7   sG   € õ •c˜4œ=Ô5Ñ6Ô6ˆBØ)-ˆDŒMÔ&ÝŒK˜�EœMÑ*Ô*Ð*ÝŒH�R‰LŒLˆLˆLˆLr   Nr   r   r#   r   r   r   r   "   sB   € € € € € ØVÐVð	0ð 	0ð 	0ð 	0ð$	ð 	ð 	ð 	ð 	ð 	r   Ú	has_fcntl)Ú
__future__r   r'   ÚsysÚ
contextlibr   r8   r   Úpathlibr   Útypingr   Ú_apir	   Ú_utilr
   r@   Úplatformr   r1   ÚImportErrorÚ__all__r#   r   r   ú<module>rK      sO  ðØ "Ð "Ð "Ð "Ð "Ð "à 	€	€	€	Ø 
€
€
€
Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð à Ð Ð Ð Ð Ð Ø *Ð *Ð *Ð *Ð *Ð *ð €	Ø„<�7ÒÐð&ð &ð &ð &ð &�|ñ &ô &ð &ð &ðØˆˆˆð ˆ	ˆ	øð ð ð ð Øˆðøøøð
ð ð ð ð �|ñ ô ð ð@ Øð€€€s   ÁA ÁAÁA