o
    #f                     @   s   d dl mZ d dlmZmZ d dlmZmZmZ d dl	m
Z
 d dlmZ eeZdZdZdZe e e d	e e e ZeeZed
Ze de e e Zeddddedeeef fddZdedeeef fddZdS )    )	getLogger)compilesplit)DictListMapping)unquote)
deprecatedz[ \t]*zC[\x21\x23-\x27\x2a\x2b\x2d\x2e\x30-\x39\x41-\x5a\x5e-\x7a\x7c\x7e]+z+[\x21\x23-\x2b\x2d-\x3a\x3c-\x5b\x5d-\x7e]*=z[ \t]*,[ \t]*|z1.15.0z You should use parse_env_headers)versionreasonsreturnc                 C   s   t | S )N)parse_env_headers)r    r   Q/home/ubuntu/dev/venv/lib/python3.10/site-packages/mysql/opentelemetry/util/re.pyparse_headers-   s   r   c                 C   sx   i }t t| }|D ]0}|sq	t| }|std| q	|j dd\}}t| 	 }t| }|||< q	|S )a#  
    Parse ``s``, which is a ``str`` instance containing HTTP headers encoded
    for use in ENV variables per the W3C Baggage HTTP header format at
    https://www.w3.org/TR/baggage/#baggage-http-header-format, except that
    additional semi-colon delimited metadata is not supported.
    zHeader format invalid! Header values in environment variables must be URL encoded per the OpenTelemetry Protocol Exporter specification: %sr
      )
r   _DELIMITER_PATTERN_HEADER_PATTERN	fullmatchstrip_loggerwarningstringr   lower)r   headersheaders_listheadermatchnamevaluer   r   r   r   2   s"   

r   N)loggingr   rer   r   typingr   r   r   urllib.parser   r	   __name__r   _OWS_KEY_FORMAT_VALUE_FORMAT_KEY_VALUE_FORMATr   r   _BAGGAGE_PROPERTY_FORMATstrr   r   r   r   r   r   <module>   s    
