B
    ]b
                 @  sz   d dl mZ dddgZdZd Z ZZesvd dlZd dlZd dl	Z	ddd	d
dZ
e
eZddddddZeeeZdS )    )annotationstagversioncommitTz10.3Nstr)r   returnc       	   	   C  s   t t}|j|jdkrdnd }y*tjdddddgd	|d
d	d	dj }W n t	tj
fk
rf   Y nJX d}t||}|d k	st| \}}|dd}|  d| d| S ydd l}|jdS  tk
r   Y nX |  dS )Nzsetup.pyr      ZgitZdescribez--dirtyz--tagsz--longT   )Zcapture_outputcwdZtimeoutZchecktextz+[0-9.]+-([0-9]+)-(g[0-9a-f]{7,}(?:-dirty)?)-.z.dev+Z
websocketsz.dev0+gunknown)pathlibZPath__file__parentsname
subprocessrunstdoutstripFileNotFoundErrorZCalledProcessErrorre	fullmatchAssertionErrorgroupsreplaceZimportlib.metadataZmetadatar   ImportError)	r   Z	file_pathZroot_dirZdescriptionZdescription_rematchZdistanceZ	remainder	importlib r    1lib/python3.7/site-packages/websockets/version.pyget_version   s0    
r"   )r   r   r   c             C  s6   d}t ||}|d k	st| \}|dkr2| S |S )Nz7[0-9.]+\.dev[0-9]+\+g([0-9a-f]{7,}|unknown)(?:\.dirty)?unknown)r   r   r   r   )r   r   Z
version_rer   r   r    r    r!   
get_commitF   s
    
r$   )Z
__future__r   __all__Zreleasedr   r   r   r   r   r   r"   r$   r    r    r    r!   <module>   s   
'