o
    _c
                     @  sn   d dl mZ g dZdZd Z ZZes5d 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 )    )annotations)tagversioncommitTz10.4Nr   strreturnc           	   	   C  s   t t}|j|jdkrdnd }ztjg dd|ddddj }W n t	tj
fy/   Y n%w d}t||}|d us>J | \}}|d	d
}|  d| d| S zdd l}|jdW S  tyh   Y nw |  dS )Nzsetup.pyr      )gitZdescribez--dirtyz--tagsz--longT   )capture_outputcwdtimeoutchecktextz+[0-9.]+-([0-9]+)-(g[0-9a-f]{7,}(?:-dirty)?)-.z.dev+Z
websocketsz.dev0+gunknown)pathlibPath__file__parentsname
subprocessrunstdoutstripFileNotFoundErrorCalledProcessErrorre	fullmatchgroupsreplaceZimportlib.metadatametadatar   ImportError)	r   	file_pathroot_dirdescriptionZdescription_rematchdistance	remainder	importlib r+   =/usr/local/lib/python3.10/dist-packages/websockets/version.pyget_version   s:   
	
r-   r   c                 C  s6   d}t ||}|d usJ | \}|dkr| S |S )Nz7[0-9.]+\.dev[0-9]+\+g([0-9a-f]{7,}|unknown)(?:\.dirty)?unknown)r   r   r    )r   r   Z
version_rer'   r   r+   r+   r,   
get_commitF   s
   
r/   )r   r   r   r   )r   r   r   r   r   r   )
__future__r   __all__Zreleasedr   r   r   r   r   r   r-   r/   r+   r+   r+   r,   <module>   s    
'
