o
    KK&h                     @  sv   d dl mZ d dlZg dZdZd Z ZZes9d dl	Z	d dl
Z
d dlZdd	d
ZeeZdddZeeeZdS dS )    )annotationsN)tagversioncommitTz15.0.1r   strreturnc              
     s"  t t  j jdkrdnd }ztjd}W n	 ty"   Y n w tj	d}|rB fdd|D }|rB|d }|
  krB|S ztjg dd|d	ddd
j }W n ttjtjfyb   Y n*w d}t||}|d u rvtd| | \}	}
|
dd}
|  d|	 d|
 S |  dS )Nzsetup.pyr      
websocketsc                   s   g | ]
}|j  j kr|qS  )name).0f	file_pathr
   E/var/www/html/venv/lib/python3.10/site-packages/websockets/version.py
<listcomp>.   s    zget_version.<locals>.<listcomp>)gitdescribez--dirtyz--tagsz--longT   )capture_outputcwdtimeoutchecktextz+[0-9.]+-([0-9]+)-(g[0-9a-f]{7,}(?:-dirty)?)zUnexpected git description: -.z.dev+z.dev0+gunknown)pathlibPath__file__parentsr   	importlibmetadatar   ImportErrorfileslocate
subprocessrunstdoutstripFileNotFoundErrorCalledProcessErrorTimeoutExpiredre	fullmatch
ValueErrorgroupsreplace)r   root_dirr   r$   version_filesversion_filedescriptiondescription_rematchdistance	remainderr
   r   r   get_version   sP   
	

r:   r   c                 C  s@   d}t ||}|d u rtd| | \}|dkr| S |S )Nz7[0-9.]+\.dev[0-9]+\+g([0-9a-f]{7,}|unknown)(?:\.dirty)?zUnexpected version: unknown)r-   r.   r/   r0   )r   r   
version_rer7   r   r
   r
   r   
get_commitS   s   
r=   )r   r   r   r   )r   r   r   r   r   r   )
__future__r   importlib.metadatar!   __all__releasedr   r   r   r   r-   r&   r:   r=   r
   r
   r
   r   <module>   s    
2
	